973
技術社區[雲棲]
五環之歌之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