1

我试图限制从查询返回的行数。这是我正在使用的代码。

$min = ($id2-1)*16;
$max = $id2*16;

$row = mysql_query("SELECT * FROM anunt WHERE masina = 2 ORDER BY anuntID DESC LIMIT $min, $max") or die(mysql_error());

ID2 是从链接解析的值。因此,例如,当 ID2 为 2 时,查询的限制应为 16 到 32 - 因此总共有 16 个条目。但我的问题是查询返回了 32 个条目。就像它跳过了'$min'值。我检查了所有内容,最后,该查询似乎是问题所在。

有任何想法吗?谢谢

4

4 回答 4

6

替换这个:

$row = mysql_query("SELECT * FROM anunt WHERE masina = 2 ORDER BY anuntID DESC LIMIT $min, $max") or die(mysql_error());

这样:

$records = $max - $min;
$row = mysql_query("SELECT * FROM anunt WHERE masina = 2 ORDER BY anuntID DESC LIMIT $records, $min") or die(mysql_error());
于 2013-07-11T11:49:00.693 回答
4

语法是LIMIT start_index, amount,不是LIMIT start_index, end_index

于 2013-07-11T11:46:54.603 回答
3
[LIMIT {[offset,] row_count | row_count OFFSET offset}]

你通过 row_count=32。
检查手册

于 2013-07-11T11:46:47.437 回答
1

使用限制

您的查询 LIMIT FROM TO

于 2013-07-11T11:48:43.970 回答