溫馨提示×

PHP倒序分頁重復問題怎么解決

PHP
小億
90
2023-10-22 07:32:59
欄目: 編程語言

在 PHP 中,解決倒序分頁重復問題的一種常用方法是使用 SQL 語句的 LIMITORDER BY 子句配合使用。

假設你有一個數據庫表格 posts,其中包含了一些文章,每個文章都有一個自增的 id 字段。

要實現倒序分頁,首先需要根據 id 字段進行倒序排序,然后使用 LIMIT 子句指定每頁顯示的記錄數和偏移量。

下面是一個示例代碼:

// 每頁顯示的記錄數
$limit = 10;

// 當前頁碼
$page = isset($_GET['page']) ? $_GET['page'] : 1;

// 計算偏移量
$offset = ($page - 1) * $limit;

// 查詢文章數據
$query = "SELECT * FROM posts ORDER BY id DESC LIMIT $limit OFFSET $offset";
$result = mysqli_query($conn, $query);

// 輸出文章數據
while ($row = mysqli_fetch_assoc($result)) {
    // 輸出文章內容
    echo $row['content'];
}

// 輸出分頁鏈接
$query = "SELECT COUNT(*) as total FROM posts";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
$total_pages = ceil($row['total'] / $limit);

for ($i = 1; $i <= $total_pages; $i++) {
    echo "<a href='?page=$i'>$i</a> ";
}

在上面的示例代碼中,首先通過 LIMITOFFSET 子句實現了倒序分頁查詢,然后計算總頁數,并輸出了分頁鏈接。

這樣就可以實現倒序分頁,并且避免了重復數據的問題。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女