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实现MySQL更新记录的代码
Jun 07 PHP
计算php页面运行时间的函数介绍
Jul 01 PHP
PHP生成短网址的3种方法代码实例
Jul 08 PHP
php构造函数的继承方法
Feb 09 PHP
PHP实现操作redis的封装类完整实例
Nov 14 PHP
PHP异常处理定义与使用方法分析
Jul 25 PHP
PHP基于rabbitmq操作类的生产者和消费者功能示例
Jun 16 PHP
php微信开发之谷歌测距
Jun 14 PHP
php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法实例分析
Mar 02 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
Apr 14 PHP
PhpStorm2020.1 安装 debug - Postman 调用的详细教程
Aug 17 PHP
PHP中国际化的字符串排序和比较对象详解
Aug 23 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实现将MySQL重复ID二维数组重组为三维数组的方法
2016/08/01 PHP
PHP输出Excel PHPExcel的方法
2018/07/26 PHP
PHP5中使用mysqli的prepare操作数据库的介绍
2019/03/18 PHP
php+js实现的无刷新下载文件功能示例
2019/08/23 PHP
Cookie 注入是怎样产生的
2009/04/08 Javascript
动态加载图片路径 保持JavaScript控件的相对独立性
2010/09/03 Javascript
汉化英文版的Dreamweaver CS5并自动提示jquery
2010/11/25 Javascript
jquery设置元素的readonly和disabled的写法
2013/09/22 Javascript
JS小功能(setInterval实现图片效果显示时间)实例代码
2013/11/28 Javascript
使用insertAfter()方法在现有元素后添加一个新元素
2014/05/28 Javascript
jQuery循环滚动新闻列表示例代码
2014/06/17 Javascript
jQuery预加载图片常用方法
2015/06/15 Javascript
javascript禁止访客复制网页内容的实现代码
2015/08/05 Javascript
jQuery实现的数值范围range2dslider选取插件特效多款代码分享
2015/08/27 Javascript
jQuery Validate插件实现表单强大的验证功能
2015/12/18 Javascript
javascript实现PC网页里的拖拽效果
2016/03/14 Javascript
基于javascript实现图片切换效果
2016/04/17 Javascript
JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面
2016/08/04 Javascript
mvc中form表单提交的三种方式(推荐)
2016/08/10 Javascript
详解VUE 对element-ui中的ElTableColumn扩展
2018/03/28 Javascript
vue+element-ui集成随机验证码+用户名+密码的form表单验证功能
2018/08/05 Javascript
Nuxt.js之自动路由原理的实现方法
2018/11/21 Javascript
一个因@click.stop引发的bug的解决
2019/01/08 Javascript
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
js实现随机抽奖
2020/03/19 Javascript
简单介绍Python中的几种数据类型
2016/01/02 Python
Python supervisor强大的进程管理工具的使用
2019/04/24 Python
Django ModelForm操作及验证方式
2020/03/30 Python
利用Python优雅的登录校园网
2020/10/21 Python
求职自荐信格式
2013/12/04 职场文书
银行委托书范本
2014/04/04 职场文书
计算机专业自荐信范文
2014/05/28 职场文书
企业标语口号
2014/06/10 职场文书
六一儿童节开幕词
2015/01/29 职场文书
行政处罚事先告知书
2015/07/01 职场文书
HTML中的表格元素介绍
2022/02/28 HTML / CSS