输出玩家排名的排名数字


Output the ranking number of a players ranking?

我正在对具有用户的idhighscore的表进行排序。这是按降序排列的,我输入当前用户的id来查找他的排名。

I.e:我输入当前用户的ID,并希望转到他排名的echo

select *
from (
  select *
  from players
  order by highscore desc
  limit 10
) t
where id = $current_user

我已经尝试过了,但没有成功地用PHP输出数据。。

$result = $mysqli->query("SELECT COUNT(*) AS rank FROM players WHERE highscore >= (SELECT highscore FROM players WHERE id=$current_user)");

我必须对上面的内容进行什么修改才能获得用户排名,然后echo在PHP中获得他的排名数字?谢谢

从数据库中查询数据后,需要将数据放入数组中。试着像这样使用mysqli的fetch_assoc

$result = $mysqli->query("SELECT COUNT(*) AS rank FROM players WHERE highscore >= (SELECT highscore FROM players WHERE id=$current_user)");
// Put the data from the query into an array
$row = $result->fetch_assoc();
// Store the rank in a variable named $rank
$rank = $row['rank'];
echo $rank;