快速上手範例
<?php
include("inc/PageQuery.inc");
$pq = new PageQuery(2); // 每頁 2 筆
$pq->myQuery("SELECT * FROM users");
while ($row = mysql_fetch_array($pq->result)) {
echo $row["id"] . ", " . $row["Username"] . ", " . $row["PassWord"] . "<br>";
}
echo $pq->PageLegend(); // 輸出分頁導航列
?>
核心方法說明
- PageQuery($pageLine):建構子,設定每頁筆數。
- myQuery($sql):執行查詢,自動計算總筆數、總頁數、當前頁碼與 LIMIT 子句。
- PageLegend():回傳 HTML 分頁導航(首頁、上頁、下頁、尾頁、頁碼統計)。
- getTotal() / getTotalPages() / getCurrenPages():取得總筆數、總頁數、當前頁碼。
運作原理
- 透過
$_GET['offset'] 取得當前偏移量。
- 以
SELECT COUNT(*) FROM ... 取得總筆數。
- 計算
LIMIT offset, pageSize 並執行實際查詢。
- 產生分頁連結時保留原查詢字串 (
QUERY_STRING)。
注意事項
- 需搭配
dbClass.inc 提供資料庫連線功能。
- 適用於中小型資料表;大量資料建議使用延遲關聯或游標分頁優化。
- PHP 5.5+ 建議改用
mysqli 或 PDO,原 mysql_* 函數已棄用。