php分页函数完整实例代码


Posted in PHP onSeptember 22, 2014

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

具体功能代码如下:

<?php
/*
* Created on 2011-07-28
* 使用方法:
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 相关文章推荐
动态网站web开发 PHP、ASP还是ASP.NET
Oct 09 PHP
弄了个检测传输的参数是否为数字的Function
Dec 06 PHP
Windows IIS PHP 5.2 安装与配置方法
Jun 08 PHP
php中curl使用指南
Feb 05 PHP
php实现过滤UBB代码的类
Mar 12 PHP
PHP中Closure类的使用方法及详解
Oct 09 PHP
php 数组随机取值的简单实例
May 23 PHP
thinkPHP订单数字提醒功能的实现方法
Dec 01 PHP
mongodb和php的用法详解
Mar 25 PHP
PHP7实现和CryptoJS的AES加密方式互通示例【AES-128-ECB加密】
Jun 08 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
Nov 23 PHP
php7中停止php-fpm服务的方法详解
May 09 PHP
php中file_get_content 和curl以及fopen 效率分析
Sep 19 #PHP
PHP return语句另类用法不止是在函数中
Sep 17 #PHP
php使用$_POST或$_SESSION[]向js函数传参
Sep 16 #PHP
PHP正则表达式替换站点关键字链接后空白的解决方法
Sep 16 #PHP
一个php生成16位随机数的代码(两种方法)
Sep 16 #PHP
php数组中删除元素之重新索引的方法
Sep 16 #PHP
异步加载技术实现当滚动条到最底部的瀑布流效果
Sep 16 #PHP
You might like
php采用curl模仿登录人人网发布动态的方法
2014/11/07 PHP
ThinkPHP3.2.3数据库设置新特性
2015/03/05 PHP
PHP微信公众号开发之微信红包实现方法分析
2017/07/14 PHP
javascript应用:Iframe自适应其加载的内容高度
2007/04/10 Javascript
Jquery 获取对象的几种方式介绍
2014/01/17 Javascript
JS获取浏览器语言动态加载JS文件示例代码
2014/10/31 Javascript
jQuery实现根据类型自动显示和隐藏表单
2015/03/18 Javascript
JavaScript代码判断点击第几个按钮
2015/12/13 Javascript
Javascript 函数的四种调用模式
2016/11/05 Javascript
JS实现类似51job上的地区选择效果示例
2016/11/17 Javascript
JS简单实现移动端日历功能示例
2016/12/28 Javascript
Mac下使用charles遇到的问题以及解决办法
2017/01/10 Javascript
详解Vue路由钩子及应用场景(小结)
2017/11/07 Javascript
jQuery图片加载失败替换默认图片方法汇总
2017/11/29 jQuery
JS实现快递单打印功能【推荐】
2018/06/21 Javascript
javascript判断一个变量是数组还是对象
2019/04/10 Javascript
JavaScript中reduce()的5个基本用法示例
2020/07/19 Javascript
python实现去除下载电影和电视剧文件名中的多余字符的方法
2014/09/23 Python
Python读取mp3中ID3信息的方法
2015/03/05 Python
详细探究Python中的字典容器
2015/04/14 Python
python实现图像识别功能
2018/01/29 Python
python中使用PIL制作并验证图片验证码
2018/03/15 Python
Numpy掩码式数组详解
2018/04/17 Python
python实现在图片上画特定大小角度矩形框
2018/10/24 Python
Django数据库类库MySQLdb使用详解
2019/04/28 Python
python设置代理和添加镜像源的方法
2020/02/14 Python
Python生成六万个随机,唯一的8位数字和数字组成的随机字符串实例
2020/03/03 Python
Python 解决相对路径问题:&quot;No such file or directory&quot;
2020/06/05 Python
HTML5制作酷炫音频播放器插件图文教程
2014/12/30 HTML / CSS
秋天的图画教学反思
2014/05/01 职场文书
质量承诺书怎么写
2014/05/24 职场文书
医药销售自荐书
2014/05/29 职场文书
自我查摆剖析材料
2014/10/11 职场文书
人力资源部岗位职责
2015/02/11 职场文书
施工安全保证书
2015/05/09 职场文书
Mysql中 unique列插入重复值该怎么解决呢
2021/05/26 MySQL