PHP實例源代碼:PHP實現翻頁處理的類_PHP教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:PHP實例:常用的數值判斷函數
      以下為引用的內容: <HTML> <HEAD> <TITLE>常用的數值判斷函數</TITLE> </HEAD> <BODY> <? /


      以下為引用的內容:
      <?php
      class Page{

      var $CountAll; //共有紀錄數
      var $CountPage; //每頁顯示記錄數
      var $Link; //顯示 完整的分頁信息
      var $ForPage; //上一頁
      var $NextPage; //下一頁
      var $FirstPage; //第一頁
      var $LastPage; //最后一頁
      var $CurrPage; //第幾頁
      var $PageNum; //共有多少頁
      var $Parameter; //參數
      var $LimitNum; //不是統計全部記錄,而是顯示部分記錄,例如共有100條記錄,但是只統計顯示前50條

      function Page($sql, $num=30){

      //初始化,統計記錄數
      $this->CountPage = $num;
      global $mysql;
      $sql = base64_decode($sql);
      $result = $mysql->Query($sql);
      if (0 != $mysql->AffectedRows()){
      $row = $mysql->FetchArray($result);
      $this->CountAll = $row[0];
      }
      else{
      $this->CountAll = 0;
      }
      //print "共有 $this->CountAll <br>";
      }

      function ListPage($sql, $page=0,$sql_all,$other){
      //查詢,定義變量,獲取數據

      global $mysql;
      //print "sql sql<br>";
      if (isset($this->LimitNum) && $this->CountAll > $this->LimitNum){
      $this->CountAll = $this->LimitNum;
      }//更新總瀏覽記錄數

      $sql_src = $sql;
      //if ($page > 0){
      $sql = base64_decode($sql);
      $sql_all = base64_decode($sql_all);
      $sql_src = $sql;
      //}
      //echo $sql;
      if (($this->CountAll % $this->CountPage) == 0)//統計共有多少頁
      $pagecount = (integer)($this->CountAll/$this->CountPage);
      else
      $pagecount = (integer)($this->CountAll/$this->CountPage) 1;
      $this->ageNum = $pagecount;
      if ($page > $this->ageNum)//如果頁碼超過頁碼總數則設為最大頁碼
      $page = $this->ageNum;
      if ($page <= 0)//如果頁碼小于等于零則將頁碼設置為1
      $page = 1;

      if ($this->CountAll == 0)
      {
      $this->CurrPage = 0;
      }else{
      $this->CurrPage = $page;
      }
      $first_start = ($page-1)*$this->CountPage;
      $sql = $sql." limit ".$first_start.", ".$this->CountPage;
      //print "2sql<br>";
      $result = $mysql->Query($sql);
      if (0 != $mysql->AffectedRows()){
      $i = 0;
      while($row = $mysql->FetchArray($result)){
      $array[$i] = $row;
      //print "name:".$array[$i][Name]."<br>";
      $i ;
      }
      }

      $sql = base64_encode($sql_src);
      $sql_all = base64_encode($sql_all);
      if ($pagecount >1){
      if($page == 1){
      $nextpage = $page 1;
      $forpage = 1;
      $this->Link = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=$nextpage".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/next.gif" align="absmiddle"> </button><button onClick="javascript:location.href='?query_sql=$sql&query_page=$pagecount".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev_end.gif" align="absmiddle"> </button>";
      $this->NextPage = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=$nextpage".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/next.gif" align="absmiddle"> </button>";
      $this->LastPage = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=$pagecount".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev_end.gif" align="absmiddle"> </button>";
      }
      else if(($page > 1)&&($page < $pagecount)) {
      $forpage = $page-1;
      $nextpage = $page 1;
      $this->Link = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=1".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev_top.gif" align="absmiddle"> </button><button onClick="javascript:location.href='?query_sql=$sql&query_page=$forpage".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev.gif" align="absmiddle"> </button><button onClick="javascript:location.href='?query_sql=$sql&query_page=$nextpage".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/next.gif" align="absmiddle"> </button><button onClick="javascript:location.href='?query_sql=$sql&query_page=$pagecount".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev_end.gif" align="absmiddle"> </button>";
      $this->ForPage = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=$forpage".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev.gif" align="absmiddle"> </button>";
      $this->NextPage = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=$nextpage".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/next.gif" align="absmiddle"> </button>";
      $this->FirstPage = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=1".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev_top.gif" align="absmiddle"> </button>";
      $this->LastPage = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=$pagecount".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev_end.gif" align="absmiddle"> </button>";
      }
      else if ($page = $pagecount){
      $forpage = $page-1;
      $nextpage = 1;
      $this->Link = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=1".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev_top.gif" align="absmiddle"> </button><button onClick="javascript:location.href='?query_sql=$sql&query_page=$forpage".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev.gif" align="absmiddle"> </button>";
      $this->FirstPage = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=1".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev_top.gif" align="absmiddle"> </button>";
      $this->ForPage = "<button onClick="javascript:location.href='?query_sql=$sql&query_page=$forpage".$this->Parameter."&sql_all=".$sql_all."".$other."'" class="button_a" style="width:30;height:22";><img src="images/prev.gif" align="absmiddle"> </button>";
      }
      }
      else{
      $this->Link = ' ';
      }

      return $array;//$array;

      }

      }
      /***************
      使用例子

      include("class.config.php");
      include("class.mysql.php");
      include("class.page.php");
      global $mysql;
      $config = new Config;
      $mysql = new TDatabase($config);

      $query_all = "select count(*) from user";
      $page_object = new Page($query_all,20);
      //new Page('統計記錄個數語句',每頁記錄個數)
      if(empty($query_page))
      $query_sql = "select * from user";
      //注意這里的變量名必須為 $query_sql $query_page ,因為下一頁的連接參數默認為 query_sql query_page

      $list = $page_object->ListPage($query_sql,$query_page);
      //ListPage('沒有limit的前一部分,系統自動根據補齊',察看的頁數)
      $page_object->Parameter = '&action=view';
      //這是傳送的Url 所帶的其它參數,如果有就修改變量 Parameter ,系統自動將她補在后面
      //顯示數據
      for ($i=0;$i< $page_object->CountPage;$i )
      print $list[$i][ID]."->".$list[$i][UserName]."<br>";
      //返回的數據為二維哈西(關聯)數組,一維為紀錄的標識ID號,二維為哈西(關聯)數組,取值標識建議采取用數據庫中字段名的方法,例如list[0][UserName]。

      //顯示其他相關數據
      echo $page_object->CountAll;//紀錄總數
      echo $page_object->CountPage;//每頁顯示數據個數
      echo $page_object->Link;//顯示完整的分頁信息
      echo $page_object->FirstPage;//第一頁
      echo $page_object->NextPage;//下一頁
      echo $page_object->ForPage;//上一頁
      echo $page_object->LastPage;//最后一頁
      echo $page_object->CurrPage;//第幾頁
      echo $page_object->PageNum;//共有多少頁
      $mysql->DatabaseClose();
      ****************/

      ?>


      分享:PHP實例:實現文件上傳的程序源碼
      如何實現文件上傳? 以下為引用的內容: <HTML> <HEAD> <TITLE>文件上傳界面</TITLE> </HEAD> <B

      來源:模板無憂//所屬分類:PHP教程/更新時間:2008-08-22
      相關PHP教程