写了一个比较容易理解的php分页程序
最近在做php+ajax的留言本 可是进程非常缓慢
——————————–没有足够时间的分割线——————————–
趁着周末继续完善一下留言本的功能 解决了中文乱码问题之后
可是于是乎就该加分页程序了
网上搜了一大把 大多数思路都很固定 经常用记录数量来做分页的界限
比如你点下一页的时候 他会自动跳到下XX条记录 一般都用+或-记录数量来执行
但是我想了一个好办法 就是用page来做分页的界限 每次数据库只查询符合当前页面的记录
真的是做到了“分页”的概念
下面就和大家来分享一下我的源程序
- include "conn.php";//连接mysql数据库
- $query="select count(*) from phpgbook;";//计算数据库中留言的数量
- $result=mysql_query($query) or die ("<div><div>Query failed!</div></div>");
- $recordcount=mysql_result($result,0);
- $pagesize=5;//设定每页显示的留言数
- $pagecount=ceil($recordcount/$pagesize);//计算页面数
- $page=1;
- if(isset($_REQUEST["page"])) $page=$_REQUEST["page"];//获取页面变量
- {
- if($page>$pagecount) $page=$pagecount;
- if($page}
- $query="select * from phpgbook order by msgid desc limit ".$pagesize*($page-1).",5;";//从数据库中读取留言内容
- $result=mysql_query($query);
- while($row=mysql_fetch_array($result))
- {
- $msg="<div><div>".$row["nickname"]."</div>";
- $msg.="<div><img src="\"".$row["face"]."\"">";
- $msg.="E-mail: ".$row["email"]."<br />";
- $msg.="QQ/MSN: ".$row["im"]."<br />";
- $msg.="IP: ".$row["ip"]."<br />";
- $msg.="Time: ".$row["time"]."<br />";
- $msg.="Comment:<br /> ".$row["comment"]."<br />";
- if($row["reply"]!="")
- {$msg.="Reply:<br /> ".$row["reply"]."<br />";}
- $msg.="</div></div>";
- echo $msg;
- }
- $pagemark="";
- for($j=1;$j{
- if($j==$page)
- {
- $pagemark.="".$j."";
- continue;
- }
- $pagemark.="<a href="\"javascript:\"">".$j."</a>";//计算分页标签
- }
- $pageinfo="Current Total:".$pagecount."Pages<br />";//计算页面信息
- $page_panel="<div><div>".$pageinfo.$pagemark."</div></div>";//输出分页标签和页面信息
- echo $page_panel;
- ?>
- ?>
