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 に答える