50分求php在mysql下的分页函数
小弟急需一个不使用global变量的分页函数,最好有使用方法的例子.谢谢谢谢! 问题点数:50、回复次数:5Top
1 楼wildlily980(小李)回复于 2005-04-24 08:02:42 得分 50
这个行不行?
<?php
function pageft($totle,$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"];
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($totle/$displaypg); //最后页,也是总页数
$page=min($lastpg,$page);
$prepg=$page-1; //上一页
$nextpg=($page==$lastpg ? 0 : $page+1); //下一页
$firstcount=($page-1)*$displaypg;
if($firstcount<0)
$firstcount=0;
//开始分页导航条代码:
$pagenav="共 $lastpg 页,当前第 $page 页";
//如果只有一页则跳出函数:
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> ";尾页暂时不用
}
?>Top
2 楼sladro(水手)回复于 2005-04-24 12:56:12 得分 0
第三行有global变量不行啊
global $page,$firstcount,$pagenav,$_SERVER;
再帮帮忙啊
Top
3 楼sladro(水手)回复于 2005-04-24 20:34:21 得分 0
因为安全需要关闭了global变量,致使基于global的分页函数无法使用,那位高手有不用global变量的分页函数.50分独谢,不够在加.帮帮忙了...Top
4 楼wildlily980(小李)回复于 2005-04-25 07:21:56 得分 0
是register_global=off?
这个函数可以在以上条件下使用的。Top
5 楼sladro(水手)回复于 2005-04-25 11:11:52 得分 0
果然如此啊,谢谢!Top




