分页程序实现的步骤大致如下:
1.设置煤业显示的记录数量
$PageSize = 4;
2.获取结果集中的记录总数
获取结果集中记录总数有两种方法。
第一种是通过mysql_num_rows()函数返回记录总数,并将其保存在$RecordCount变量中。代码如下
$RecordCount = mysql_num_rows($result);
第二种是通过Select语句中的count函数实现。代码如下
3.计算总页数
可以通过$RecordCount 和 $PageSize 两个变量的值计算得到总页数$PageCount,方法如下
$PageCount = ceil($RecordCount/$PageSize);
4.如何显示第N页的记录
虽然用$PageSize 可以控制每页显示的记录数,但是要显示哪页的记录呢?这可以在Select语句中使用limit字句限定显示记录的范围,方法如下
Select * from 表名 limit 起始位置,显示记录数量
注意:limit字句中记录序号从0开始,第一条记录的序号为0因此($Page-1)*$PageSize 就是表示前面n-1页的所有记录再加1 ,正好是第n页的第一条记录。
5.如何通过超链接转到要显示的分页
可以通过超链接传递参数的方法通知脚本程序要显示的页码。假定分页显示记录的页面是5-9.php,传递参数的链接如下:
http://localhost/php/5-9.php?page=2
参数page用来指定当前的页码,在5-9.php中,可以通过下面的语句读取参数page:
if(isset($_GET[‘page‘])) $Page = $_GET[‘page‘]; else $Page = 1;
但是用户根本就不会在URL上输出类似“?page = 2” 之类的参数来访问分页。为此,可以定义几个分页链接,供用户单击。
“第一页”链接的代码如下
echo "<a href = ‘?page = 1‘>第一页</a>";//跳转到当前页的第一页
“上一页”链接代码如下:
echo "<a href = ‘?page=".($Page-1)."‘>上一页</a>";
"下一页"链接代码如下:
echo "<a href = ‘?page=".($Page+1)."‘>下一页</a>";
"末页"链接代码如下:
echo "<a href = ‘?page=". $PageCount ."‘>末页</a>";
原文:http://www.cnblogs.com/xs-yqz/p/4940231.html