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 相关文章推荐
PHP5.0对象模型探索之抽象方法和抽象类
Sep 05 PHP
PHP 中执行排序与 MySQL 中排序
Apr 21 PHP
PHP下escape解码函数的实现方法
Aug 08 PHP
PHP IF ELSE简化/三元一次式的使用
Aug 22 PHP
用php来改写404错误页让你的页面更友好
Jan 24 PHP
Symfony2中被遗弃的getRequest()方法分析
Mar 17 PHP
Yii2增加验证码步骤详解
Apr 25 PHP
PHP MVC框架skymvc支持多文件上传
May 26 PHP
php pdo操作数据库示例
Mar 10 PHP
form自动提交实例讲解
Jul 10 PHP
laravel 解决paginate查询多个字段报错的问题
Oct 22 PHP
PHP利用curl发送HTTP请求的实例代码
Jul 09 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生成不重复标识符的方法
2014/11/21 PHP
yii2.0使用Plupload实现带缩放功能的多图上传
2015/12/22 PHP
浅谈php处理后端&amp;接口访问超时的解决方法
2016/10/29 PHP
PHP5.5安装PHPRedis扩展及连接测试方法
2017/01/22 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
2018/06/13 PHP
DB.ASP 用Javascript写ASP很灵活很好用很easy
2011/07/31 Javascript
解决Jquery load()加载GB2312页面时出现乱码的两种方案
2013/09/10 Javascript
非常酷炫的Bootstrap图片轮播动画
2016/05/27 Javascript
Javascript农历与公历相互转换的简单实例
2016/10/09 Javascript
微信js-sdk界面操作接口用法示例
2016/10/12 Javascript
bootstrap daterangepicker汉化以及扩展功能
2017/06/15 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
详细分析JS函数去抖和节流
2017/12/05 Javascript
vue element-ui读取pdf文件的方法
2019/11/26 Javascript
JavaScript中的this基本问题实例小结
2020/03/09 Javascript
解决Ant Design Modal内嵌Form表单initialValue值不动态更新问题
2020/10/29 Javascript
javascript实现随机抽奖功能
2020/12/30 Javascript
[05:08]第一届“网鱼杯”DOTA2比赛精彩集锦
2014/09/05 DOTA
[01:45]DOTA2众星出演!DSPL刀塔次级职业联赛宣传片
2014/11/21 DOTA
Python 中的range(),以及列表切片方法
2018/07/02 Python
Python aiohttp百万并发极限测试实例分析
2019/10/26 Python
django实现将修改好的新模型写入数据库
2020/03/31 Python
深入理解css中vertical-align属性
2017/04/18 HTML / CSS
纯HTML5+CSS3制作生日蛋糕(代码易懂)
2016/11/16 HTML / CSS
html5 canvas的绘制文本自动换行的示例代码
2018/09/17 HTML / CSS
司机的工作范围及职责
2013/11/13 职场文书
家长对孩子评语
2014/01/30 职场文书
给公司的建议书范文
2014/05/13 职场文书
实习推荐信格式模板
2015/03/27 职场文书
关于战胜挫折的名言警句大全!
2019/07/05 职场文书
判断Python中的Nonetype类型
2021/05/25 Python
MySQL系列之十三 MySQL的复制
2021/07/02 MySQL
使用javascript解析二维码的三种方式
2021/11/11 Javascript
Python实现制作销售数据可视化看板详解
2021/11/27 Python
十大最强奥特曼武器:怪兽战斗仪在榜,第五奥特之父只使用过一次
2022/03/18 日漫
Go gorilla securecookie库的安装使用详解
2022/08/14 Golang