php分页类

精贴 置顶
1842 0

<?php
/*
使用方法:参数1:当前页数,参数2:每页显示数据条数,参数三:分页sql;参数四:查询当前条件下记录总数sql,参数5:表单提交或网页获取的参数,字符串形式,默认为空
*/
class page{
//动态设置分页数目
public function index($page,$page_size,$sql,$sql_total,$param_str=”"){
$off=($page-1)*$page_size;
$off_size=$page*$page_size;   
$total_all=mysql_num_rows(mysql_query($sql_total));
$page_count=ceil($total_all/$page_size);  
$param_str=trim($param_str);//去掉参数两端空格 
if($page<=$page_count&&$page+5<=$page_count&&$page-4>0){
 $total = $page+5;
 $n = $page-4;
}elseif($page<=$page_count&&$page+5>$page_count&&$page-4>0){//往后自动翻页超出界限
 $total = $page_count;
 if($total-9>0){
 $n = $total-9;
 }else{
 $n = 1;
 }
}elseif($page<=$page_count&&$page+5>$page_count&&$page-4<=0){//往后自动翻页超出界限
 $total = $page_count;
 $n = 1;
}elseif($page<=$page_count&&$page+5<=$page_count&&$page-10<=0&&$page_count>=10){//往前自动翻页超出界限
    $total = 10;
 $n = 1;
}elseif($page<=$page_count&&$page+5<=$page_count&&$page-10<=0&&$page_count<=10){//往前自动翻页超出界限
    $total = $page_count;
 $n = 1;
}elseif($page_count==”1″){
 $total = 1;
 $n = 1;
}elseif($page==1&&$page<$page_count){
 $total = 10;
 $n = 1;
}
//动态设置分页数目完毕
 foreach ($_GET as $key=>$value){
 if(“$key”!=”page”){
  $param[$key] = $value;
 }
   }
  
if(count($param)){
foreach ($param as $key=>$value){
 $str.=$key.”=”.$value.”&”;
}
$str=substr($str,0,-1);
$url = “http://”.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'].”?”.$str; 
}elseif($param_str){
$url = “http://”.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'].”?”.$param_str;  
}else{
$url = “http://”.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']; 
}

//分页开始
if($str){//如果url带参数
$page_arr[]=”<a href=’”.$_SERVER['SCRIPT_NAME'].”?$str’>首页</a>”; 
if($page>1)$page_arr[] =”<a href=’$url&page=”.($page-1).”‘>上一页</a>”;   
 if($page_count>1){
    for($n;$n<=$total;$n++){
 if($page==$n){
 $page_arr[] = “<a href=’$url&page=$n’><span id=’link_background’>$n </span></a>”;
 }else{
 $page_arr[] = “<a href=’$url&page=$n’>[$n] </a>”; 
 }
}
}
if($page<$page_count&&$page_count>1)$page_arr[] =”<a href=’$url’>下一页</a>”;   
}elseif($param_str){//如果有提交的参数
$page_arr[]=”<a href=’”.$_SERVER['SCRIPT_NAME'].”‘>首页</a>”; 
if($page>1)$page_arr[] =”<a href=’$url&page=”.($page-1).”‘>上一页</a>”;    
if($page_count>1){
for($n;$n<=$total;$n++){
 if($page==$n){
 $page_arr[] = “<a href=’$url&page=$n’><span id=’link_background’>$n </span></a>”;
 }else{
 $page_arr[] = “<a href=’$url&page=$n’>[$n] </a>”; 
 }
}
}
if($page<$page_count&&$page_count>1)$page_arr[] =”<a href=’$url&pag

  • 没有任何评论
今日天气 ···

···

···

···

热门排行
CSS cursor鼠标样式一览表 2012/6/25
.NET后台写JS代码 2011/11/3
网站地址多出jdfwkey的问题解析及... 2010/8/25
百度、google、Yahoo网站地图制作... 2011/1/30
数据库xxx的日志已满,请备份该数... 2013/7/19
<a>标签的伪类书写顺序问题... 2010/9/4
CEO名言 2010/8/31
什么是长尾关键词? 2010/9/24
Mysql 主从数据库同步 2010/9/12
用ASP实现网页BBS 2010/11/1
博主推荐
网站title标题如何正确修改不会被... 2013/8/26
ASP .NET MYSQL 的简单分页 并不... 2013/8/19
网站有弹窗广告这样的站点,百度... 2013/8/17
做淘宝SEO优化需要注意的8大问题 2013/8/17
淘宝网怎么做SEO优化 2013/8/17
站长们要学习的“苍井空精神” 2013/8/17
苹果公司今日发布了iOS 7第五个开... 2013/8/7
小米1刷V5系统WIFI不能连接解决办... 2013/8/1
本博客手机版上线咯!会员后台也... 2013/7/31
Win7系统环境安装配置PHP开发环境... 2013/7/29
随便看看
适用javaScript技术总结:屏蔽类 2013/6/27
jQuery基础 - 改变CSS样式 2014/3/8
Anchor Text-链接锚文本 2010/9/20
Asp编码优化技巧8则 2010/10/21
.NET Framework 四 安装未成功 一... 2013/6/27
VS快捷键大全 2010/8/25
MySQL重装start service失败的解... 2012/7/16
IIS设置允许下载.exe文件解决方法... 2013/10/31
微软Windows7系统中空白鍵的妙用 2010/10/15
jsp的运行方式 2010/11/5
北京 上海 杭州 深圳 广州 成都