所以我有这个页面,我使用分页。没问题,但我想显示行号。我每页显示25条记录。您知道第1页,第1-25页,第2页,第26-50页等。但是,使用这段代码,当您更改页面时,它会重新开始。有小费吗?
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;
$perPage = 25;
$startIndex = ($page * $perPage) - $perPage;
<? $i = 1; foreach($db->query("SELECT value FROM pskills ORDER BY value DESC") as $row): ?>
#<?=$i?>. <?=$row['value']?>
<? $i++; endforeach ?>
答案 0 :(得分:0)
您的查询需要LIMIT
SELECT value FROM pskills ORDER BY value DESC LIMIT $startIndex , $perPage
答案 1 :(得分:0)
你需要LIMIT和OFFSET
如果你有一页25记录
这是第1页的查询
SELECT value FROM pskills ORDER BY value DESC LIMIT 25 OFFSET 0
这是第2页的查询
SELECT value FROM pskills ORDER BY value DESC LIMIT 25 OFFSET 25
这是第3页的查询
SELECT value FROM pskills ORDER BY value DESC LIMIT 25 OFFSET 50
等等......每页添加25个
希望此查询可以帮助您
答案 2 :(得分:0)
当您更改需要此查询的页面时,它可能会重新开始
($db->query("SELECT value FROM pskills where value > '.(pageno * 25).' ORDER BY value asc limit 25")
其中pageno从0开始,因此一个。它会做什么
1st page ===== value > (0*25) result will be 1 to 25
2nd page ===== value > (1*25) result will be 25 to 50
3rd page ===== value > (2*25) result will be 50 to 75
我不是因为你使用desc的命令?你想要1 - 25的结果那么它应该是asc。