PHP 查询 LIMIT DESC 无法正常工作
PHP Query LIMIT DESC not working properly
我正在尝试获取玩过我的游戏的玩家的高分列表(前 10 名)。
一切正常,除了一件事,列表不正确。
前 10 个人是正确的,但是当我转到第 2 页时,列表没有进一步完成。
变量说明
$gamemode = "Endless"
$filter = "Score"
$startNum = Page1 = 0, Page2 = 10
$maxlimit = 10
查询:
$query = "SELECT ID, Gamemode, Name, Score, ContainersSaved, TimePlayed, Date, ScorePerMinute
FROM $dbName . `highscore`
WHERE Gamemode='$gamemode'
ORDER by `$filter` DESC
LIMIT $startNum, $maxlimit";
有人知道我做错了什么吗?
如果您的 Score 字段是 varchar,请尝试:(或将其更改为 INT)
$order=$filter;
if($filter=='Score') {
$order="ABS($filter);
}
$query = "SELECT ID,Gamemode,Name,Score,ContainersSaved,TimePlayed,Date,ScorePerMinute FROM $dbName . `highscore` WHERE Gamemode='$gamemode' ORDER by $order DESC LIMIT $startNum, $maxlimit";
我修复了它,我忘记将 'Score' 字段从 varchar 更改为 INT,所以它试图在字符串而不是 INT 上下降。
感谢 Imaginaerum 给我的小费:)
我正在尝试获取玩过我的游戏的玩家的高分列表(前 10 名)。 一切正常,除了一件事,列表不正确。 前 10 个人是正确的,但是当我转到第 2 页时,列表没有进一步完成。
变量说明
$gamemode = "Endless"
$filter = "Score"
$startNum = Page1 = 0, Page2 = 10
$maxlimit = 10
查询:
$query = "SELECT ID, Gamemode, Name, Score, ContainersSaved, TimePlayed, Date, ScorePerMinute
FROM $dbName . `highscore`
WHERE Gamemode='$gamemode'
ORDER by `$filter` DESC
LIMIT $startNum, $maxlimit";
有人知道我做错了什么吗?
如果您的 Score 字段是 varchar,请尝试:(或将其更改为 INT)
$order=$filter;
if($filter=='Score') {
$order="ABS($filter);
}
$query = "SELECT ID,Gamemode,Name,Score,ContainersSaved,TimePlayed,Date,ScorePerMinute FROM $dbName . `highscore` WHERE Gamemode='$gamemode' ORDER by $order DESC LIMIT $startNum, $maxlimit";
我修复了它,我忘记将 'Score' 字段从 varchar 更改为 INT,所以它试图在字符串而不是 INT 上下降。
感谢 Imaginaerum 给我的小费:)