php – 按最高到最低排序考试结果
发布时间:2020-12-13 21:33:09 所属栏目:PHP教程 来源:网络整理
导读:我为我的学生做了一个简单的基于 PHP的考试. 结果在数据库中记录为“q1”,“q2”,“q3”,“q4”和“q5”. 正确答案记录为“是”,错误答案记录为“否”. 有5个问题,我希望总分为100分. 所有的功能都按照我的意愿运行,但问题是,我不知道如何将结果从高到低排序
我为我的学生做了一个简单的基于
PHP的考试.
结果在数据库中记录为“q1”,“q2”,“q3”,“q4”和“q5”. 正确答案记录为“是”,错误答案记录为“否”. 有5个问题,我希望总分为100分. 所有的功能都按照我的意愿运行,但问题是,我不知道如何将结果从高到低排序.任何帮助都非常感谢! $result = mysqli_query($db,"SELECT * FROM table"); while($row = mysqli_fetch_array($result)){ $score = 0; echo '<img alt="'.$row["name"].'" src="images/'.$row["name"].'.jpg" width="118" height="158"'; if ($row["q1"] === "yes") {$score=$score+20;} if ($row["q2"] === "yes") {$score=$score+20;} if ($row["q3"] === "yes") {$score=$score+20;} if ($row["q4"] === "yes") {$score=$score+20;} if ($row["q5"] === "yes") {$score=$score+20;} echo ' /> '.$row["name"] . ' ' . $score; } 解决方法
而不是while和inner if,你可以使用结果列的select和order来完成所有操作,例如:
select name,if(q1='yes',20,0) + if(q2='yes',0) + if(q3='yes',0) + if(q4='yes',0) + if(q5='yes',0) result from table order by result desc (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |