php分页教程如下:
- <?php
- echo "php点点通原创php教程";
- //连接数据库
- $con = mysql_connect("localhost","root","");
- mysql_select_db("xueshengchu",$con);
- mysql_query("set names utf8");
-
- $pageSize = 5; //每页显示数据条数
-
- $result = mysql_query("select * from stu_msg");
- $totalNum = mysql_num_rows($result); //数据总条数
-
- $totalPageCount = intval($totalNum/$pageSize); //总页数
-
- //判断当前页是哪一页
- $nowPage = isset($_GET['page']) intval($_GET['page']) : 1;
- //上一页
- $prev = ($nowPage-1 <= 0) 1 : $nowPage-1;
- //下一页
- $next = ($nowPage+1 >= $totalPageCount) $totalPageCount : $nowPage+1;
-
- //偏移量
- $offset = ($nowPage-1)*$pageSize;
-
- /*ok,这就可以取数据啦,其实只要你明白sql语句就知道了分页原理
- * select * from table limit $offset,$size分页执行语句
- */
- $sql = "select * from stu_msg limit $offset,$pageSize";
- $result = mysql_query($sql,$con);
- while($arr = mysql_fetch_array($result)){
- echo $arr['mid'].$arr['content']."<br />";
- }
- echo "<a href=\"".$_SERVER['PHP_SELF']."?page=1\">首页</a>";
- echo "<a href=\"".$_SERVER['PHP_SELF']."?page=".$prev."\">上一页</a>";
- echo "<a href=\"".$_SERVER['PHP_SELF']."?page=".$next."\">下一页</a>";
- echo "<a href=\"".$_SERVER['PHP_SELF']."?page=".$totalPageCount."\">尾页</a>";
- ?>
以上php实例运行的结果如下: 上面php代码已经注释的很清楚,相信出手也会明白!下面还是对php教程做下简单的分析:
1.全局变量$_SERVER['PHP_SELF']是获取脚本变量的绝对路径,可以打印出看看就清楚了。 2.分页的本质是将数据库的的数据一段一段的显示出来,比如上面的php实例中: 取出前5条(第一页):select * from table limit 0,5 取出第5到1第10条(第二页):select * from table limit 5,5 这样得出了偏移量的公式:$offset = ($nowPage-1)*$pageSize; 3.intval() 函数是获取变量的整数值 ~php分页是不是so easy!~
|