php分页函数示例代码分享


Posted in PHP onFebruary 24, 2014

分享一例php分页函数代码,用此函数实现分页代码很不错。

代码,php分页函数。

<?php
/*
* Created on 2011-07-28
* Author : LKK , http://lianq.net
* 使用方法:
require_once('mypage.php');
$result=mysql_query("select * from mytable", $myconn);
$total=mysql_num_rows($result);    //取得信息总数
pageDivide($total,10);     //调用分页函数
//数据库操作
$result=mysql_query("select * from mytable limit $sqlfirst,$shownu", $myconn);
while($row=mysql_fetch_array($result)){
...您的操作
}
echo $pagecon;    //输出分页导航内容
*/
if(!function_exists("pageDivide")){
#$total     信息总数
#$shownu    显示数量,默认20
#$url     本页链接
function pageDivide($total,$shownu=20,$url=''){
#$page 当前页码
#$sqlfirst mysql数据库起始项
#$pagecon    分页导航内容
global $page,$sqlfirst,$pagecon,$_SERVER;
$GLOBALS["shownu"]=$shownu;
if(isset($_GET['page'])){
$page=$_GET['page'];
}else $page=1;
#如果$url使用默认,即空值,则赋值为本页URL
if(!$url){ $url=$_SERVER["REQUEST_URI"];}
#URL分析
$parse_url=parse_url($url);
@$url_query=$parse_url["query"];    //取出在问号?之后内容
if($url_query){
$url_query=preg_replace("/(&?)(page=$page)/","",$url_query);
$url = str_replace($parse_url["query"],$url_query,$url);
if($url_query){
$url .= "&page";
}else $url .= "page";
}else $url .= "?page";
#页码计算
$lastpg=ceil($total/$shownu);    //最后页,总页数
$page=min($lastpg,$page);
$prepg=$page-1; //上一页
$nextpg=($page==$lastpg ? 0 : $page+1); //下一页
$sqlfirst=($page-1)*$shownu;
#开始分页导航内容
$pagecon = "显示第 ".($total?($sqlfirst+1):0)."-".min($sqlfirst+$shownu,$total)." 条记录,共 <B>$total</B> 条记录";
if($lastpg<=1) return false;    //如果只有一页则跳出
if($page!=1) $pagecon .=" <a href='$url=1'>首页</a> "; else $pagecon .=" 首页 ";
if($prepg) $pagecon .=" <a href='$url=$prepg'>前页</a> "; else $pagecon .=" 前页 ";
if($nextpg) $pagecon .=" <a href='$url=$nextpg'>后页</a> "; else $pagecon .=" 后页 ";
if($page!=$lastpg) $pagecon.=" <a href='$url=$lastpg'>尾页</a> "; else $pagecon .=" 尾页 ";
#下拉跳转列表,循环列出所有页码
$pagecon .=" 到第 <select name='topage' size='1' onchange='window.location=\"$url=\"+this.value'>\n";
for($i=1;$i<=$lastpg;$i++){
if($i==$page) $pagecon .="<option value='$i' selected>$i</option>\n";
else $pagecon .="<option value='$i'>$i</option>\n";
}
$pagecon .="</select> 页,共 $lastpg 页";
}
}else die('pageDivide()同名函数已经存在!');
?>
PHP 相关文章推荐
php 采集书并合成txt格式的实现代码
Mar 01 PHP
深入php多态的实现详解
Jun 09 PHP
浅析PHP中Collection 类的设计
Jun 21 PHP
PHP设计模式之观察者模式(Observer)详细介绍和代码实例
Apr 08 PHP
php实现的IMEI限制的短信验证码发送类
May 05 PHP
PHP通过API获取手机号码归属地
May 28 PHP
PHP简单数据库操作类实例【支持增删改查及链式操作】
Oct 10 PHP
PHP完全二叉树定义与实现方法示例
Oct 09 PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 PHP
详解PHP的抽象类和抽象方法以及接口总结
Mar 15 PHP
laravel 框架执行流程与原理简单分析
Feb 01 PHP
php多进程并发编程防止出现僵尸进程的方法分析
Feb 28 PHP
php对数组排序代码分享
Feb 24 #PHP
php判断ip黑名单程序代码实例
Feb 24 #PHP
thinkphp的c方法使用示例
Feb 24 #PHP
php根据操作系统转换文件名大小写的方法
Feb 24 #PHP
PHP获取本周第一天和最后一天示例代码
Feb 24 #PHP
thinkphp控制器调度使用示例
Feb 24 #PHP
thinkphp路由规则使用示例详解和伪静态功能实现(apache重写)
Feb 24 #PHP
You might like
生成卡号php代码
2008/04/09 PHP
PHP5.5在windows安装使用memcached服务端的方法
2014/04/16 PHP
php内嵌函数用法实例
2015/03/20 PHP
PHP实现Session入库/存入redis的方法
2017/05/04 PHP
浅谈Laravel中的一个后期静态绑定
2017/08/11 PHP
JS解析XML的实现代码
2009/11/12 Javascript
基于jQuery的仿flash的广告轮播
2010/11/05 Javascript
jquery处理json对象
2014/11/03 Javascript
jQuery中focus事件用法实例
2014/12/26 Javascript
js实现的四级左侧网站分类菜单实例
2015/05/06 Javascript
jQuery实现新消息在网页标题闪烁提示
2015/06/23 Javascript
JavaScript对象属性检查、增加、删除、访问操作实例
2015/07/08 Javascript
推荐阅读的js快速判断IE浏览器(兼容IE10与IE11)
2015/12/13 Javascript
webpack2.0配置postcss-loader的方法
2017/08/17 Javascript
解决vue中无法动态修改jqgrid组件 url地址的问题
2018/03/01 Javascript
React学习笔记之高阶组件应用
2018/06/02 Javascript
element-ui上传一张图片后隐藏上传按钮功能
2019/05/22 Javascript
JS回调函数原理与用法详解【附PHP回调函数】
2019/07/20 Javascript
关于layui的动态图标不显示的解决方法
2019/09/04 Javascript
js正则匹配多个全部数据问题
2019/12/20 Javascript
html-webpack-plugin修改页面的title的方法
2020/06/18 Javascript
python动态加载包的方法小结
2016/04/18 Python
python实现Floyd算法
2018/01/03 Python
Python 实现一个手机号码获取妹子名字的功能
2019/09/25 Python
澳大利亚家具和家居用品在线商店:Interiors Online
2018/03/05 全球购物
Manduka官网:瑜伽垫、瑜伽毛巾和服装
2018/07/02 全球购物
eDreams德国:南欧领先的在线旅游公司
2020/12/07 全球购物
物业保安主管岗位职责
2013/12/25 职场文书
个人自我鉴定总结
2014/03/25 职场文书
我的理想演讲稿
2014/04/30 职场文书
经济管理自荐书
2014/06/09 职场文书
病假证明模板
2015/06/19 职场文书
tensorboard 可视化之localhost:6006不显示的解决方案
2021/05/22 Python
ORACLE数据库应用开发的三十个注意事项
2021/06/07 Oracle
浅析NIO系列之TCP
2021/06/15 Java/Android
Unity连接MySQL并读取表格数据的实现代码
2021/06/20 MySQL