首页  >  文章  >  后端开发  >  一个PHP分页函数

一个PHP分页函数

WBOY
WBOY原创
2016-07-25 08:44:27874浏览

PHP分页代码调用: $start=show_page($query,$page,$link,$offset);其中: $start为起始记录 $query为全记录检索SQL语句 $page为当前页码 $link为传递的页面参数 $offset为每页显示记录数

  1. //======function.php=====
  2. //======分页函数==========
  3. function show_page($query,$page,$link,$offset)
  4. {
  5. $db = new mysql();
  6. $result = $db->query($query);
  7. $Page_size = $offset; //取得每页显示的最大订单数
  8. $count = $db->affected_rows($result); //总订单数
  9. $page_count = ceil($count/$Page_size); //计算得出总页数
  10. $init=1;
  11. $page_len=7;
  12. $max_p=$page_count;
  13. $pages=$page_count;
  14. //判断当前页码
  15. $page=(empty($page)||$page $start=$Page_size*($page-1);
  16. //分页功能代码
  17. $page_len = ($page_len%2)?$page_len:$pagelen+1; //页码个数
  18. $pageoffset = ($page_len-1)/2; //页码个数左右偏移量
  19. $key="共 $count 条 ";
  20. $key.="$page/$pages "; //第几页,共几页
  21. if($page!=1){
  22. $key.="第一页 "; //第一页
  23. $key.="上一页"; //上一页
  24. }
  25. else
  26. {
  27. $key.="第一页 ";//第一页
  28. $key.="上一页"; //上一页
  29. }
  30. if($pages>$page_len)
  31. {
  32. //如果当前页小于等于左偏移
  33. if($page $init=1;
  34. $max_p = $page_len;
  35. }
  36. else //如果当前页大于左偏移
  37. {
  38. //如果当前页码右偏移超出最大分页数
  39. if($page+$pageoffset>=$pages+1){
  40. $init = $pages-$page_len+1;
  41. }
  42. else
  43. {
  44. //左右偏移都存在时的计算
  45. $init = $page-$pageoffset;
  46. $max_p = $page+$pageoffset;
  47. }
  48. }
  49. }
  50. for($i=$init;$i {
  51. if($i==$page){$key.=' ['.$i.']';}
  52. else {$key.=" ".$i."";}
  53. }
  54. if($page!=$pages)
  55. {
  56. $key.=" 下一页 ";//下一页
  57. $key.="最后一页"; //最后一页
  58. }
  59. else
  60. {
  61. $key.="下一页 "; //下一页
  62. $key.="最后一页"; //最后一页
  63. }
  64. echo "$key

    ";
  65. return $start;
  66. }
  67. ?>
复制代码

调用示例

[code]
分页, PHP


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn