need help with downloaded message system

Discussion in 'PHP' started by byllan, Apr 28, 2012.

  1. #1
    Hello i was download a messages system before but i don't remember where. Now i got some bugs in my page and i need help to fix them

    The script say You must be logged to access this page. and im admin but that's not helped me :( Please help me out i don't know either what i gonna add for tables in database! i got messenger john-slex@hotmail.com add me if you want to give me faster help :p

    listpm.php
    <?phpinclude_once('user/conn.php');?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">    <head>        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />        <title>Personal Messages</title>    </head>    <body>        <div class="header">            </div>        <div class="content"><?php//We check if the user is loggedif(isset($_SESSION['username'])){//We list his messages in a table//Two queries are executes, one for the unread messages and another for read messages$req1 = mysql_query('select m1.id, m1.title, m1.timestamp, count(m2.id) as reps, users.id as userid, users.username from pm as m1, pm as m2,users where ((m1.user1="'.$_SESSION['userid'].'" and m1.user1read="no" and users.id=m1.user2) or (m1.user2="'.$_SESSION['userid'].'" and m1.user2read="no" and users.id=m1.user1)) and m1.id2="1" and m2.id=m1.id group by m1.id order by m1.id desc');$req2 = mysql_query('select m1.id, m1.title, m1.timestamp, count(m2.id) as reps, users.id as userid, users.username from pm as m1, pm as m2,users where ((m1.user1="'.$_SESSION['userid'].'" and m1.user1read="yes" and users.id=m1.user2) or (m1.user2="'.$_SESSION['userid'].'" and m1.user2read="yes" and users.id=m1.user1)) and m1.id2="1" and m2.id=m1.id group by m1.id order by m1.id desc');?>This is the list of your messages:<br /><a href="new_pm.php" class="link_new_pm">New PM</a><br /><h3>Unread Messages(<?php echo intval(mysql_num_rows($req1)); ?>):</h3><table>        <tr>        <th class="title_cell">Title</th>        <th>Nb. Replies</th>        <th>Participant</th>        <th>Date of creation</th>    </tr><?php//We display the list of unread messageswhile($dn1 = mysql_fetch_array($req1)){?>        <tr>        <td class="left"><a href="read_pm.php?id=<?php echo $dn1['id']; ?>"><?php echo htmlentities($dn1['title'], ENT_QUOTES, 'UTF-8'); ?></a></td>        <td><?php echo $dn1['reps']-1; ?></td>        <td><a href="profile.php?id=<?php echo $dn1['userid']; ?>"><?php echo htmlentities($dn1['username'], ENT_QUOTES, 'UTF-8'); ?></a></td>        <td><?php echo date('Y/m/d H:i:s' ,$dn1['timestamp']); ?></td>    </tr><?php}//If there is no unread message we notice itif(intval(mysql_num_rows($req1))==0){?>        <tr>        <td colspan="4" class="center">You have no unread message.</td>    </tr><?php}?></table><br /><h3>Read Messages(<?php echo intval(mysql_num_rows($req2)); ?>):</h3><table>        <tr>        <th class="title_cell">Title</th>        <th>Nb. Replies</th>        <th>Participant</th>        <th>Date or creation</th>    </tr><?php//We display the list of read messageswhile($dn2 = mysql_fetch_array($req2)){?>        <tr>        <td class="left"><a href="read_pm.php?id=<?php echo $dn2['id']; ?>"><?php echo htmlentities($dn2['title'], ENT_QUOTES, 'UTF-8'); ?></a></td>        <td><?php echo $dn2['reps']-1; ?></td>        <td><a href="profile.php?id=<?php echo $dn2['userid']; ?>"><?php echo htmlentities($dn2['username'], ENT_QUOTES, 'UTF-8'); ?></a></td>        <td><?php echo date('Y/m/d H:i:s' ,$dn2['timestamp']); ?></td>    </tr><?php}//If there is no read message we notice itif(intval(mysql_num_rows($req2))==0){?>        <tr>        <td colspan="4" class="center">You have no read message.</td>    </tr><?php}?></table><?php}else{        echo 'You must be logged to access this page.';}?>                </div>        </body>
    </html>
    PHP:
    <?phpinclude_once('user/conn.php');?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">    <head>        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />        <title>New PM</title>    </head>    <body>        <div class="header">            </div><?php//We check if the user is loggedif(isset($_SESSION['username'])){$form = true;$otitle = '';$orecip = '';$omessage = '';//We check if the form has been sentif(isset($_POST['title'], $_POST['recip'], $_POST['message'])){        $otitle = $_POST['title'];        $orecip = $_POST['recip'];        $omessage = $_POST['message'];        //We remove slashes depending on the configuration        if(get_magic_quotes_gpc())        {                $otitle = stripslashes($otitle);                $orecip = stripslashes($orecip);                $omessage = stripslashes($omessage);        }        //We check if all the fields are filled        if($_POST['title']!='' and $_POST['recip']!='' and $_POST['message']!='')        {                //We protect the variables                $title = mysql_real_escape_string($otitle);                $recip = mysql_real_escape_string($orecip);                $message = mysql_real_escape_string(nl2br(htmlentities($omessage, ENT_QUOTES, 'UTF-8')));                //We check if the recipient exists                $dn1 = mysql_fetch_array(mysql_query('select count(id) as recip, id as recipid, (select count(*) from pm) as npm from users where username="'.$recip.'"'));                if($dn1['recip']==1)                {                        //We check if the recipient is not the actual user                        if($dn1['recipid']!=$_SESSION['userid'])                        {                                $id = $dn1['npm']+1;                                //We send the message                                if(mysql_query('insert into pm (id, id2, title, user1, user2, message, timestamp, user1read, user2read)values("'.$id.'", "1", "'.$title.'", "'.$_SESSION['userid'].'", "'.$dn1['recipid'].'", "'.$message.'", "'.time().'", "yes", "no")'))                                {?><div class="message">The message has successfully been sent.<br /><a href="list_pm.php">List of my Personal messages</a></div><?php                                        $form = false;                                }                                else                                {                                        //Otherwise, we say that an error occured                                        $error = 'An error occurred while sending the message';                                }                        }                        else                        {                                //Otherwise, we say the user cannot send a message to himself                                $error = 'You cannot send a message to yourself.';                        }                }                else                {                        //Otherwise, we say the recipient does not exists                        $error = 'The recipient does not exists.';                }        }        else        {                //Otherwise, we say a field is empty                $error = 'A field is empty. Please fill of the fields.';        }}elseif(isset($_GET['recip'])){        //We get the username for the recipient if available        $orecip = $_GET['recip'];}if($form){//We display a message if necessaryif(isset($error)){        echo '<div class="message">'.$error.'</div>';}//We display the form?><div class="content">        <h1>New Personal Message</h1>    <form action="new_pm.php" method="post">                Please fill the following form to send a Personal message.<br />        <label for="title">Title</label><input type="text" value="<?php echo htmlentities($otitle, ENT_QUOTES, 'UTF-8'); ?>" id="title" name="title" /><br />        <label for="recip">Recipient<span class="small">(Username)</span></label><input type="text" value="<?php echo htmlentities($orecip, ENT_QUOTES, 'UTF-8'); ?>" id="recip" name="recip" /><br />        <label for="message">Message</label><textarea cols="40" rows="5" id="message" name="message"><?php echo htmlentities($omessage, ENT_QUOTES, 'UTF-8'); ?></textarea><br />        <input type="submit" value="Send" />    </form></div><?php}}else{        echo '<div class="message">You must be logged to access this page.</div>';}?>        </body>
    </html>
    PHP:
    Error from inbox script
    Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in C:\xampp\htdocs\pages\inbox.php on line 19
    PHP:
    inbox.php
    <?phpsession_start();include_once "user/conn.php";$userfinal=$_SESSION['session_name'];
    // get the messages from the table.$get_messages = mysql_query("SELECT message_id FROM messages WHERE to_user='$userfinal' ORDER BY message_id DESC") or die(mysql_error());$get_messages2 = mysql_query("SELECT * FROM messages WHERE to_user='$userfinal' ORDER BY message_id DESC") or die(mysql_error());$num_messages = mysql_num_rows($get_messages);// display each message title, with a link to their contentecho '<ul>';for($count = 1; $count <= $num_messages; $count++){
    $row = mysql_fetch_array($get_messages2);//if the message is not read, show "(new)" after the title, else, just show the title.if($row['message_read'] == 0){echo '<a href='read_message?messageid=''. $row['message_id'] . '">' . $row['message_title'] . '</a>(New)<br>';}else{echo '<a href='/redirect/"read_message?messageid=''. $row['message_id'] . '">' . $row['message_title'] . '</a><br>';}}echo '</ul>';echo '<form name="newmsgfrm" method="post" action="new_message.php">';echo '<input type="submit" value="Send a New Message">';echo '</form>';
    echo '<form name="backfrm" method="post" action="index.php">';echo '<input type="submit" value="Back to Home">';echo '</form>';
    ?>
    PHP:
     
    byllan, Apr 28, 2012 IP
  2. sarahk

    sarahk iTamer Staff

    Messages:
    28,899
    Likes Received:
    4,555
    Best Answers:
    123
    Trophy Points:
    665
    #2
    You will find people more interested to help if you post with line breaks and proper code indenting.
     
    sarahk, Apr 29, 2012 IP