我正在对三列进行查询;一列包含文本,另外两列包含数字。我对这些数字进行了计算,得到了一个名为 $average 的新数字。然后我将结果吐出到一个 html 表中。表中的行按照它们从数据库中出来的顺序排序。我正在尝试对表格进行排序,以便数据从最高 $average 显示到最低(同时仍与第一列中的正确文本值正确关联)。
我已经尝试了一些asort
东西foreach
,但我只成功地犯了一堆错误。
关于我如何解决这个问题的任何想法?谢谢。
这是目前的游戏状态:
/ db query
if (!$result = mysqli_query($link,"SELECT quiz_name,
quiz_attempts,
cumulative_score
FROM scoredata")) {
echo("There was a problem: " . mysqli_error($link));
exit();
}
...
// got results?
if(mysqli_num_rows($result) >= 1) {
$output = "";
$output .= "<table>\n";
$output .= "<tr><th>Quiz name</th> <th>Played</th> <th>Avg. score</th></tr>\n";
while($row = mysqli_fetch_array($result)) {
$output .= "<tr><td>".str_replace('_', ' ', $row['quiz_name']) . "</td>";
$output .= "<td>" . $row['quiz_attempts'] . "</td>";
// calculate average score
$average = $row['cumulative_score']/$row['quiz_attempts'];
$output .= "<td>" . round($average,2) . "</td></tr>";
}
$output .= "</table>\n";
echo $output;
}
...