PHP分页程序(通用函数)

做网页的时候,分页是一个很繁琐的问题,有些时候需要重复很多次,所以今天我写了一个分页函数,直接调用即可。

函数如下:

function pageNum($file,$page,$page_num,$pn=5){
/*
$file 当前分页的页面
$page 当前为哪一页
$page_num 所有页面的总数
$pn 定义当前页左右两侧显示的页数,默认是5
*/

 
//处理前翻按钮
if($page==1){
echo 'Previous';
}elseif($page==2){
echo '<a href="'.$file.'?page=1">Previous</a>';
}else{
echo '<a href="http://blog.fesite.com/wp-admin/%27.$file.%27?page=%27.%20%28$page-1%29%20.%27">Previous</a>';
}
 
//处理中间的数字部分
for($i=1;$i&lt;=$page_num;$i++){
if($i==1){
if($page==1){
echo '<a style="background-color: #99ccdd"><strong>'.$i.'</strong></a>';
}else{
echo '<a href="'.$file.'?page=1">1</a>';
}
}elseif($i==$page_num){
if($page==$i){
echo '<a style="background-color: #99ccdd"><strong>'.$i.'</strong></a>';
}else{
echo '<a href="'.$file.'?page='.$i.'">'.$i.'</a>';
}
}elseif($i&lt;=$page+$pn &amp;&amp; $i&gt;=$page-$pn){
if($page==$i){
echo '<a style="background-color: #99ccdd"><strong>'.$i.'</strong></a>';
}else{
echo '<a href="'.$file.'?page='.$i.'">'.$i.'</a>';
}
}else{
if($i==$page+($pn+1) || $i==$page-($pn+1)){
echo '...';
}
}
}
 
//处理后翻按钮
if($page==$page_num){
echo 'Next';
}else{
echo '<a href="http://blog.fesite.com/wp-admin/%27.$file.%27?page=%27.%20%28$page+1%29%20.%27">Next</a>';
}
}


测试的时候请把css也加上,否则会变形,css代码如下:

<style type="text/css">
#page_list{
clear:both;
padding:3px;
margin:10px;
font-size:12px;
}
#page_list a{
margin:5px 2px;
padding:5px;
height:14px;
border:1px #9AAFE5 solid;
text-decoration:none;
color:#000;
}
#page_list a:hover{
background:#2E6AB1;
}
</
style>

页面主体内容如下:

<p id="page_list">  $page=$_GET["page"];
if(!is_numeric($page)){
$page=1;
}
pageNum("page_num.php",$page,20,5);
?
&gt;

由于时间比较仓促,代码写的比较丑陋,不过使用基本没啥问题,也请各位高手不吝赐教。

1,262 views

如果你觉得IE不好用(微软自己都承认IE的技术不如Firefox),你可以 ,来体验Firefox带给你的超爽感觉。
  • No Related Post

Leave a Reply