[請益] PHP的Pagination寫法
想請教一下各位大大,
我用php寫了一個mysql_query的功能,
將每10筆得到的結果分為一頁.
結果有些query跑出非常多資料(例如一千筆),
因此產生一百多個分頁連結
[1][2][3][4][5][6][7][8][9][10][11][12][13]....blah blah
我想讓所有的query結果分頁(Pagination)像Google那樣最多只顯示10頁,
例如我在第一頁的時候是 [1][2][3][4][5][6][7][8][9][10]
點第七頁時 [2][3][4][5][6][7][8][9][10][11]
第八頁時 [3][4][5][6][7][8][9][10][11][12]
之後依此類推,
我的原始碼是這樣:
for($i = 1; $i <= $total_pages; $i++){
if(($page) == $i){
$pagination .= $i;
} else {
$pagination .= '< a href="index.php?page='.$i.'">'.$i.'</a>';}
}
在網路上找到一個範例,
將第一行改成
for($i = max(1, $page - 5); $i <= min($page + 5, $total_pages); $i++){
結果在第一頁時會變成
[1][2][3][4][5][6] (六個)
第二頁變成
[1][2][3][4][5][6][7] (七個)
.....
一直到第五頁才變成我想要的十個
[1][2][3][4][5][6][7][8][9][10]
第六頁卻變成十一個
[1][2][3][4][5][6][7][8][9][10][11]
在一個有十一頁結果的pagination中,
進入第十一頁後卻又變成六個
[6][7][8][9][10][11]
想請教各位高手, 我那第一行要改成怎樣,
才能使每一頁都維持10個頁面連結?
感恩....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 175.180.183.217
推
09/12 15:30, , 1F
09/12 15:30, 1F
→
09/12 15:30, , 2F
09/12 15:30, 2F
→
09/12 15:31, , 3F
09/12 15:31, 3F
推
09/12 16:35, , 4F
09/12 16:35, 4F
→
09/12 16:36, , 5F
09/12 16:36, 5F
→
09/12 17:57, , 6F
09/12 17:57, 6F
推
09/12 20:24, , 7F
09/12 20:24, 7F
→
09/12 23:06, , 8F
09/12 23:06, 8F
→
09/13 01:34, , 9F
09/13 01:34, 9F
→
09/13 01:34, , 10F
09/13 01:34, 10F
→
09/13 01:35, , 11F
09/13 01:35, 11F