$_to = $page_count;
}
}
$url_format = $url . $param_url . 'page=';
$pager['page_first'] = ($page - $_offset > 1 && $_pagenum < $page_count) ? $url_format . 1 : '';
$pager['page_prev'] = ($page > 1) ? $url_format . $page_prev : '';
$pager['page_next'] = ($page < $page_count) ? $url_format . $page_next : '';
$pager['page_last'] = ($_to < $page_count) ? $url_format . $page_count : '';
$pager['page_kbd'] = ($_pagenum < $page_count) ? true : false;
$pager['page_number'] = array();
for ($i=$_from;$i<=$_to;++$i)
{
$pager['page_number'][$i] = $url_format . $i;
}
}
$pager['search'] = $param;
return $pager;
}
从中我们可以看出他通过伪造url参数来传值,比如这里参数page当前页面就是通过url传参get过来的。
分页页码显示需要的几个变量:
当前页面变量,
数据的条数,
每页显示的条数,
根据上面得出的总页数,
这样就可以得出最大的页码数,就可以进行分页码显示了。
给出一个url?page=2,则当前是第二页,第二页页码没有连接,
前一页的页码自然是url?page=1(-1)
下一页的页码自然是url?page=3(+1)
当前页面的内容,就可以通过
select * from table order by id limit 2*size, size,
每次通过调整limit初始值就可以达到取出表中的所有数据。
分页的实现就是考虑2部分,一部分是数据的分页显示,一部分就是页码的显示,上面给出的函数就是ecshop 中页码的显示函数,数据的显示通过自己的调整来实现。