-
-7 22
-
给php爱好者的读者和爱好php学习的朋友们分享一个简单易用的php分页函数!
<?php
/*
///total :总记录数(条数)
//// displaypg:页容量
*/
function pagination($total,$displaypg=20,$url='')
{
global $page,$firstcount,$pagenav,$_SERVER;
$GLOBALS["displaypg"]=$displaypg;if(!$page)
$page=1;
if(!$url)
///得到当前的工作目录
$url=$_SERVER["REQUEST_URI"];$parse_url=parse_url($url);
////得到问号这后的
$url_query=$parse_url["query"];
///如果url后有参数
if($url_query)
{
$url_query=ereg_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/$displaypg);/////最后一页
$page=min($lastpg,$page);//当前页
$prepg=$page-1;//上一页
$nextpg=($page==$lastpg ? 0 : $page+1);//下一页
$firstcount=($page-1)*$displaypg;//limit中的起始条数
$pagenav="显示第 <B>".($total?($firstcount+1):0)."</B>-<B>".min($firstcount+$displaypg,$total)."</B> 条记录,共 $total 条记录";
if($lastpg<=1) return false;
$pagenav.=" <a href='$url=1'>首页</a>";
if($prepg) $pagenav.=" <a href='$url=$prepg'>上一页</a>";
else $pagenav.=" 上一页";
if($nextpg) $pagenav.=" <a href='$url=$nextpg'>下一页</a>";
else $pagenav.=" 下一页";
$pagenav.=" <a href='$url=$lastpg'>尾页</a>";
$pagenav.=" 到第 <select name='topage' size='1' onchange='window.location=\"$url=\"+this.value'>\n";
for($i=1;$i<=$lastpg;$i++)
{
if($i==$page) $pagenav.="<option value='$i' selected>$i</option>\n";
else $pagenav.="<option value='$i'>$i</option>\n";
}
$pagenav.="</select> 页,共 $lastpg 页,当前第 $page 页";
}
?>用法:首先包含这个函数
调用:我的是这样向下面这样写的(朋友们根据自己的基类写):
$query="select * from `adminjxs` where id3={$id3} ";
$db -> execute($query);
$result1 = $db -> fetch();
$total = $db -> recordNum;
pagination($total,8);
$db ->execute($query." ORDER BY id4 DESC LIMIT $firstcount,$displaypg");
$result = $db -> fetch();pagination($total,8);//total代表的是总条数,8是每页显示的数量!
很简单吧!一看就懂,而且易用,喜欢的话,就拿去吧!
本文来源于php爱好者:php教程 —http://www.phplover.cn/
原文地址:http://www.phplover.cn/post/php-pagehanshu.html
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
- 评论(0)
发表评论 TrackBack