自定义分页函数
每次编写列表性质的页面,几乎都要写上一段分页的程序。最近小阳终于决心一劳永逸——自定义一个分页函数,并保存在“p”文件里。要用到分页的地方,就直接包含“p”文件,并调用这个函数就行了。小阳在编写这个函数时,尽量注意了程序的可移植性和易用性,下面就是小阳编写的函数:?
if(!function_exists(pageft)){
// 默认值本该设为本页URL(即$_SERVER[\"REQUEST_URI\"]),但设置默认值的右边只能为常量,所以该默认值设为空字符串,在函数内部再设置为本页URL。
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
页码计算:
$lastpg=ceil($totle/$displaypg);
$page=min($lastpg,$page);
$prepg=$page-1;
$nextpg=($page==$lastpg ? 0 : $page+1);
$firstcount=($page-1)*$displaypg;
$pagenav=\"显示第 B\".($totle?($firstcount+1):0).\"/B-B\".min($firstcount+$displaypg,$totle).\"/B 条记录,共 $totle 条记录BR\";
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=\"\"cation=\"$url=\"+lue\"\"\";
for($i=1;$i=$lastpg;$i++){
if($i==$page) $pagenav.=\"option value=\"\"$i\"\" selected$i/option\";
else $pagenav.=\"option value=\"\"$i\"\"$i/option\";
}
$pagenav.=\"/select 页,共 $lastpg 页\";
}
}
?
好,分页函数已经写好了,保存为“p”,要分页时就包含它并调用pageft()函数。不过它并没有输出任何东西,但产生几个全局变量供使用:$firstcount、$displaypg、$pagenav。
[下一页]
下面举例说明它的用法:
?
include(\"p\");
$result=mysql_query(\"select * from mytable\");
2. 史蒂夫沃兹尼亚克(Steve Wozniak) 苹果联合创始亾 $total=mysql_num_rows($result);
pageft($total,10);
$result=mysql_query(\"select * from mytable limit $firstcount,$displaypg \");
while($row=mysql_fetch_array($result)){
}
echo $pagenav;
?
四川肝病较好医院云南治疗不孕不育费用
脚扭伤疼吃什么药物治疗
- 06月21日武侠大狼狗什么意思位置
- 06月21日武侠大白熊犬体臭怎么办如何清除位置
- 06月21日武侠大白熊犬价格一般发达的城市比较贵一点位置
- 06月21日武侠大弹涂鱼的外形特点位置
- 06月21日武侠大家买狗的途径都是哪里位置
- 06月21日武侠大型犬需求和补钙的误区位置
- 06月21日武侠大狗挡在门口撒娇不让女主人离开这下麻烦了位置
- 06月20日武侠合格的苏格兰牧羊犬主人生活中要做到哪些位置
- 06月20日武侠各类狗粮的比较位置
- 06月20日武侠史氏金翅雀鲷吃什么可投喂浮游生物位置
- 06月20日武侠吃狗粮便多为什么位置
- 06月20日武侠吃宵夜捡回来一只小狗没想到它会这个技能位置