我正在使用API,我可以访问当前页面网址和最终页面网址
我按$ page获取当前页面网址,按$ total获取最终页面网址
我通过$ page + 1获得下一页,
我需要将帖子导航器显示为
<< 1 2 3 4 5 .... 190 >>
假设190为最后一页,
问题在于,当我到达第190页时,分页显示<< 190 191 192 193 194 ... 190 >>
如何解决这个问题,因为190是最后一页,我需要在它之前显示页面,并且还要禁用&gt;&gt;接下来,
相同如果是第1页,我需要禁用&lt;&lt;按钮......
使用$ _GET请求提供所有页面数据,因此所有页面都相同...没有单独的主页或结束页面...
答案 0 :(得分:0)
您需要计算起始页,结束页并迭代它们。
例如,对于第一页,您应该从1开始到5,但是当5更少,然后是最大页面(190),您应该添加“...”和190.但是,因为起始页是1,你不应该允许“&lt;&lt;”链接。
如果您在第190页,结束页面可能是190 + 5 = 195.但是最大页面是190,设置为结束页面。因此,起始页面将是结束页面 - 5:190 - 5 = 185.因为您的结束页面是最大页面,请禁用“&gt;&gt;”链接。因为185大于1,所以可以添加“...”和1。
其他一切只是算法的一个小细节,以便更好看。
答案 1 :(得分:0)
你应该检查$ page == $ total然后将$ page减去1我假设您正在使用while循环或for循环来迭代它。并且还应该有一个终止条件,例如$ page&gt; = 1。 您只需使用循环和条件来解决您的问题。 防爆。伪码
$page = 200; // getting it by extracting the get request
$total = 200;
while($page >= $limit) //$limit can be defined by you upto which you want to iterate.
{
$page = $page - 1;//echo it in html
}