我有一种情况,我想实现后端分页但是,我不知道如何做到这一点。我正在考虑一个解决方案,我获取总页数(一个页面是n定义元素的列表),然后调用服务器来获取第1页,第2页,第3页,第4页......第n页等等上。有什么建议 ?
答案 0 :(得分:1)
通常,分页是通过向用户指定每页显示多少结果以及他当前正在查看的结果页面来完成的。但是,MySQL或Solr等后端存储通常通过指定每页显示的结果数以及输出中要跳过的结果数来处理分页。我通常使用类似下面的PHP来获取前者(用于后端)(来自用户):
$documentsPerPage = 10;
if ( isset($input['page']) && is_numeric($input['page']) && $input['page']>0 ) {
$skip = $documentsPerPage * (intval($input['page'])-1);
} else {
$skip =0;
}
$sql = "SELECT * FROM someTable LIMIT {$skip}, {$documentsPerPage}";
如果数据库中有$count
条记录,以下是如何计算模拟楼层操作的页数:
$totalPages = ($count + $documentsPerPage - 1) % $documentsPerPage;