首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在php数组中更改№10的结果?

如何在php数组中更改№10的结果?
EN

Stack Overflow用户
提问于 2018-02-06 23:27:13
回答 2查看 65关注 0票数 0

我必须创建一个排名前十的排行榜。我设法在游戏输了后用ajax将数据插入到数据库中,并在游戏输了后获取数据。但是我不能改变排行榜中最后一个(№10)的位置。如果结果不在前10名中,则更改结果而不是№10,且位置应该是他在所有结果中位置。

这是从数据库中获取数据:

代码语言:javascript
代码运行次数:0
运行
复制
<?php
require("db_connection.php");
$id = 0;
$sql = "SELECT * FROM Leaderboard ORDER BY score DESC LIMIT 10";
$result = $conn->query($sql);
$datas = array();
if ($result->num_rows > 0) {
    while ($row = $result-> fetch_assoc()) {
        $datas[] = $row;
        $id = $id + 1;
        echo "<tr><td>" . $id . "</td><td>" . $row['name'] . "</td><td>" . $row['score'] . "</td></tr>";
    }
}
?>

这是JS:

代码语言:javascript
代码运行次数:0
运行
复制
$.post($("#myForm").attr("action"), $("input.info").serializeArray(), function(info) {
    console.log(info);
});
$("#Datas").load('./php/get.php');

这是HTML:

代码语言:javascript
代码运行次数:0
运行
复制
<div id="Leaderboard">
    <table id="Datas">
        <tr>
            <th>id</th>
            <th>Name</th>
            <th>Score</th>
        </tr>
    </table>
</div>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-06 23:30:26

您应该在第一个请求结束后重新加载数据:

代码语言:javascript
代码运行次数:0
运行
复制
 $.post($("#myForm").attr("action"), $("input.info").serializeArray(), function(info) {
    console.log(info);
    $("#Datas").load('./php/get.php');
  });
票数 0
EN

Stack Overflow用户

发布于 2018-02-06 23:45:26

你可以使用PHP的array_reverse函数来颠倒数组的顺序(假设它已经排在了1-10位)。尝试将$result传递给array_reverse,然后输出结果

代码语言:javascript
代码运行次数:0
运行
复制
 $reversedResult = array_reverse($result);

在while循环中使用$reversedResult而不是$result应该是可行的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48646472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档