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 分页原理分析,大家可以看看
Dec 21 PHP
PHP中调用ASP.NET的WebService的代码
Apr 22 PHP
解析VS2010利用VS.PHP插件调试PHP的方法
Jul 19 PHP
Ajax+PHP快速上手及简单应用说明
Jul 24 PHP
PHP命名空间(namespace)的使用基础及示例
Aug 18 PHP
微信公众平台开发关注及取消关注事件的方法
Dec 23 PHP
php输出xml属性的方法
Mar 19 PHP
PHP中利用sleep函数实现定时执行功能实现代码
Aug 25 PHP
mac下多个php版本快速切换的方法
Oct 09 PHP
PHP获取日期对应星期、一周日期、星期开始与结束日期的方法
Jun 22 PHP
thinkPHP框架RBAC实现原理分析
Feb 01 PHP
PHP中的异常处理机制深入讲解
Nov 10 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
php数组随机排序实现方法
2015/06/13 PHP
php事务回滚简单实现方法示例
2017/03/28 PHP
laravel5.2表单验证,并显示错误信息的实例
2019/09/29 PHP
uploadify 3.0 详细使用说明
2012/06/18 Javascript
探寻Javascript执行效率问题
2014/11/12 Javascript
jQuery 实现侧边浮动导航菜单效果
2014/12/26 Javascript
JavaScript文档碎片操作实例分析
2015/12/12 Javascript
jquery获取复选框的值的简单实例
2016/05/26 Javascript
浅析JS获取url中的参数实例代码
2016/06/14 Javascript
Angular 4依赖注入学习教程之InjectToken的使用(八)
2017/06/04 Javascript
学习使用ExpressJS 4.0中的新Router的用法
2018/11/06 Javascript
layer.alert自定义关闭回调事件的方法
2019/09/27 Javascript
浅谈微信小程序列表埋点曝光指南
2019/10/15 Javascript
JS工厂模式开发实践案例分析
2019/10/17 Javascript
vue+Element-ui实现登录注册表单
2020/11/17 Javascript
在Django的form中使用CSS进行设计的方法
2015/07/18 Python
Python安装Numpy和matplotlib的方法(推荐)
2017/11/02 Python
python计算两个地址之间的距离方法
2018/06/09 Python
Python2和Python3之间的str处理方式导致乱码的讲解
2019/01/03 Python
python tkinter窗口最大化的实现
2019/07/15 Python
Python 操作 ElasticSearch的完整代码
2019/08/04 Python
HTML5应用之文件上传
2016/12/30 HTML / CSS
HTML5自定义元素播放焦点图动画的实现
2019/09/25 HTML / CSS
WoolOvers爱尔兰:羊绒、羊毛和棉针织品
2017/01/04 全球购物
Square Off美国/加拿大:世界上最聪明的国际象棋棋盘
2018/12/06 全球购物
职称自我鉴定
2013/10/15 职场文书
应届生求职信写作技巧
2013/10/24 职场文书
高一英语教学反思
2014/01/22 职场文书
建筑工程专业大学生求职信
2014/04/23 职场文书
大学新闻系自荐书
2014/05/31 职场文书
2014年军人思想汇报范文
2014/10/12 职场文书
初中生毕业评语
2014/12/29 职场文书
教师岗位说明书
2015/09/30 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers
Python编解码问题及文本文件处理方法详解
2021/06/20 Python
解决linux下redis数据库overcommit_memory问题
2022/02/24 Redis