【发布时间】:2013-10-24 07:22:12
【问题描述】:
我目前正在构建一个网站,人们可以访问该网站并输入他们跑步、游泳、远足或滑雪的距离。这是我的第一个网站,2-3 个月前我对编码一无所知,所以请记住这一点。
我创建了一个存储此数据的表,以及一个将数据提取到排行榜的 leaderboard.php。
这就是现在的样子:
插入表格:
if (!mysqli_query($con,"INSERT INTO total(username, type, distance) VALUES ('$username', '$type', '$distance')"))
并将数据提取到排行榜中:
$result = mysqli_query($con, "SELECT username, distance FROM total ORDER BY distance DESC");
$rank= 1;
if (mysqli_num_rows($result)) {
while ($row = mysqli_fetch_assoc($result)) {
echo "<tr><td>{$rank}</td>
<td>{$row['username']}</td>
<td>{$row['distance']}</td></tr>";
$rank++;
}
}
?>
这样做的问题是,当有人输入他们的用户名/类型/距离时,它会创建新行。所以一个人可以有不同的等级。我希望排行榜能够汇总每个用户与不同类型活动的所有距离。
什么是正确的编码?如果可能的话,我只想更改 leaderboard.php 而不是表格,因为我也将这些数据用于网站的其他部分。
【问题讨论】:
标签: php mysql mysqli unique leaderboard