我正在制作一个小的浏览器游戏,我有一个数据库,里面存储了用户的高分。这里是数据库的映像(name是用户名,M1_CPM是分数)
使用下面的代码,我试图获得前10个值,以便以后在排行榜上显示它们:
$sql = "SELECT * FROM leaderboard ORDER BY M1_CPM DESC LIMIT 10";
$stmt = mysqli_stmt_init($conn);
if (!mysqli_stmt_prepare($stmt, $sql)) {
exit();
}
mysqli_stmt_execute($stmt);
$resultData = mysqli_stmt_get_result($stmt);
echo implode(",", mysqli_fetch_assoc($resultData));
问题是,总是只呼应最高分,不呼应前十名。为什么?谢谢^^
mysql_fetch_assoc()函数仅从记录集中返回一行作为关联数组。若要检索所有行,请使用while循环:
while($row = mysqli_fetch_assoc($resultData))
{
echo implode(",", $row);
}
注意:检索数据后,此函数移动到记录集中的下一行。对mysql_fetch_assoc()的每次后续调用都会返回记录集中的下一行。