用CodeIgniter 製作出像下面的分頁
先在Controllers中寫下下列函式
function index()
{
$this->page(0);//呼叫page函式並帶入0的數值
}
function page($set)
{
$this->load->library('pagination');
$data['title'] = "留言板"; //設定title
$data['heading'] = "留言板";//設定標題
$data['all'] = $this->db->count_all_results('book');
$config['base_url'] = base_url().'/book/page/';//設定頁面輸出網址
$config['total_rows'] = $this->db->count_all_results('book'); //計算所有筆數
$config['per_page'] = '10'; //一個分頁的數量
//以下是設定樣式
$config['full_tag_open'] = '';
$config['first_link'] = '首頁';
$config['last_link'] = '末頁';
$config['next_link'] = '下一頁>';
$config['prev_link'] = '<上一頁';
$this->pagination->initialize($config);//初始化
$this->db->order_by('id','desc');
$this->db->limit($config['per_page'],$set);
$data['query']=$this->db->get('book');
$data['pagelist']=$this->pagination->create_links();//顯示分頁,如果沒有分頁不會印出
$this->load->view('book_viewend',$data);
}
在View中用下列的程式碼來抓出資料
//印出分頁 result() as $row): echo $row->name; echo $row->content; echo $row->time; endforeach;?>
這樣寫已經可以製作出分頁了
但會出現一個問題,切換其他頁可以,但切回第一頁就出現錯誤訊息
因為在第一頁的時候沒有給function page裡的$set值
解決方法:打開application/config/router.php 在裡面新增一行
$route['book/page'] = "book";//將book/page的網址轉到book(我的留言版首頁)
這樣就完成了


沒有留言:
張貼留言