当前位置:首页 > PHP教程 > php分页 > 列表

php分页函数完整实例代码

发布:smiling 来源: PHP粉丝网  添加日期:2021-04-12 11:26:43 浏览: 评论:0 

这篇文章主要介绍了php分页函数完整实例代码,采用较为详尽的注释说明了PHP分页的方法及原理,需要的朋友可以参考下。

本文分享一例php分页函数完整实例代码,使用此函数实现分页效果很不错。分享给大家供大家参考。

具体功能代码如下:

  1. <?php 
  2. /* 
  3. * Created on 2011-07-28 
  4. * 使用方法: 
  5. require_once('mypage.php'); 
  6. $result=mysql_query("select * from mytable", $myconn); 
  7. $total=mysql_num_rows($result);  //取得信息总数 
  8. pageDivide($total,10);   //调用分页函数 
  9.  
  10. //数据库操作 
  11. $result=mysql_query("select * from mytable limit $sqlfirst,$shownu", $myconn); 
  12. while($row=mysql_fetch_array($result)){ 
  13. //...您的操作 
  14. } 
  15. echo $pagecon;  //输出分页导航内容 
  16. */ 
  17.  
  18. if(!function_exists("pageDivide")){ 
  19. #$total   信息总数 
  20. #$shownu  显示数量,默认20 
  21. #$url   本页链接 
  22. function pageDivide($total,$shownu=20,$url=''){ 
  23.  
  24. #$page 当前页码 
  25. #$sqlfirst mysql数据库起始项 
  26. #$pagecon  分页导航内容 
  27. global $page,$sqlfirst,$pagecon,$_SERVER
  28. $GLOBALS["shownu"]=$shownu
  29.  
  30. if(isset($_GET['page'])){ 
  31. $page=$_GET['page']; 
  32. }else $page=1; 
  33.  
  34. #如果$url使用默认,即空值,则赋值为本页URL 
  35. if(!$url){ $url=$_SERVER["REQUEST_URI"];} 
  36.  
  37. #URL分析 
  38. $parse_url=parse_url($url); 
  39. @$url_query=$parse_url["query"];  //取出在问号?之后内容 
  40. if($url_query){ 
  41. $url_query=preg_replace("/(&?)(page=$page)/","",$url_query); 
  42. $url = str_replace($parse_url["query"],$url_query,$url); 
  43. if($url_query){ 
  44. $url .= "&page"
  45. }else $url .= "page"
  46. }else $url .= "?page"
  47.  
  48. #页码计算 
  49. $lastpg=ceil($total/$shownu);  //最后页,总页数 
  50. $page=min($lastpg,$page); 
  51. $prepg=$page-1; //上一页 
  52. $nextpg=($page==$lastpg ? 0 : $page+1); //下一页 
  53. $sqlfirst=($page-1)*$shownu
  54.  
  55. #开始分页导航内容 
  56. $pagecon = "显示第 ".($total?($sqlfirst+1):0)."-".min($sqlfirst+$shownu,$total)." 条记录,共 <B>$total</B> 条记录"
  57. if($lastpg<=1) return false;  //如果只有一页则跳出 
  58.  
  59. if($page!=1) $pagecon .=" <a href='$url=1'>首页</a> "else $pagecon .=" 首页 "
  60. if($prepg$pagecon .=" <a href='$url=$prepg'>前页</a> "else $pagecon .=" 前页 "
  61. if($nextpg$pagecon .=" <a href='$url=$nextpg'>后页</a> "else $pagecon .=" 后页 "
  62. if($page!=$lastpg$pagecon.=" <a href='$url=$lastpg'>尾页</a> "else $pagecon .=" 尾页 "
  63.  
  64. #下拉跳转列表,循环列出所有页码 
  65. $pagecon .=" 到第 <select name='topage' size='1' onchange='window.location=\"$url=\"+this.value'>\n"
  66. for($i=1;$i<=$lastpg;$i++){ 
  67. if($i==$page$pagecon .="<option value='$i' selected>$i</option>\n"
  68. else $pagecon .="<option value='$i'>$i</option>\n"
  69. //www.phpfensi.com 
  70. $pagecon .="</select> 页,共 $lastpg 页"
  71.  
  72. }else die('pageDivide()同名函数已经存在!'); 
  73. ?> 

相信本文所述对大家PHP程序设计的学习有一定的借鉴价值。

Tags: php分页函数

分享到: