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 相关文章推荐
在PHP的图形函数中显示汉字
Oct 09 PHP
学习discuz php 引入文件的方法DISCUZ_ROOT
Jun 21 PHP
php判断变量类型常用方法
Apr 24 PHP
destoon二次开发模板及调用语法汇总
Jun 21 PHP
php实现兼容2038年后Unix时间戳转换函数
Mar 18 PHP
php如何实现只替换一次或N次
Oct 29 PHP
ECshop 迁移到 PHP7版本时遇到的兼容性问题
Feb 15 PHP
thinkphp配置文件路径的实现方法
Aug 30 PHP
php函数mkdir实现递归创建层级目录
Oct 27 PHP
php版微信返回用户text输入的方法
Nov 14 PHP
php操作redis数据库常见方法实例总结
Feb 20 PHP
PHP中迭代器的简单实现及Yii框架中的迭代器实现方法示例
Apr 26 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连接MySQL的2种方法小结以及防止乱码
2014/03/11 PHP
简单了解WordPress开发中update_option()函数的用法
2016/01/11 PHP
用js判断用户浏览器是否是XP SP2的IE6
2007/03/08 Javascript
JMenuTab简单使用说明
2008/03/13 Javascript
javascript indexOf函数使用说明
2008/07/03 Javascript
js最简单的拖拽效果实现代码
2010/09/24 Javascript
jQuery EasyUI API 中文文档 - ComboGrid 组合表格
2011/10/13 Javascript
Javascript实现滑块滑动改变值的实现代码
2013/04/12 Javascript
jquery bind(click)传参让列表中每行绑定一个事件
2014/08/06 Javascript
jQuery实现的在线答题功能
2015/04/12 Javascript
javascript 常见功能汇总
2015/06/11 Javascript
详解原生JavaScript实现jQuery中AJAX处理的方法
2016/05/10 Javascript
javascript 四十条常用技巧大全
2016/09/09 Javascript
js中scrollTop()方法和scroll()方法用法示例
2016/10/03 Javascript
bootstrap基础知识学习笔记
2016/11/02 Javascript
Vue实现左右菜单联动实现代码
2018/08/12 Javascript
Vue项目中使用WebUploader实现文件上传的方法
2019/07/21 Javascript
vue实现路由不变的情况下,刷新页面操作示例
2020/02/02 Javascript
vue常用高阶函数及综合实例
2021/02/25 Vue.js
解析Python中while true的使用
2015/10/13 Python
Python正则抓取新闻标题和链接的方法示例
2017/04/24 Python
python 机器学习之支持向量机非线性回归SVR模型
2019/06/26 Python
python画图--输出指定像素点的颜色值方法
2019/07/03 Python
python中的列表与元组的使用
2019/08/08 Python
python json.dumps中文乱码问题解决
2020/04/01 Python
通过Python实现Payload分离免杀过程详解
2020/07/13 Python
python 元组和列表的区别
2020/12/30 Python
css3使用animation属性实现炫酷效果(推荐)
2020/02/04 HTML / CSS
HTML5 客户端数据库简易使用:IndexedDB
2019/12/19 HTML / CSS
毕业求职自荐信格式是什么
2013/11/19 职场文书
宿舍卫生检讨书
2014/01/16 职场文书
《落花生》教学反思
2014/02/25 职场文书
经典广告词大全
2014/03/14 职场文书
2014最新实习证明模板
2014/10/02 职场文书
2014年新农村建设工作总结
2014/12/01 职场文书
梳理总结Python开发中需要摒弃的18个坏习惯
2022/01/22 Python