我已经编写了向所有用户显示排名的代码。但是,我无法显示当前登录的用户等级。这是我写的代码。
<?php
$var = mysql_query("SELECT quiz_grades.grade, user.username FROM quiz_grades JOIN user ON quiz_grades.userid=user.id WHERE `quiz`=$quid ORDER BY quiz_grades.grade DESC");
$i=0;
while($result1=mysql_fetch_array($var))
{
$i++;
echo $result1['username'];
echo $result1['grade'];
echo $i;
}
?>
请帮助我仅显示当前登录的用户等级。提前致谢
首先,您当前登录的用户ID /用户名在哪里?没有任何会议吗?$_SESSION['id']
或者$_SESSION['username'];
如果没有,则在用户登录时先设置用户的会话
注意 : mysql_query is deprecated
$_SESSION['id'] = $current_logged_in_user_id; // $current_logged_in_user_id is just an example variable to give you an idea of making the session according to id which you fetch when user logs in.
我将向您显示基于手动用户ID的查询
$userid = '3';
如问题发布者稍后所述,用户ID为:
$USER->id
然后在您的查询用户内部使用上面的变量来获取当前用户的排名/整个数据remove quizid
条件。
<?php
$var = mysql_query("SELECT quiz_grades.grade, user.username
FROM quiz_grades
JOIN user ON quiz_grades.userid=user.id
WHERE quiz_grades.quiz = $quizid AND quiz_grades.userid = $USER->id ORDER BY quiz_grades.grade DESC");
$i=0;
while($result1=mysql_fetch_array($var))
{
$i++;
echo $result1['username'];
echo $result1['grade'];
echo $i;
}
?>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句