要實現搜索結果分頁,可以按照以下步驟進行:
獲取搜索關鍵字和搜索選項。
根據關鍵字和選項執行搜索操作,獲取搜索結果。
根據每頁顯示的數量和當前頁碼,計算出需要顯示的搜索結果的起始位置。
使用LIMIT語句從數據庫中獲取指定數量的搜索結果。
在頁面上顯示搜索結果。
根據搜索結果的總數量和每頁顯示的數量,計算出總頁數。
生成分頁鏈接,讓用戶可以點擊切換到不同的頁碼。
處理用戶點擊分頁鏈接的邏輯,根據用戶選擇的頁碼重新執行搜索操作并顯示結果。
下面是一個簡單的示例代碼,演示了如何實現搜索結果分頁:
<?php
// 獲取搜索關鍵字和選項
$keyword = $_GET['keyword'];
$option = $_GET['option'];
// 執行搜索操作,獲取搜索結果
$results = search($keyword, $option);
// 設置每頁顯示的數量和當前頁碼
$perPage = 10;
$page = isset($_GET['page']) ? $_GET['page'] : 1;
// 計算搜索結果的起始位置
$start = ($page - 1) * $perPage;
// 使用LIMIT語句從數據庫中獲取指定數量的搜索結果
$resultsPerPage = query("SELECT * FROM search_results WHERE keyword = '$keyword' LIMIT $start, $perPage");
// 在頁面上顯示搜索結果
foreach ($resultsPerPage as $result) {
echo $result['title'] . '
';
echo $result['description'] . '
';
}
// 計算總頁數
$totalPages = ceil(count($results) / $perPage);
// 生成分頁鏈接
for ($i = 1; $i <= $totalPages; $i++) {
echo "<a href='search.php?keyword=$keyword&option=$option&page=$i'>$i</a> ";
}
// 處理用戶點擊分頁鏈接的邏輯
if (isset($_GET['page'])) {
$page = $_GET['page'];
$start = ($page - 1) * $perPage;
$resultsPerPage = query("SELECT * FROM search_results WHERE keyword = '$keyword' LIMIT $start, $perPage");
// 在頁面上顯示搜索結果
foreach ($resultsPerPage as $result) {
echo $result['title'] . '
';
echo $result['description'] . '
';
}
}
?>
請注意,以上示例中的search
函數和query
函數需要根據你的具體情況進行更改,以適應你的搜索功能和數據庫操作。