当前位置:首页 > PHP教程 > php分页 > 列表

php分页代码

发布:smiling 来源: PHP粉丝网  添加日期:2014-08-16 22:39:32 浏览: 评论:0 

这是一款简单实用的php分页代码,同时也很好的利用的类的构造函数来实例分页的初始化,好了下面我们来看看这款代码如何吧,代码如下:

  1. class page extends mysql 
  2.  public $page
  3.  public $page_size
  4.  private $table
  5.  private $condition
  6.  private $limit
  7.  private $href
  8.  private $action_value
  9.  private $url_value
  10. //分页初始化 
  11.  function __construct($page,$page_size,$table,$condition,$limit,$href,$action_value,$url_value
  12.  { 
  13.   $this->page=$page
  14.   $this->page_size=$page_size
  15.   $this->table=$table
  16.   $this->condition=$condition
  17.   $this->limit=$limit
  18.   $this->href=$href
  19.   $this->action_value=$action_value
  20.   $this->url_value=$url_value
  21.   $this->get_page(); 
  22.  } 
  23. /** 
  24.  * get the page's value判断当前在第几页 
  25.  */ 
  26.  function get_page() 
  27.  { 
  28.   if($this->page==""
  29.   { 
  30.    $this->page=1; 
  31.   } 
  32.   return $this->page; 
  33.  } 
  34. /** 
  35.  * page main code //调用转到指定的分页代码号。 
  36.  */ 
  37.  function go_page() 
  38.  { 
  39.  if($this->page!=""
  40.  { 
  41.   $reslut=mysql::fn_select($this->table,'count(*) as `total`',$this->condition,'',$this->limit); 
  42.   $rs=mysql::fetch_array($reslut); 
  43.   $message_count=$rs['total'];  //get the messages's count number 
  44.   $page_count=ceil($message_count/$this->page_size);  //get the page's count number 
  45.   $offset=($this->page-1)*$this->page_size;  //get the first value of sql's limit 
  46.   if($message_count<=$this->page_size) 
  47.   { 
  48.    $page_code=array("","","",""); 
  49.   } 
  50.   else if($this->page==1) 
  51.   { 
  52.    $page_code=array(""
  53.        ""
  54.        "<a name=code href=".$this->href."?page=".($this->page+1)."&action=".$this->action_value."&".$this->url_value.">下一页</a>"
  55.        "<a name=code href=".$this->href."?page=".$page_count."&action=".$this->action_value."&".$this->url_value.">尾页</a>"); 
  56.   } 
  57.   else if($this->page==$page_count
  58.   { 
  59.       $page_code=array("<a name='code' href=".$this->href."?page=1&action=".$this->action_value."&".$this->url_value.">首页</a>"
  60.        "<a name='code' href=".$this->href."?page=".($this->page-1)."&action=".$this->action_value."&".$this->url_value.">上一页</a>"
  61.        ""
  62.        ""); 
  63.   } 
  64.   else 
  65.   { 
  66.    $page_code=array("<a name='code' href=".$this->href."?page=1&action=".$this->action_value."&".$this->url_value.">首页</a>"
  67.        "<a name='code' href=".$this->href."?page=".($this->page-1)."&action=".$this->action_value."&".$this->url_value.">上一页</a>"
  68.        "<a name='code' href=".$this->href."?page=".($this->page+1)."&action=".$this->action_value."&".$this->url_value.">下一页</a>"
  69.        "<a name='code' href=".$this->href."?page=".$page_count."&action=".$this->action_value."&".$this->url_value.">尾页</a>"); 
  70.   } 
  71.   $page_info=array
  72.       "message_count"=>$message_count
  73.       "page_count"=>$page_count
  74.       "offset"=>$offset
  75.       "page_size"=>$this->page_size, 
  76.       "page_now"=>$this->page, 
  77.       "page_first"=>$page_code[0], 
  78.       "page_up"=>$page_code[1], 
  79.       "page_next"=>$page_code[2], 
  80.       "page_one_last"=>$page_code[3] 
  81.       );//开源代码phpfensi.com 
  82.   return $page_info
  83.  } 
  84.  } 

php分页代码调用方法,代码如下:

  1. $page = new page('',10,'`cy0871_users_info`','index.php',1,'','','userid=1'); 
  2. print_r ($page->go_page()); 
  3. $page_info = $page->go_page(); 
  4. echo $page_info['page']."<br/>"
  5. echo $page_info['page_size']; 

Tags: php分页代码

分享到: