CI框架內建分頁程式碼

jefferyjob發表於2015-12-25

Controller 控制器程式碼

<?php
defined(`BASEPATH`) OR exit(`No direct script access allowed`);

class Welcome extends CI_Controller {

	/*
		CI  框架內建分頁
	*/
	public function __construct()
	{
		parent::__construct();
		$this->load->library(`pagination`); //系統的library 
		$this->load->model(`mpage_model`,`mpage`);    //調資料庫資料
		$this->load->helper(`url`);       //系統的幫助類
	}
	function index()
	{
		//總記錄數
		$date=$this->mpage->gettotal();  
		$number=$date[0]->total;

		$config[`base_url`] = site_url(`Welcome/index/`); //路徑
		$config[`total_rows`] = $number;  //配置記錄總條數        
		$config[`per_page`] = 2; //配置每頁顯示的記錄數

		//如果你希望在整個分頁周圍圍繞一些標籤,你可以通過下面的兩種方法:
		//      $config[`first_tag_open`] = `<div>`;
		//        $config[`first_tag_close`] = `</div>`;
		$config[`uri_segment`] = 3;		//指定第幾引數為分頁頁數(預設是3 這個可不寫)
		$config[`next_link`] = `下一頁`;
		$config[`prev_link`] = `上一頁`;
		$config[`last_link`] = `末頁`;
		$config[`first_link`] = `首頁`;
		//配置分頁導航當前頁兩邊顯示的條數
		$config[`num_links`] = 3;
		//配置偏移量在url中的位置
		$config[`cur_page`] = $this->uri->segment(3);
		//配置分頁類

		$tab[`table`]=$this->mpage->get_books($config [`per_page`], $this->uri->segment(3));//當前頁顯示的資料

		$this->pagination->initialize($config);
		$this->load->view(`index.html`,$tab);		//調頁面  傳資料
	}



}

Model 模型層程式碼

<?php
class mpage_model extends CI_Model{
	function  __construct()
	{
		parent::__construct();
		$this->load->database();
	}
	function  gettotal()
	{
		$query=$this->db->query("SELECT count(id) total FROM tickets");
		return $query->result();
	}
	function get_books($num,$offset)
	{
		$query=$this->db->get(`tickets`,$num,$offset);
		return $query->result();
	}
}

View 檢視層程式碼

<table border=1>
  <tr>
    <th>火車車次</th>
    <th>餘票</th>
  </tr>
<?php foreach ($table as $val) {?>
  <tr>
    <td><?php echo $val->train;?></td>
    <td><?php echo $val->num;?></td>
  </tr>
  <?php }	?>
</table>
<?php echo $this->pagination->create_links(); ?>


相關文章