一个好用的分页函数


Posted in PHP onNovember 16, 2006
本人原创的代码,高手看来,也许流程笨拙点,但是很实用.看者要顶啊     /*---------------------------------------------------------------// 
  * 函数说明:分页函数 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 相关文章推荐
PHP设计聊天室步步通
Oct 09 PHP
excellent!――ASCII Art(由目标图象生成ascii)
Feb 20 PHP
将文件夹压缩成zip文件的php代码
Dec 14 PHP
php学习之 认清变量的作用范围
Jan 26 PHP
比较好用的PHP防注入漏洞过滤函数代码
Apr 11 PHP
页面乱码问题的根源及其分析
Aug 09 PHP
php多重接口的实现方法
Jun 20 PHP
超详细的php用户注册页面填写信息完整实例(附源码)
Nov 17 PHP
php parse_str() 函数的定义和用法
May 23 PHP
PHP打印输出函数汇总
Aug 28 PHP
浅谈thinkphp5 instance 的简单实现
Jul 30 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
Apr 02 PHP
第十五节--Zend引擎的发展
Nov 16 #PHP
第十四节--命名空间
Nov 16 #PHP
第十三节--对象串行化
Nov 16 #PHP
第十二节--类的自动加载
Nov 16 #PHP
第十一节--重载
Nov 16 #PHP
第十节--抽象方法和抽象类
Nov 16 #PHP
第九节--绑定
Nov 16 #PHP
You might like
PHP 字符串编码截取函数(兼容utf-8和gb2312)
2009/05/02 PHP
php面向对象全攻略 (九)访问类型
2009/09/30 PHP
网页游戏开发入门教程三(简单程序应用)
2009/11/02 PHP
PHP利用str_replace防注入的方法
2013/11/10 PHP
php实现Linux服务器木马排查及加固功能
2014/12/29 PHP
php随机显示指定文件夹下图片的方法
2015/07/13 PHP
微信公众号开发之通过接口删除菜单
2017/02/20 PHP
PHP如何防止用户重复提交表单
2020/12/09 PHP
SyntaxHighlighter语法高亮插件使用说明
2011/08/14 Javascript
jQuery表单验证插件formValidator(改进版)
2012/02/03 Javascript
jquery实现checkbox 全选/全不选的通用写法
2014/02/22 Javascript
window resize和scroll事件的基本优化思路
2014/04/29 Javascript
node.js中的events.emitter.once方法使用说明
2014/12/10 Javascript
JS实现从表格中动态删除指定行的方法
2015/03/31 Javascript
Javascript动态创建表格及删除行列的方法
2015/05/15 Javascript
深入理解jQuery事件绑定
2016/06/02 Javascript
Javascript获取图片原始宽度和高度的方法详解
2016/09/20 Javascript
JS实现京东首页之页面顶部、Logo和搜索框功能
2017/01/12 Javascript
从0到1搭建Element的后台框架的方法步骤
2019/04/10 Javascript
vue路由 遍历生成复数router-link的例子
2019/10/30 Javascript
Python 使用 attrs 和 cattrs 实现面向对象编程的实践
2019/06/12 Python
pytorch中的自定义反向传播,求导实例
2020/01/06 Python
pycharm安装及如何导入numpy
2020/04/03 Python
python实现将两个文件夹合并至另一个文件夹(制作数据集)
2020/04/03 Python
numpy 矩阵形状调整:拉伸、变成一位数组的实例
2020/06/18 Python
Django解决frame拒绝问题的方法
2020/12/18 Python
html5 乒乓球(碰撞检测)实例二
2013/07/25 HTML / CSS
canvas进阶之贝塞尔公式推导与物体跟随复杂曲线的轨迹运动
2018/01/10 HTML / CSS
销售高级职员求职信
2013/10/29 职场文书
客服工作职责
2013/12/11 职场文书
公共艺术专业自荐信
2014/09/01 职场文书
村党建工作汇报材料
2014/11/02 职场文书
2014年小学班主任工作总结
2014/11/08 职场文书
学习师德师风的心得体会(2篇)
2019/10/08 职场文书
关于MySQL中的 like操作符详情
2021/11/17 MySQL
mysql sum(if())和count(if())的用法说明
2022/01/18 MySQL