gpt4 book ai didi

php - 如何查找所需行之前的总行数

转载 作者:行者123 更新时间:2023-11-30 00:19:45 25 4
gpt4 key购买 nike

我有一个基于文本的黑手党游戏,我选择了一些游戏记录。游戏记录全部定义在“users”表中。在这个例子中,我使用“总犯罪”。我需要从用户表中选择所有行并按总犯罪率对其进行排序,然后找出每个特定用户正在查看该页面的哪一行。

如果我是“排名”第 30 位的用户,它会回显“30”。我用来查找前 5 名的代码在这里,但我需要对其进行扩展:

<?php
$i = 0;
$FindCrimes = mysql_query("SELECT * FROM players WHERE status='Alive' AND robot = 0 ORDER BY `totalcrimes` DESC LIMIT 5");
while($Row = mysql_fetch_assoc($FindCrimes)){
$Username = $Row['playername'];
$TotalCrimes = number_format($Row['totalcrimes']);
$i++;
echo "
<tr>
<td bgcolor='#111111' width='5%'>$i</td>
<td bgcolor='#111111' width='50%'><a href='viewplayer?playerid=$Username'>$Username</a></td>
<td bgcolor='#333333' width='45%'>$TotalCrimes</a></td></td>
</tr>
";
}
?>

最佳答案

我假设您已经设置了一个变量来保存当前用户 ID 号和总犯罪次数,因此在本例中我将使用 $user 作为我的变量。

更改您的以适应。

现在,我看到两个实例,您的意思可能是因为您的帖子不是很具体,所以我将解决这两个问题。

要在页面顶部显示数字,您可以使用类似的内容;

<?php
$sql = "SELECT * FROM `players` WHERE `totalcrimes` > '{$user['totalcrimes']}'";
$run = mysql_query($sql);
$rank = mysql_num_rows($run) + 1;
echo 'Your rank: ' . $rank;

除此之外,我发现它可能被用来突出显示您的行,所以这样的东西就足够了;

<?php
$i = 0;
$FindCrimes = mysql_query("SELECT * FROM players WHERE status='Alive' AND robot = 0 ORDER BY `totalcrimes` DESC LIMIT 5");
while($Row = mysql_fetch_assoc($FindCrimes))
{
$Username = $Row['playername'];
$TotalCrimes = number_format($Row['totalcrimes']);
$i++;

$primary = '#111111';
$secondary = '#333333';

if ($Row['id'] == $user['id'])
{
$primary = '#222222';
$secondary = '#444444';
}

echo "<tr>
<td bgcolor='$primary' width='5%'>$i</td>
<td bgcolor='$primary' width='50%'><a href='viewplayer?playerid=$Username'>$Username</a></td>
<td bgcolor='$secondary' width='45%'>$TotalCrimes</a></td></td>
</tr>";
}

如果这些都没有满足您的要求,请发表评论,我将进行编辑以满足您的要求。

编辑:我在游戏领域工作了几年 - 愿意分享您的链接吗?

关于php - 如何查找所需行之前的总行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23331206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com