CodeIgniter 控制一頁筆數的參數

未分類
很多功能會需要用到換頁 或是控制一頁顯示幾筆的功能

尤其是...

很多客人會想要 "控制一頁顯示幾筆"

雖然我覺得很無聊

但客人就是要 = =





然後呢

因為 CodeIgniter 一般這種東西

都會從 URL 的參數傳進來

所以 URL 可能會是

http://xxx.com/news/{per_page}/page_idx

但因為 CodeIgniter 這種參數 是固定順序的

(要不就要寫成 ?xxx=xxx)

參數一多的時候 就很麻煩

後來我覺得這種東西透過 URL 控制實在太麻煩了

(而且這設定值在 URL 上通常也沒啥意義

因為複製連結給別人 帶一頁幾筆沒太大幫助)

所以乾脆把這參數弄到 session 去了

也就是說 當點 一頁 [N筆] 的連結

會弄一個 jquery get/post 去把 per_page 的參數傳給 server

server 把這參數寫到 session 後

就 refresh 頁面

然後 server 程式再從 session 讀取 per_page

用新的 per_page 參數 render 新的頁面




不過如果有搭配頁數的參數的話

可能會出問題


例如說 資料有 150 筆

現在每 10筆一頁 (預設10頁) 在第2頁

所以參數是 xxx.com/news/2

我換成 50筆一頁 在第2頁

參數還是 xxx.com/news/2

如果我把 這個 url 複製給別人

別人預設一頁是10筆

那他看到的東西跟我看到的可能會不一樣(?!)

所以如果要看到的東西一樣的話

可能還是要把這參數弄到 URL 上...= =

結論是

白搞了 XD