所以我想通过点击对用户进行排名,这是我的代码:
<!DOCTYPE html>
<html>
<head>
<title>User ranking</title>
</head>
<body>
<table style="width:100%">
<tr>
<th>Rank</th>
<th>User</th>
<th>clicks</th>
</tr>
<tr>
<td></td>
<td>
<?php
$servername = "localhost";
$username = "...";
$password = "...";
$dbname = "...";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT DISTINCT id, user FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo $row["user"]. "<br>";
}
} else {
echo "0 results";
}
$conn->close();
?>
</td>
<td></td>
</tr>
</table>
</body>
</html>
但这是我的问题:“用户”列有重复的用户,在表中我只想将唯一用户计为“用户”,你注意到我没有在 php 代码中提到“点击”,因为我没有点击数据库中的列...
所以这就是我想要计算点击次数的方式:正如我所说的“用户”列有重复的用户,我想计算用户名重复的次数并对其进行排名。
例如:用户 John X3 和 Dan X2 在数据库中我想计算 John 和 Dan 重复的次数,因为 John 是 3 次 John 排名第一,而 Dan 应该排名第二
这里还有另一个问题:数据库每 24 小时重置一次,因此所有数据每 24 小时消失一次。如何解决?如何永久显示数据库数据,我的意思是显示数据库数据,然后在 24 小时后保持增加...
我不知道这是否有用:数据库有“Id”列并且它不会重置例如 3 次 John 在数据库中,'John with id 1''john with id 2'和'john id 为 3'。
用过JS没问题。顺便说一句,我是初学者,我试图这样做……我花了大约 7 个小时,但每次尝试都失败了。
弑天下