<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. php語言

    php分頁類代碼

    時間:2025-04-30 05:41:48 php語言 我要投稿
    • 相關推薦

    php分頁類代碼

      這是一款簡單,方便,功能齊全的分頁類,可以根據自己的需要更改CSS樣式文件以實現分頁顏色的控制,利用php分頁類,可以省去自己很多時間,只需要在分頁的地方嵌入即可,下面看下使用方法:

      1,在head里包含pager.css

      復制代碼 代碼如下:

      <link href="pager.css" type="text/css" rel="stylesheet" />

      2,在分頁處進行類的實例化:

      復制代碼 代碼如下:

      <?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;

      ?>

      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:

      復制代碼 代碼如下:

      <head>

      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

      <title>----分頁演示-----</title>

      <link href="pager.css" type="text/css" rel="stylesheet" />

      </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 = "<P 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 .= "</P>";

      return $str;

      }

      /**

      * 獲得實例

      * @return

      */

      //  static public function getInstance() {

      //      if (is_null ( self::$_instance )) {

      //          self::$_instance = new pager ();

      //      }

      //      return self::$_instance;

      //  }

      }

      ?>

    【php分頁類代碼】相關文章:

    學習php分頁代碼實例10-11

    一段經典php mysql分頁程序代碼08-11

    PHP經典常用特效類代碼07-27

    PHP中FTP操作類代碼09-25

    PHP簡單的分頁過程與原理10-01

    html無刷新分頁前端代碼08-20

    PHP類商品秒殺計時實現代碼07-15

    PHP分頁自定義函數09-08

    Bootstrap的php制作動態分頁標簽10-26

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人