php分页效果原理,只有懂原理,才如何改别人的源码
PHP+MYSQL分页原理
1、 sql语句中的limit用法 select * from table limit 开始位置(从0开始),操作数 select * from table limit 0,20 --取前20个数据 select * from table limit 10,20 ---取11条到30条数据
2、 学习分页的一种公式
(1) 分页原理
所谓的分页显示,也就是将数据库中的结果集,以一定的条数显示出来。
(2) 如何分段(以10条数据为单位)
前10条记录: select * from table limit 0,10
第11条到20条: select * from table limit 10,10
第21条到30条: select * from table limit 20,10
(3) 得到公式
(当前页数-1)*每页条数,每页条数 select * from table limit($Page-1)*$PageSize,$PageSize;
3、 实例代码 <?php //分页效果2 include("conn.php"); $server_url=$_SERVER["REQUEST_URI"]; //从浏览器得到URL $parse_url=parse_url($server_url); //将浏览器得到的URL转换为数组 $url=$parse_url["path"]; //得到url地址字符串 $pagesize=5; //设置分页数目 $sql1="select * from article"; $query1=mysql_query($sql1); $num=mysql_num_rows($query1); //得到查询的表的所有数据条数 $size=(int)($num/$pagesize)+1; //得到总页数 $pageindex=0; if(!empty($_GET["page"])) { $pageindex=$_GET["page"]; //取得页面索引 } $pageindex*=5; $sql2=select($pageindex); //得到分页查询的sql语句 echo $sql2; $query2=mysql_query($sql2); while ($data=mysql_fetch_array($query2)) { echo "标题:".$data["title"]."
".$data["date"]."
".$data["contents"]."
"; } ?> <?php function select($index) { $sqlselect="select * from article limit $index,5"; return $sqlselect; } ?>