当前位置: 代码迷 >> PHP >> 急好看实用的PHP+JS分页!效果类似百度
  详细解决方案

急好看实用的PHP+JS分页!效果类似百度

热度:57   发布时间:2016-04-28 23:26:40.0
急!求一个好看实用的PHP+JS分页!效果类似百度
急!求一个好看实用的PHP+JS分页!效果类似百度!

  效果如下:

1 2 3 4 5 6 7 8 9 10 下一页 共有?页

当不是第一页的时候,显示如下:

上一页 1 2 3 4 5 6 7 8 9 10 下一页 共有 ?页

其中,用“另一种颜色标记出当前显示的是哪一页”

该分页代码能跟MYSQL数据库连接使用,实现像百度的分页效果!

  小弟是新手,都吧知道如何下手,请各位大哥帮帮忙!谢谢!

------解决方案--------------------
PHP code
function _setPage($baseUrl, $total, $start, $limit, $parm=""){  if($total != 0) $pages = $total/$limit;  else $pages = 0;   if(empty($start)) $start=0;   if(empty($limit)) $limit=20;      if($start>$total)$start=$total-$limit;   if($start<0) $start=0;   if($limit<0) $limit=0;   if($limit>100) $limit=100;      //$start = $start - $top;   $showpage = 10;   $currentpage=$start/$limit;   if($currentpage<5){      $pageno=0;      $i=0;   } else{     if($currentpage+10 > $total/$limit ){        $pageno=$currentpage -5;     }else{        $pageno=$currentpage - 5;     }     $i=$pageno*$limit;   }   if($total==0) $currentpage = -1;   $strPage =  "总[" . ($currentpage + 1) . "/" . ceil($pages) . "]页&nbsp;&nbsp;";   $page=0;   $strPage .= "";   if($start/$limit > $showpage)   {        $tmp = ($pageno - 1)* $limit;        $strPage.= "<a href='$baseUrl&$parm&start=".($tmp)."&limit=$limit'><<</a>";   }      while($i < $total)   {      if($start/$limit ==$pageno)      {        $strPage .=  "<font color=red>". ($pageno + 1) ." </font>";      }      else      {        $strPage .= "<a href='$baseUrl&$parm&start=".($pageno*$limit)."&limit=$limit'>".($pageno + 1)."</a> ";      }      $pageno++;      $page++;      $i+=$limit;      if($page > $showpage)      {        $strPage.= "<a href='$baseUrl&$parm&start=".($pageno*$limit)."&limit=$limit'>>></a>";        break;      }    }        if($start>0){        $strPage .= "&nbsp;<a href='$baseUrl?$parm&start=0&limit=$limit'>首页</a>&nbsp;";    }else{        $strPage .= "&nbsp;首页&nbsp;";    }    if($start>0){        $strPage .=  "&nbsp;<a href='$baseUrl&$parm&start=".($start-$limit)."&limit=$limit'>上一页</a>&nbsp;";    }    if($start+$limit< $total){        $strPage .= "&nbsp;<a href='$baseUrl&$parm&start=".($start+$limit)."&limit=$limit' >下一页</a>&nbsp;";    }    if($start+$limit< $total){      $strPage .= "&nbsp;<a href='$baseUrl&$parm&start=".($total- $total%$limit)."&limit=$limit'>尾页</a>&nbsp;";    }else{      $strPage .= "&nbsp;尾页&nbsp;";    }    return $strPage;}
------解决方案--------------------
为什么要JS的?
------解决方案--------------------
$baseUrl为页面基本的url,比如说index.php?m=table&a=list
$total为你要分页的记录的总数,用来计算有多少页的.
$start为当前页开始的记录条数.
$limit为每页显示的条数,这个可以定为常量.
$parm为额外的参数,比如说你在$baseUrl的基础上又添加了一个search='news'的话,可以在这里添加,以便追加到url里.
------解决方案--------------------
学习。
  相关解决方案