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
PHP 数组实例说明
Aug 18 PHP
简单的cookie计数器实现源码
Jun 07 PHP
Memcached常用命令以及使用说明详解
Jun 27 PHP
PHP生成图片验证码、点击切换实例
Jun 25 PHP
php集成环境xampp中apache无法启动问题解决方案
Nov 18 PHP
推荐十款免费 WordPress 插件
Mar 24 PHP
PHP类相关知识点实例总结
Sep 28 PHP
php实现等比例不失真缩放上传图片的方法
Nov 14 PHP
PHP实现简单的模板引擎功能示例
Sep 02 PHP
php提取微信账单的有效信息
Oct 01 PHP
Laravel框架Request、Response及Session操作示例
May 06 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 PDO中文乱码解决办法
2009/07/20 PHP
Yii2 GridView实现列表页直接修改数据的方法
2016/05/16 PHP
javascript读取RSS数据
2007/01/20 Javascript
响应鼠标变换表格背景或者颜色的代码
2009/03/30 Javascript
JQuery Tab选项卡效果代码改进版
2010/04/01 Javascript
Jquery右下角抖动、浮动 实例代码(兼容ie6、FF)
2013/08/15 Javascript
JS实现带有抽屉效果的产品类网站多级导航菜单代码
2015/09/15 Javascript
JQuery fileupload插件实现文件上传功能
2016/03/18 Javascript
纯JS代码实现气泡效果
2016/05/04 Javascript
jQuery EasyUI学习教程之datagrid点击列表头排序
2016/07/09 Javascript
JS去掉字符串前后空格、阻止表单提交的实现代码
2017/06/08 Javascript
详解如何创建并发布一个 vue 组件
2018/11/08 Javascript
Vue.js样式动态绑定实现小结
2019/01/24 Javascript
微信小程序bindtap事件与冒泡阻止详解
2019/08/08 Javascript
Vue项目中Api的组织和返回数据处理的操作
2019/11/04 Javascript
python爬虫常用的模块分析
2014/08/29 Python
深入理解NumPy简明教程---数组3(组合)
2016/12/17 Python
python实现指定文件夹下的指定文件移动到指定位置
2018/09/17 Python
PyQt5 对图片进行缩放的实例
2019/06/18 Python
python单例模式的多种实现方法
2019/07/26 Python
Python 实现的 Google 批量翻译功能
2019/08/26 Python
Python 支持向量机分类器的实现
2020/01/15 Python
Python趣味实例,实现一个简单的抽奖刮刮卡
2020/07/18 Python
接口可以包含哪些成员
2012/09/30 面试题
英语专业学子个人的自我评价
2013/10/02 职场文书
初中语文教学反思
2014/02/02 职场文书
校园公益广告语
2014/03/13 职场文书
党员学习群众路线教育实践活动对照检查材料
2014/09/23 职场文书
违反单位工作制度检讨书
2014/10/25 职场文书
2015年社区科普工作总结
2015/05/13 职场文书
2016年植树节红领巾广播稿
2015/12/17 职场文书
大学军训通讯稿(2016最新版)
2015/12/21 职场文书
Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤
2021/03/29 Python
nginx location中多个if里面proxy_pass的方法
2021/03/31 Servers
python 调用js的四种方式
2021/04/11 Python
Python 数据科学 Matplotlib图库详解
2021/07/07 Python