使用 MySQLi 和 PHP 的排名系统(多次检查)
Ranking system using MySQLi and PHP (Multiple checks)
我设置了这个函数来获取用户排名
function rank($user) {
$q = query("SELECT * FROM members ORDER BY level DESC");
$rank = 0;
while($row = mysqli_fetch_array($q)) {
$rank++;
if($row['username'] == $user) {
return $rank;
}
}
}
请注意:query()是一个自动查询数据库的函数。
这是返回错误,我想要的是:
username level money exp id
john 3 2 213 4
bob 3 132 23 5
mark 4 3423 2 6
我希望它根据级别排序,但如果两个用户(john
和 bob
)具有相同的级别,则求助于 exp,然后是金钱,然后是用户 ID。
您可以在 order by
子句中给出多个表达式:
SELECT * FROM members ORDER BY level DESC, exp DESC, money DESC, user_id DESC
我设置了这个函数来获取用户排名
function rank($user) {
$q = query("SELECT * FROM members ORDER BY level DESC");
$rank = 0;
while($row = mysqli_fetch_array($q)) {
$rank++;
if($row['username'] == $user) {
return $rank;
}
}
}
请注意:query()是一个自动查询数据库的函数。
这是返回错误,我想要的是:
username level money exp id
john 3 2 213 4
bob 3 132 23 5
mark 4 3423 2 6
我希望它根据级别排序,但如果两个用户(john
和 bob
)具有相同的级别,则求助于 exp,然后是金钱,然后是用户 ID。
您可以在 order by
子句中给出多个表达式:
SELECT * FROM members ORDER BY level DESC, exp DESC, money DESC, user_id DESC