一个好用的分页函数

 更新时间:2006年11月16日 00:00:00   作者:  
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

复制代码 代码如下:

本人原创的代码,高手看来,也许流程笨拙点,但是很实用.看者要顶啊

    /*---------------------------------------------------------------//
  * 函数说明:分页函数 page($sql,$pagesize="30")
  * $sql 查询语句(除limit外,可带排序或者条件限制) 
  * 如 select * from stu where time between "1" and "30";
  * $pagesize 每页的显示条数
  * ## 可输出数组$arr的值,说明如下: 
  *    $arr["first"]    首页及地址
  *    $arr["page_pre"] 上一页及地址
  *    $arr["all"]      当第几页和总页数
  *    $arr["page_next"]下一页及地址
  *    $arr["last"]     末页及地址
  *    $arr["pagelist"] 页码列表及地址,显示当前页前后4页列表
  *    $arr["query"]    语句 $arr["query"] = mysql_query($sql)
  *    $arr["nums"]     记录总数
  *                                 2006.09.06 by Kevin QQ:84529890
//----------------------------------------------------------------*/
function page($sql,$pagesize="30"){

global $arr,$PHP_SELF;

$query = mysql_query($sql);
$num = mysql_num_rows($query);
$pagecount = ceil($num/$pagesize);
$page = $_GET["page"];
if(!$page) $page=1;
if($page>$pagecount) $page = $pagecount;

$offset = ($page-1)*$pagesize;
$sql.=" limit $offset , $pagesize";
$arr["query"] = mysql_query($sql);

if($page>1){
     $page_pre = $page-1;
  $page_url = $PHP_SELF . "?page=".$page_pre;
  $arr["page_pre"] = "<a href=\"".$page_url."\">上一页|</a>\n";
}
if($page<$pagecount){
     $page_next = $page+1;
  $page_url = $PHP_SELF . "?page=".$page_next;
  $arr["page_next"] = "|<a href=\"".$page_url."\">下一页</a>\n";
}

$arr["all"] = "<font color=\"#FF0000\">".$page ."</font>/". $pagecount . "页\n";
$arr["first"] = "<a href=\"".$PHP_SELF."?page=1\">首页</a>\n|";
$arr["last"]  = "|<a href=\"".$PHP_SELF."?page=".$pagecount."\">末页</a>\n";

$plfront="";
if($page<=5 && $page>=1){
     for($i=1;$i<=9;$i++){
      $plfront.= " <a href=\"".$PHP_SELF."?page=$i\">".$i."</a>";
   }
}elseif($page>5 && $page<$pagecount-5){
     for($i=$page-4;$i<$page+5;$i++){
      $plfront.= " <a href=\"".$PHP_SELF."?page=$i\">".$i."</a>";
   }
}else{
     for($i=$pagecount-8;$i<=$pagecount;$i++){
      $plfront.= " <a href=\"".$PHP_SELF."?page=$i\">".$i."</a>";
  }
}

$arr["pagelist"] = $plfront." ";
$arr["nums"] = $num;
   }

相关文章

  • php microtime获取浮点的时间戳

    php microtime获取浮点的时间戳

    看到别人的源码中用microtime(true),查了下手册,原来从PHP 5.0.0 开始,microtime增加了这个参数。
    2010-02-02
  • php版银联支付接口开发简明教程

    php版银联支付接口开发简明教程

    这篇文章主要介绍了php版银联支付接口开发的方法,结合实例形式分析了php银联支付接口开发的具体流程与相关操作技巧,需要的朋友可以参考下
    2016-10-10
  • 源码分析系列之json_encode()如何转化一个对象

    源码分析系列之json_encode()如何转化一个对象

    这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下
    2021-04-04
  • php实现遍历文件夹的方法汇总

    php实现遍历文件夹的方法汇总

    在一般的PHP面试中,有很多都会问及这样的一个问题:写一个能遍历指定文件夹下所有文件和文件夹的方法。下面我们就来汇总下,希望对大家能够有所帮助
    2017-03-03
  • PHP实现的多维数组排序算法分析

    PHP实现的多维数组排序算法分析

    这篇文章主要介绍了PHP实现的多维数组排序算法,结合实例形式对比分析了php针对多维数组及带有键名的多维数组进行排序相关操作技巧与注意事项,需要的朋友可以参考下
    2018-02-02
  • PHP获取指定日期是星期几的实现方法

    PHP获取指定日期是星期几的实现方法

    这篇文章主要介绍了PHP获取指定日期是星期几的实现方法,涉及php针对日期的读取、判断与字符串、数组相关运算操作技巧,需要的朋友可以参考下
    2016-11-11
  • php 安全过滤函数代码

    php 安全过滤函数代码

    php 安全过滤函数代码,防止用户恶意输入内容。
    2011-05-05
  • php删除左端与右端空格的方法

    php删除左端与右端空格的方法

    这篇文章主要介绍了php删除左端与右端空格的方法,涉及ltrim()函数、rtrim()函数、trim()函数及正则替换的应用技巧,非常具有实用价值,需要的朋友可以参考下
    2014-11-11
  • PHP导出Excel实例讲解

    PHP导出Excel实例讲解

    这篇文章主要为大家介绍了PHP导出Excel的实例,
    2016-01-01
  • 详解WordPress开发中wp_title()函数的用法

    详解WordPress开发中wp_title()函数的用法

    这篇文章主要介绍了WordPress开发中wp_title()函数的用法,wp_title可以用来显示文章标题和分类名称等,需要的朋友可以参考下
    2016-01-01

最新评论

?


http://www.vxiaotou.com