您的位置:首页 > 编程语言 > PHP开发

简单地解释PHP分页原理及我的代码

2017-08-09 17:36 501 查看
分页功能有两个比较核心的技术:

1.分页功能中关于Mysql中limit的用法:

limit 后接两个参数,一个是偏移量,一个是条数。!!!注意:初始记录行的偏移量是0而不是1

2.关于偏移量的计算:这是整个分页中较难的一点

下面开始分页功能
$page=$_GET['p'];//通过GET函数获取URL上的p值,需手动打入。

$PageSize=8;//设置每页显示的最多条数为8条。

$sql="select * from 表名 limit".($page-1) * $PageSize. ",$PageSize";

$result=mysql_query($sql);//mysql_query()函数执行一条mysql查询

if($result)

{

while($row=mysql_fetch_array($result))//mysql_fetch_array函数从结果集中取得一行作为关联数组或数字数组

}

<?php

mysql_free_result($result);//释放结果,即释放内存

$to_sql="select COUNT(*) from 表名";// COUNT(*)函数返回表中的记录数

$to_result=mysql_fetch_array(mysql_query($to_sql));

$to=$to_result[0];//获取行数

$to_pages=ceil($to/$PageSize);//ceil函数返回向上舍入为最接近的整数。$to_pages为总页数

echo"<div class='banner'>";

$page_banner="";

//开始计算偏移量

if($page>=1){

$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=1'>首页|</a>" ;

//$_SERVER['PHP_SERVER']为预定义服务变量,为当前 正在执行的脚本的文件名

$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($page-1)."'>上一页|</a>";

}

if($page<$to_pages){

$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($page+1)."'>下一页|</a>";

$page_banner.="<a href='".$SERVER['PHP_SELF']."?p="($to_pages)."'>尾页</a>";

}

$page_banner.="共{$to_pages}页";

echo $page_banner;

echo "</div>";

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息