SQL - 根据结果数添加结果页码?

时间:2011-02-25 17:24:07

标签: php sql pagination

我有一个SQL查询,将结果分成25个组:

$page = 0; // 1, 2, 3
$perPage = 25;

....

ORDER BY c.date DESC LIMIT " . ( $page * $perPage ) . ", " . $perPage);

我正在试图弄清楚我是如何编写循环返回$ page页面的内容,然后将一个数字回显到屏幕上。 IE浏览器。第1页,第2页,第3页 - 基于$ page。

1 个答案:

答案 0 :(得分:2)

我将假设搜索PHP页面是通过诸如page之类的a.php?page=5之类的GET参数驱动的。

在这种情况下,尝试这种方式:

$total = //total no. of rows. if using mysql use: mysql_numrows($resource);
$total = ceil($total/$perPage);
for ($i=0; $i<$total; $i++){
    echo '<a href="' . $_SERVER['PHP_SELF'] . '?page=' . $i . '">Page ' . ($i+1) . '</a>';
}

这只是为了给你一个启动。显然,你可以按照自己的方式提前做好准备。

您正在做的事情被称为分页。只需谷歌PHP Pagination,你就会得到很多结果。而且大多数都太容易使用了。

尝试Zend Paginator:http://framework.zend.com/manual/en/zend.paginator.html