您需要使用LIMIT 和OFFSET 来完成此操作。
假设您一次抓取 10 条记录,您将像这样提供您的 OFFSET,LIMIT:
结果首页
$result = mysqli_query($con,"SELECT * FROM backend_account WHERE archives = '0' ORDER BY account_id DESC LIMIT 0,10 ");
偏移量从零开始,因此这将从第一条记录开始并抓取 10 条记录。
结果的第二页
$result = mysqli_query($con,"SELECT * FROM backend_account WHERE archives = '0' ORDER BY account_id DESC LIMIT 10,10 ");
这次偏移量是10(第11条记录),抓取10条记录
结果的第三页
$result = mysqli_query($con,"SELECT * FROM backend_account WHERE archives = '0' ORDER BY account_id DESC LIMIT 20,10 ");
本次偏移量为20(第21条)记录,抓取10条记录。
因此,您需要将偏移量传递到同一页面。在构建分页时,您可以像这样设置链接:
<?php
// If page is supplied set offset or default to zero for first page
$page = ($_GET['page']) ? ($_GET['page'] * 10) - 10 : 0;
$result = mysqli_query($con,"SELECT * FROM backend_account WHERE archives = '0' ORDER BY account_id DESC LIMIT $page,10 ");
<ul class="pagination">
<li><a href="<?= $_SERVER['PHP_SELF']?page=1 ?>">1</a></li>
<li><a href="<?= $_SERVER['PHP_SELF']?page=2 ?>">2</a></li>
<li><a href="<?= $_SERVER['PHP_SELF']?page=3 ?>">3</a></li>
<li><a href="<?= $_SERVER['PHP_SELF']?page=4 ?>">4</a></li>
<li><a href="<?= $_SERVER['PHP_SELF']?page=5 ?>">5</a></li>
</ul>
这是一个非常简单的例子来展示它是如何工作的。在生产环境中,我建议使用 PHP 生成分页,并提供额外的逻辑以使用 map 方法或 foreach 循环将 active 类添加到 li 以创建您的列表项。