2011-02-25 61 views
0

我有一个结果分成25组SQL查询:SQL - 根据结果数量添加结果页码?

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

.... 

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

我想知道我是怎么写的东西,通过返回$页面循环的次数,然后回声若干回屏幕。 IE浏览器。第1页,第2页,第3页 - 基于$页面。

+2

它通常被称为“分页”,并有对如何做到这一点许多问题 - 看到更新后的标签信息。 – 2011-02-25 17:26:17

回答

2

我将假设搜索PHP页面是通过GET参数驱动的,如page,比如a.php?page=5或其他东西。

在这种情况下,尝试这种东西:

$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分页程序:http://framework.zend.com/manual/en/zend.paginator.html