PHP分页函数代码(简单实用型)


Posted in PHP onDecember 02, 2010

准备数据:

新建一个数据库 test
执行下面的语句(新建一个表 test :id、sex、name 三个字段)

CREATE TABLE `test` (
`id` INT( 4 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`sex` INT( 1 ) NOT NULL ,
`name` VARCHAR( 20 ) NOT NULL ) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_bin;

添加数据到 test 表,比如:
1 1 小强
2 0 小红
3 0 小丽
4 1 小兵
5 1 张三
6 0 李四
7 0 吴欣
PHP分页函数代码(简单实用型)
写PHP语句(index.php):

<?php 
// Page分页函数 
$page = $_GET["page"]; 
function Page($rows,$page_size){ 
global $page,$select_from,$select_limit,$pagenav; 
$page_count = ceil($rows/$page_size); 
if($page <= 1 || $page == '') $page = 1; 
if($page >= $page_count) $page = $page_count; 
$select_limit = $page_size; 
$select_from = ($page - 1) * $page_size.','; 
$pre_page = ($page == 1)? 1 : $page - 1; 
$next_page= ($page == $page_count)? $page_count : $page + 1 ; 
$pagenav .= "第 $page/$page_count 页 共 $rows 条记录 "; 
$pagenav .= "<a href='?page=1'>首页</a> "; 
$pagenav .= "<a href='?page=$pre_page'>前一页</a> "; 
$pagenav .= "<a href='?page=$next_page'>后一页</a> "; 
$pagenav .= "<a href='?page=$page_count'>末页</a>"; 
$pagenav.=" 跳到<select name='topage' size='1' onchange='window.location=\"?page=\"+this.value'>\n"; 
for($i=1;$i<=$page_count;$i++){ 
if($i==$page) $pagenav.="<option value='$i' selected>$i</option>\n"; 
else $pagenav.="<option value='$i'>$i</option>\n"; 
} 
} // Page分页函数 
// 使用示例 
if (!$conn= mysql_connect("localhost", "root" ,"root")) die('数据库选择失败!'); 
if (!mysql_select_db("test", $conn)) die('数据库选择失败!'); 
mysql_query('set names GBK'); 
// 用Page函数计算出 $select_from 从哪条记录开始检索、$pagenav 输出分页导航 
$rows = mysql_num_rows(mysql_query("select * from test")); 
Page($rows,2); 
$sql = "select * from test limit $select_from $select_limit"; 
$rst = mysql_query($sql); 
while ($row = mysql_fetch_array($rst)){ 
echo "$row[id] - $row[sex] - $row[name] <hr />"; 
} 
echo $pagenav; 
?>

浏览 index.php 页面,如图:
PHP分页函数代码(简单实用型)
该说byebye了,确实好用!

PHP简单分页函数
写了一个php简单的分页函数,数据库调用也写到里面了 ,用的人可以自行删减!

function getask(){ 
$sql = "select * from cms_ask where ansower <> ' ' "; 
//这里要改成方法 
$q_sq = mysql_query($sql); 
$count = mysql_num_rows($q_sq); 
$page_size = 8; 
$page_current = isset($GLOBALS['page']) ? intval($GLOBALS['page']) : 1; 
$page_count = ceil($count / $page_size); 
$page_start = $page_current - 4; 
$page_end = $page_current + 4; 
if ($page_current < 5) { 
$page_start = 1; 
$page_end = 5; 
} 
if ($page_current > $page_count - 4) { 
$page_start = $page_count - 8; 
$page_end = $page_count; 
} 
if ($page_start < 1) 
$page_start = 1; 
if ($page_end > $page_count) 
$page_end = $page_count; 
$pagebar = ""; 
$sql = "select * from cms_ask where ansower <> ' ' order by id desc limit " . (($page_current - 1) * $page_size) . "," . $page_size; 
$row=$this -> user -> getall("$sql"); 
foreach($row as $v){ 
echo '<dl><dt>问:'.$v["question"].'</dt><dd>答:'.$v["ansower"].date("Y-m-d H:i:s",$v["postTime"]).'</dd></dl>'; } 
$pagebar .= "<div class=\"page\">"; 
$pagebar .= "<ol>"; 
if ($page_current != 1) { 
$pagebar .= '<li><a href="javascript:get_comment(1)" class="sx">FIRST</a></li>'; 
} 
for ($i = $page_start; $i <= $page_end; $i++) { 
if ($i == $page_current) { 
$pagebar .= "<li><span class=\"sort\">" . $i . "</span></li>"; 
} else { 
$pagebar .= "<li><a href='javascript:get_comment(" . $i . ")'>" . $i . "</a></li>"; 
} 
} 
if ($page_current != $page_count) { 
$pagebar .= "<li><a href='javascript:get_comment(" . $page_count . ")' class='sx'>END</a></li>"; 
} 
$pagebar .= "</ol>"; 
$pagebar .= " </div>"; 
echo $pagebar; 
}
PHP 相关文章推荐
发挥语言的威力--融合PHP与ASP
Oct 09 PHP
服务器端解压缩zip的脚本
Dec 22 PHP
Smarty安装配置方法
Apr 10 PHP
用php获取本周,上周,本月,上月,本季度日期的代码
Aug 05 PHP
PHP 常用数组内部函数(Array Functions)介绍
Jun 05 PHP
php中读写文件与读写数据库的效率比较分享
Oct 19 PHP
PHP exif扩展方法开启详解
Jul 28 PHP
关于PHP中字符串与多进制转换函数的实例代码
Nov 03 PHP
PHP微信企业号开发之回调模式开启与用法示例
Nov 25 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
Dec 21 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
Dec 18 PHP
PHP设计模式之适配器模式(Adapter)原理与用法详解
Dec 12 PHP
php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)
Dec 02 #PHP
php小偷相关截取函数备忘
Nov 28 #PHP
php与paypal整合方法
Nov 28 #PHP
网站用php实现paypal整合方法
Nov 28 #PHP
paypal即时到账php实现代码
Nov 28 #PHP
解析PayPal支付接口的PHP开发方式
Nov 28 #PHP
php购物网站支付paypal使用方法
Nov 28 #PHP
You might like
解析关于wamp启动是80端口被占用的问题
2013/06/21 PHP
PHP防止注入攻击实例分析
2014/11/03 PHP
Thinkphp 框架扩展之类库扩展操作详解
2020/04/23 PHP
jquery JSON的解析方式
2009/07/25 Javascript
jquery固定底网站底部菜单效果
2013/08/13 Javascript
jquery easyui combobox模糊过滤(示例代码)
2013/11/30 Javascript
jquery实现华丽的可折角广告代码
2015/09/02 Javascript
JS截取与分割字符串常用技巧总结
2015/11/10 Javascript
AngularJS基础 ng-copy 指令实例代码
2016/08/01 Javascript
BootStrop前端框架入门教程详解
2016/12/25 Javascript
bootstrap响应式表格实例详解
2017/05/15 Javascript
Javarscript中模块(module)、加载(load)与捆绑(bundle)详解
2017/05/28 Javascript
Vue2.0利用vue-resource上传文件到七牛的实例代码
2017/07/28 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
2020/03/07 Javascript
微信小程序调用wx.getImageInfo遇到的坑解决
2020/05/31 Javascript
Vue 电商后台管理项目阶段性总结(推荐)
2020/08/22 Javascript
[01:57]2018年度DOTA2最具潜力解说-完美盛典
2018/12/16 DOTA
跟老齐学Python之数据类型总结
2014/09/24 Python
Python 实现链表实例代码
2017/04/07 Python
使用Django和Python创建Json response的方法
2018/03/26 Python
使用tensorflow实现线性svm
2018/09/07 Python
selenium + python 获取table数据的示例讲解
2018/10/13 Python
Python Django切换MySQL数据库实例详解
2019/07/16 Python
Python3进制之间的转换代码实例
2019/08/24 Python
Python使用Opencv实现图像特征检测与匹配的方法
2019/10/30 Python
Python调用C语言程序方法解析
2020/07/07 Python
css3实现波纹特效、H5实现动态波浪效果
2018/01/31 HTML / CSS
MyFrenchPharma中文网:最大的法国药妆平台
2016/10/07 全球购物
Bose法国官网:购买耳机、扬声器、家庭影院、专业音响
2017/12/21 全球购物
联想香港官方网站及网店:Lenovo香港
2018/04/13 全球购物
Blue Nile中国官网:全球知名的钻石和珠宝网络零售商
2020/03/22 全球购物
经济管理专业求职信
2014/06/09 职场文书
学生偷窃检讨书
2014/09/25 职场文书
2014感恩节演讲稿大全
2014/10/11 职场文书
OpenCV-Python模板匹配人眼的实例
2021/06/08 Python
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python