閱讀973 返回首頁    go 技術社區[雲棲]


五環之歌之PHP分頁

根據以往的經驗,對於很多初學者,分頁功能實現起來還是有一定的困難的,為了幫大家解決這樣的問題:特此獻上五環之歌。從此分頁功能便是如小嶽嶽唱歌一樣簡練,漂亮,精幹。哈哈,不閑扯了。正式進入千鋒PHP五環之歌之步驟實現分頁功能。
第一環:計算總的記錄數—即總共要顯示多少條數據
第二環: 每頁顯示的條數—即一般都是我們程序媛來規定每頁顯示幾條數據。
第三環: 計算總頁數—即根據以上兩個條件便可求出總的頁數,為了防止出現小數,我們都是向上取整。詳情見下麵代碼:
第四環: 顯示當前頁麵數—即我們一般在地址欄中需要傳遞一個分頁參數,例如p=5,則5就是當前的頁碼數。
第五環: 計算偏移量—即這是最關鍵的一步,以上的步驟就是為求偏移量做鋪墊的。偏移量=(當前頁碼數-1)* 每頁顯示的條數

以下是小妹做出的一個實例:
以上鏈接數據庫部分省略:
//查詢數據得到總共有多少條數據

$sql = “SELECT count() FROM test”;
$result = mysqli_query($con, $sql);
$count = mysqli_fetch_assoc($result);
$count = intval($count[‘count()’]);

//規定每頁顯示幾條數據

$perPage = 5;

//計算總頁數,並且向上取整

$pages = ceil($count/$perPage);

//顯示當前頁碼數

$curPage = isset($_GET[‘p’]) ? min(max((int)$_GET[‘p’],1),$pages) : 1;

//最後求偏移量

$offset = ($curPage - 1) * $perPage;

//最後通過查詢數據使用LIMIT來顯示每頁顯示多條數據即可。

$sql = “SELECT * FROM test ORDER BY id DESC LIMIT $offset,     
$perPage”;
$result = mysqli_query($con, $sql);

寫代碼就要像千鋒PHP口號一樣:傻X一樣的堅持,才能有牛X的結果。

最後更新:2017-06-07 20:31:50

  上一篇:go  麵向對象設計6大原則
  下一篇:go  最好用的mysql密碼忘記的解決方法