我想通过使用总分来获得学生的排名,也就是比其他分数更高的学生应该是第一个等,我使用while循环来这样做,但是当两个或更多的学生有相同的总分数,他们得到不同的等级,我想要达到的是当两个或两个以上的学生有相同的总分,他们应该有相同的排名,请帮助,这里是我的代码。获得学生排名
<?php require_once("include/connection.php"); ?>
<?php
$query = "SELECT * FROM `total` ORDER BY `total` DESC";
$result = mysql_query($query) or die(mysql_error());
$rank = 1; // initialize
echo "<table><tr><th>Student Code</th><th>Rank</th><th>Total</th></tr>\n";
while($row = mysql_fetch_assoc($result))
{
echo "<tr><td>{$row['student_code']}</td><td>$rank</td><td>{$row['total']}</td></tr>\n";
if ($rank == 100)
{ break; }
$rank++;
}
echo "</table>\n";
?>
感谢,我想这和它的工作完美 – punji
我将迁移到mysqli的,但我仍然不是很好在PHP中,我还在学习php和mysql的基础 – punji
很高兴听到,祝你有个美好的一天,不要忘记考虑接受,如果你对给定的答案感到满意。 –