肯定需要的几个参数:
data 数据
page 当前页码
pagesize 每页的数量
total 总页数
当前页码是通过url传值获取的,如果第一次进网页,则将page设为1
通过page和pagesize去获取数据data
下面贴上pagebar方法
代码仔细看其实还是挺简单的,就是有个地方要注意的:
$typestr=$data["where"];
$typestr=$data["method"].$typestr;
那么$typestr是什么呢
这其实只是一个控制器的方法,代表点击上一页下一页后该跳转到什么网址,格式为action+条件
因为这里搜索出来的可能是某个条件下的数据,但url跳转后,之前搜到的东西就不知道了,所以这里把where条件查一下
public function pagebar($data){
$pageindx="";
$pageend="";
$pagepre="";
$pagenext="";
$pagestr="";
$typestr=$data["where"];
$total=0;
$st="";
$total=$data["total"];
$page = $data["page"];
if($total==0){ $total=1; }
$typestr=$data["method"].$typestr;
$pageindx=$page==1?"<a class='disable'>首页</a> ":"<a href='./index.php?m=Home&c=Index&a=".$typestr."&page=1'>首页</a> ";
$pagepre=$page<=1?"<a class='disable'>上一页</a>" :"<a href='./index.php?m=Home&c=Index&a=".$typestr."&page=".($data["page"]-1)."'>上一页</a> ";
$pagenext=$page>=$total?"<a class='disable'>下一页</a> ":"<a href='./index.php?m=Home&c=Index&a=".$typestr."&page=".($data["page"]+1)."'>下一页</a> ";
$pageend=$page==$total?"<a class='disable'>尾页</a>":"<a href='./index.php?m=Home&c=Index&a=".$typestr."&page=".$total."'>尾页</a>";
$page=$page>=$total?$total:$page;
$iv=$page>4?$page-2:1;
$iv2=$iv+4;
if($iv2>=$total){ $iv2=$total; }
for($iv;$iv<=$iv2;$iv++){
if($page==$iv){
$pagestr=$pagestr."<a class='on'>".$iv."</a> ";
}else{
$pagestr=$pagestr."<a href='./index.php?m=Home&c=Index&a=".$typestr."&page=".$iv."'>".$iv."</a> ";
}
}
if(empty($total)){
$str="还没有数据哦!";
}else if($total==1){
$str="";
}else{
$str=$pageindx.$pagepre.$pagestr.$pagenext.$pageend;
}
return $str;
}