Chevy Posted August 20, 2006 Share Posted August 20, 2006 It is really early and I need to figure out a problem I am having...here is my code:[code]<?phpsession_start();if ($_SESSION['logged']==yes){}else {echo "Please login!";exit;}mysql_connect("localhost", "_real", "hidden") or die(mysql_error());mysql_select_db("_real") or die(mysql_error());$username = $_SESSION['username'];$id = $_GET['id'];$topicid = $_GET['topicid'];$query = "SELECT * FROM reply WHERE topicid='$topicid' AND groupid='$id'"; $result = mysql_query($query) or die(mysql_error());$query2 = "SELECT * FROM users WHERE username='$username'"; $result2 = mysql_query($query2) or die(mysql_error());$user = mysql_fetch_array($result2);echo "<table border=\"0\" cellspacing=\"1\" cellpadding=\"1\">";while($main = mysql_fetch_array($result)){echo '<tr><td style="border:1px solid black;" width="100"><center>';echo "<b>";echo $main['poster'];echo "</b><br>";echo "<img src=\"";echo $user['avatar'];echo "\"><br>Posts: <b>";echo $user['posts'];echo "</b></center></td>";echo '<td style="border:1px solid black;" width="450">';echo "Posted On: <i>";echo $main['time'];echo "</i><hr>";echo $main['message'];echo "</td></tr>";}echo "</table>";?>[/code]Okay now when the user posts it adds 1 to a table called users, but they are all the same for every user when it shows up on the page (the post count is the same) and help?Yes I know my code is messy ;D Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/ Share on other sites More sharing options...
hitman6003 Posted August 20, 2006 Share Posted August 20, 2006 How are you tracking the number of posts a user makes?Cleaner, more readable version:[code]<?phpsession_start();if ($_SESSION['logged'] != "yes"){ echo "Please login!"; exit;}mysql_connect("localhost", "_real", "hidden") or die(mysql_error());mysql_select_db("_real") or die(mysql_error());$username = $_SESSION['username'];$id = $_GET['id'];$topicid = $_GET['topicid'];$query = "SELECT * FROM reply WHERE topicid='$topicid' AND groupid='$id'"; $result = mysql_query($query) or die(mysql_error());$query2 = "SELECT * FROM users WHERE username='$username'"; $result2 = mysql_query($query2) or die(mysql_error());$user = mysql_fetch_array($result2);echo " <table border=\"0\" cellspacing=\"1\" cellpadding=\"1\">";while($main = mysql_fetch_array($result)) { echo ' <tr> <td style="text-align: center; border:1px solid black;" width="100"> <b>' . $main['poster'] . '</b><br> <img src="' . $user['avatar'] . '"><br> Posts: <b>' . $user['posts'] . '</b> </td> <td style="border:1px solid black;" width="450"> Posted On: <i>' . $main['time'] . '</i><hr> ' . $main['message'] . ' </td> </tr>';}echo "</table>";?>[/code] Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/#findComment-77560 Share on other sites More sharing options...
Chevy Posted August 20, 2006 Author Share Posted August 20, 2006 I have a table called users and when they post it adds one to the row in users called posts Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/#findComment-77562 Share on other sites More sharing options...
hitman6003 Posted August 20, 2006 Share Posted August 20, 2006 what is the query you are using for that? Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/#findComment-77564 Share on other sites More sharing options...
Chevy Posted August 20, 2006 Author Share Posted August 20, 2006 [code]if (isset($_POST['submit'])){mysql_query("INSERT INTO reply (groupid, topicid, poster, message, time) VALUES('$groupid', '$topicid', '$username', '$message', '$time') ");$posts = $user['posts']++;mysql_query("UPDATE users SET posts='$posts' WHERE username='$username'") or die(mysql_error());}[/code] Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/#findComment-77569 Share on other sites More sharing options...
Chevy Posted August 20, 2006 Author Share Posted August 20, 2006 Does anyone know how I could do this? Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/#findComment-77585 Share on other sites More sharing options...
hitman6003 Posted August 20, 2006 Share Posted August 20, 2006 Try this:[code]<?phpsession_start();if ($_SESSION['logged'] != "yes"){ echo "Please login!"; exit;}mysql_connect("localhost", "_real", "hidden") or die(mysql_error());mysql_select_db("_real") or die(mysql_error());$username = $_SESSION['username'];$id = $_GET['id'];$topicid = $_GET['topicid'];$query = "SELECT * FROM reply LEFT JOIN users where reply.poster = users.username WHERE topicid='$topicid' AND groupid='$id'"; $result = mysql_query($query) or die(mysql_error());echo " <table border=\"0\" cellspacing=\"1\" cellpadding=\"1\">";while($main = mysql_fetch_array($result)) { echo ' <tr> <td style="text-align: center; border:1px solid black;" width="100"> <b>' . $main['poster'] . '</b><br> <img src="' . $main['avatar'] . '"><br> Posts: <b>' . $main['posts'] . '</b> </td> <td style="border:1px solid black;" width="450"> Posted On: <i>' . $main['time'] . '</i><hr> ' . $main['message'] . ' </td> </tr>';}echo "</table>";[/code]You were using the same user info for all of the replies. Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/#findComment-77587 Share on other sites More sharing options...
Chevy Posted August 20, 2006 Author Share Posted August 20, 2006 Hmm I am getting this errorYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where reply.poster = users.username WHERE topicid='1' AND groupid='1'' at line 1 Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/#findComment-77594 Share on other sites More sharing options...
hitman6003 Posted August 20, 2006 Share Posted August 20, 2006 Sorry, wrong SQL syntax. Your query should be:[code]SELECT * FROM reply LEFT JOIN users ON reply.poster = users.username WHERE topicid='$topicid' AND groupid='$id'[/code] Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/#findComment-77596 Share on other sites More sharing options...
Chevy Posted August 20, 2006 Author Share Posted August 20, 2006 Hey, Thank you a lot! You are very cool in my book now, :)Thanks again! Link to comment https://forums.phpfreaks.com/topic/18103-a-simple-question/#findComment-77600 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.