2 php mysql sql pagination cakephp
标题有点不稳定,但它是我在早上4点可以拿到的最好的.我有一个链接表,我正在分页,没有什么花哨的.假设有100个链接显示20个页面,共5页.如何编号从1开始,在第一页以20结尾的每个链接,如果我们跳到最后一页将是81到100.我有多个查询改变我的查询的方向和ORDER BY所以这必须是动态.使用CakePHP 1.2完成.这方面的一个例子是reddit.com
在视图中尝试此操作:
<?php debug($this->params['paging']); ?>
Run Code Online (Sandbox Code Playgroud)
这将为您提供有关分页器当前状态的一些内部信息.例如,你会发现这个:
Array (
[Model] => Array (
[page] => 2
...
[options] => Array (
[limit] => 20
...
Run Code Online (Sandbox Code Playgroud)
'limit'是"每页的项目",'page'并且正好是页面.
有了这些信息,将这种计数器插入到输出中应该是非常简单的.
$page = $this->params['paging']['Model']['page'];
$limit = $this->params['paging']['Model']['options']['limit'];
$counter = ($page * $limit) - $limit + 1;
foreach ($models as $model) {
echo $counter;
// normal $model output
$counter++;
}
Run Code Online (Sandbox Code Playgroud)