Forum Moderators: open
Next lines are from my forum script. The thread consists of 20 messages per page, so there are 20 queries to receive user information for each message.
Any ideas how to get user information without sending 20 queries per page to the usertable?
Thanks.
$tmp=mysql_query("SELECT id, uid, text, user, fdate, deleted_reply, deleted FROM forum_replies where threadid='$threadid' order by fdate $sortby limit $start,$step") or die(mysql_error());
while($ix=mysql_fetch_array($tmp)) { $userinfo=mysql_query("SELECT photo, fthreads, freplies FROM users where id='".$ix['uid']."'") or die(mysql_error());
list($photo, $fthreads, $freplies) = mysql_fetch_row($userinfo);}
$select = "select forum_replies.id,
forum_replies.uid,
forum_replies.text,
forum_replies.user,
forum_replies.fdate,
forum_replies.deleted_reply,
forum_replies.deleted,
users.photo,
users.fthreads,
users.freplies
from forum_replies, users where forum_replies.uid=users.id
and forum_replies.threadid='$threadid'
order by forum_replies.fdate
$sortby limit $start,$step";
$userinfo=mysql_query("$select") or die(mysql_error());
while(list($id,$uid,$text,$user,$fdate,$deleted_reply,$deleted,$photo,$fthreads,$freply)=mysql_fetch_array($userinfo)){
// output row
}
Be sure to compile $sortby with full table name:
$sortby="forum_replies.fdate";