我正在研究如何在 html 中进行简单的分页,但我想我遗漏了一些东西。
我想出了如何LIMIT
使用当前页码和每页的最大行数。
我还找到了一些关于如何通过 css 显示链接的教程。例如
<ul id="mystyle">
<li class="previous">«Previous</li>
<li class="active">1</li>
<li><a href="?page=2">2</a></li>
<li><a href="?page=3">3</a></li>
<li><a href="?page=4">4</a></li>
<li><a href="?page=5">5</a></li>
<li><a href="?page=6">6</a></li>
<li><a href="?page=7">7</a></li>
<li class="next"><a href="?page=2">Next »</a></li>
</ul>
但是我对用户按下以在页面中选择的链接的显示感到困惑。当用户查看第一批行时,他应该看不到a Previous
,因为此时没有previous(我的意思是在第1页之前没有previous)。
所以对于最后一批他应该看不到Next
(至少是一个超链接),因为Next
在最后一页之后没有。但我对如何确定这一点感到困惑。
我能想到的唯一方法是,如果我这样做SELECT COUNT(*)
是为了获得我正在分页的结果集的总大小。但这不会破坏分页性能的目的。我经历过巨大的结果集SELECT COUNT(*)
需要花费大量时间(特别是如果我们有连接 - 我的意思是除了数据量之外)。
我需要帮助来理解如何构建算法以及让我感到困惑的细微之处。