源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

精美漂亮的php分页类代码

  • 时间:2020-06-19 02:00 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:精美漂亮的php分页类代码
    这是一款简单,方便,功能齐全的分页类,可以根据自己的需要更改CSS样式文件以实现分页颜色的控制,利用php分页类,可以省去自己很多时间,只需要在分页的地方嵌入即可,下面看下使用方法:     1,在head里包含pager.css
[url=pager.css]
    2,在分页处进行类的实例化:   3,读取mysql数据库和分页计算文件需要自己写出来。例如:     $info=mysql_query("select * from member order by id desc limit $offset,$info_num");  这样才能调到 mysql 数据库和当前页码等。     下面是一共包含的三个文件:(1) index.php:调用分页类,显示分页 (2) pager.class.php:php分页类 (3)pager.css:css样式美化文件     (1) index.php:
[url=pager.css]</head>    <body>        <?php         include "pager.class.php";         $CurrentPage=isset($_GET['page'])?$_GET['page']:1;         //die($CurrentPage);         $myPage=new pager(1300,intval($CurrentPage));          $pageStr= $myPage->GetPagerContent();         //echo $pageStr;         $myPage=new pager(90,intval($CurrentPage));          $pageStr= $myPage->GetPagerContent();         echo $pageStr;        ?>    </body>    </html>  
(2) pager.class.php:
<?php    /*    * PHP分页类    * @package Page    * @Created 2013-03-27    * @Modify  2013-03-27    * @link http://www.60ie.net    * Example:          $myPage=new Pager(1300,intval($CurrentPage));          $pageStr= $myPage->GetPagerContent();          echo $pageStr;    */   class Pager {        private $pageSize = 10;        private $pageIndex;        private $totalNum;        private $totalPagesCount;        private $pageUrl;        private static $_instance;        public function __construct($p_totalNum, $p_pageIndex, $p_pageSize = 10,$p_initNum=3,$p_initMaxNum=5) {            if (! isset ( $p_totalNum ) || !isset($p_pageIndex)) {                die ( "pager initial error" );            }            $this->totalNum = $p_totalNum;            $this->pageIndex = $p_pageIndex;            $this->pageSize = $p_pageSize;            $this->initNum=$p_initNum;            $this->initMaxNum=$p_initMaxNum;            $this->totalPagesCount= ceil($p_totalNum / $p_pageSize);            $this->pageUrl=$this->_getPageUrl();             $this->_initPagerLegal();        }              /**       * 获取去除page部分的当前URL字符串       *       * @return String URL字符串       */     private function _getPageUrl() {            $CurrentUrl = $_SERVER["REQUEST_URI"];            $arrUrl     = parse_url($CurrentUrl);            $urlQuery   = $arrUrl["query"];            if($urlQuery){                $urlQuery  = ereg_replace("(^|&)page=" . $this->pageIndex, "", $urlQuery);                $CurrentUrl = str_replace($arrUrl["query"], $urlQuery, $CurrentUrl);                if($urlQuery){                     $CurrentUrl.="&page";                }                else $CurrentUrl.="page";            } else {                $CurrentUrl.="?page";            }        return $CurrentUrl;      }      /*      *设置页面参数合法性      *@return void     */     private function _initPagerLegal()      {          if((!is_numeric($this->pageIndex)) ||  $this->pageIndex<1)          {              $this->pageIndex=1;          }elseif($this->pageIndex > $this->totalPagesCount)          {              $this->pageIndex=$this->totalPagesCount;          }                }    //$this->pageUrl}={$i}    //{$this->CurrentUrl}={$this->TotalPages}        public function GetPagerContent() {            $str = "<div class="Pagination">";            //首页 上一页            if($this->pageIndex==1)            {                $str .="<a href='javascript:void(0)' class='tips' title='首页'>首页</a> "."n";                $str .="<a href='javascript:void(0)' class='tips' title='上一页'>上一页</a> "."n"."n";            }else           {                $str .="<a href='{$this->pageUrl}=1' class='tips' title='首页'>首页</a> "."n";                        $str .="<a href='{$this->pageUrl}=".($this->pageIndex-1)."' class='tips' title='上一页'>上一页</a> "."n"."n";            }                        /*           除首末后 页面分页逻辑           */            //10页(含)以下             $currnt="";             if($this->totalPagesCount<=10)             {                for($i=1;$i<=$this->totalPagesCount;$i++)                {                           if($i==$this->pageIndex)                           {    $currnt=" class='current'";}                           else                          {    $currnt="";    }                            $str .="<a href='{$this->pageUrl}={$i} ' {$currnt}>$i</a>"."n" ;                }             }else                                //10页以上             {   if($this->pageIndex<3)  //当前页小于3                 {                         for($i=1;$i<=3;$i++)                         {                             if($i==$this->pageIndex)                               {    $currnt=" class='current'";}                             else                            {    $currnt="";    }                            $str .="<a href='{$this->pageUrl}={$i} ' {$currnt}>$i</a>"."n" ;                         }                         $str.="<span class="dot">……</span>"."n";                     for($i=$this->totalPagesCount-3+1;$i<=$this->totalPagesCount;$i++)//功能1                     {                          $str .="<a href='{$this->pageUrl}={$i}' >$i</a>"."n" ;                     }                 }elseif($this->pageIndex<=5)   //   5 >= 当前页 >= 3                 {                     for($i=1;$i<=($this->pageIndex+1);$i++)                     {                          if($i==$this->pageIndex)                           {    $currnt=" class='current'";}                           else                          {    $currnt="";    }                            $str .="<a href='{$this->pageUrl}={$i} ' {$currnt}>$i</a>"."n" ;                     }                     $str.="<span class="dot">……</span>"."n";                     for($i=$this->totalPagesCount-3+1;$i<=$this->totalPagesCount;$i++)//功能1                     {                          $str .="<a href='{$this->pageUrl}={$i}' >$i</a>"."n" ;                     }                 }elseif(5<$this->pageIndex  &&  $this->pageIndex<=$this->totalPagesCount-5 )             //当前页大于5,同时小于总页数-5                 {                     for($i=1;$i<=3;$i++)                     {                         $str .="<a href='{$this->pageUrl}={$i}' >$i</a>"."n" ;                     }                      $str.="<span class="dot">……</span>";                                  for($i=$this->pageIndex-1 ;$i<=$this->pageIndex+1 && $i<=$this->totalPagesCount-5+1;$i++)                     {                           if($i==$this->pageIndex)                           {    $currnt=" class='current'";}                           else                          {    $currnt="";    }                            $str .="<a href='{$this->pageUrl}={$i} ' {$currnt}>$i</a>"."n" ;                     }                     $str.="<span class="dot">……</span>";                     for($i=$this->totalPagesCount-3+1;$i<=$this->totalPagesCount;$i++)                     {                          $str .="<a href='{$this->pageUrl}={$i}' >$i</a>"."n" ;                     }                 }else                {                      for($i=1;$i<=3;$i++)                     {                         $str .="<a href='{$this->pageUrl}={$i}' >$i</a>"."n" ;                     }                      $str.="<span class="dot">……</span>"."n";                      for($i=$this->totalPagesCount-5;$i<=$this->totalPagesCount;$i++)//功能1                     {                           if($i==$this->pageIndex)                           {    $currnt=" class='current'";}                           else                          {    $currnt="";    }                            $str .="<a href='{$this->pageUrl}={$i} ' {$currnt}>$i</a>"."n" ;                     }                }                    }                                      /*           除首末后 页面分页逻辑结束           */           //下一页 末页            if($this->pageIndex==$this->totalPagesCount)            {                   $str .="n"."<a href='javascript:void(0)' class='tips' title='下一页'>下一页</a>"."n" ;                $str .="<a href='javascript:void(0)' class='tips' title='末页'>末页</a>"."n";                            }else           {                $str .="n"."<a href='{$this->pageUrl}=".($this->pageIndex+1)."' class='tips' title='下一页'>下一页</a> "."n";                $str .="<a href='{$this->pageUrl}={$this->totalPagesCount}' class='tips' title='末页'>末页</a> "."n" ;            }                   $str .= "</div>";            return $str;        }          /**    * 获得实例    * @return      */   //  static public function getInstance() {    //      if (is_null ( self::$_instance )) {    //          self::$_instance = new pager ();    //      }    //      return self::$_instance;    //  }       }    ?>  
    (3) pager.css:
[url=http://60ie.net/article/8/365.html]http://60ie.net/article/8/365.html[/url]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部