【发布时间】:2016-09-27 07:54:02
【问题描述】:
我在 cakephp 3.2 中做 ajax 分页
我已经通过获取最后一个 id 完成了分页向前移动的代码。
如果我想倒退,分页将不起作用,我知道。
我怎样才能以正确的方式做到这一点,以便它适用于两个方向以及直接点击任何分页索引。
下面我附上了我的一些代码,这些代码仅适用于分页向前移动。
我知道代码不能用于向后移动。
我该怎么做?
///////////////////////////////////PAGINATION STARTS HERE/////////////////////////////////////////////////
if(isset($_POST["page"])){
$page_number = filter_var($_POST["page"], FILTER_SANITIZE_NUMBER_INT, FILTER_FLAG_STRIP_HIGH); //filter number
if(!is_numeric($page_number)){die('Invalid page number!');} //incase of invalid page number
}else{
$page_number = 1; //if there's no page number, set it to 1
}
$item_per_page=5;
$get_total_rows = $this->Orders->find('all')->where($condition)->count(); //hold total records in variable
$total_pages = ceil($get_total_rows/$item_per_page);
$page_position = (($page_number-1) * $item_per_page);
if($page_number>1)
{
$condition[] = ['Orders.id >' => $_POST["lastId"]];
}//this one fetch all list greater than last id
$Lists = $this->Orders->find('all')->where($condition)->order(['Orders.id' => 'ASC'])->limit($item_per_page)->toArray();
谢谢
【问题讨论】:
-
在 mysql 中,您可以使用 LIMIT start,end (LIMIT 100,10) 等限制,它会在跳过 100 条记录后获取 10 条记录。 cakephp 中应该有相同的选项用于分页
-
@Minesh Patel 做了一些研发,找到了一些最好的和更少的代码来在 cakephp 3X 中制作这种类型的分页,我认为这是最好的分页。如果有人想要我可以发布代码。
-
是的,您可以发布您的答案,以帮助其他人
-
好的,我一定会发布我的答案。 @Minesh Patel
标签: php ajax pagination cakephp-3.x cakephp-3.2