[英]Display Current Loggedin user Rank
我已经编写了代码来向所有用户显示排名。 但是,我无法显示当前登录的用户排名。 这是我写的代码。
<?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;
}
?>
USE username ='Current_user_id'显示当前登录的用户..
在查询中也指定用户名条件
<?php $var = mysql_query("SELECT quiz_grades.grade, user.username
FROM quiz_grades
JOIN user ON quiz_grades.userid=user.id
WHERE `quiz`=$quid and `username`='$userid' ORDER BY quiz_grades.grade DESC");
$i=0;
while($result1=mysql_fetch_array($var))
{
$i++;
echo $result1['username'];
echo $result1['grade'];
echo $i;
}
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.