PHP分页循环问题

时间:2016-04-23 18:50:13

标签: php pagination

我尝试像这样制作一个PHP分页:

$count = $this->dataBaseFunctions->countItems();
$resultperPage = 10;
$offset = 0;    
$adjacents = 3;
$totalPages = ceil(intval($count) / $resultperPage);


if (isset($_GET['offset'])) {
  $offset = trim($_GET['offset']);
}

 $j = $adjacents;
while ($j > 0) {
  if (($offset / 10) - 1 > 0) {
    echo '<a href="anypage/' . ($offset - 10 - ($j * 10)) . '" class="pagelink">' . ($offset - 10 - ($j * 10)) . '</a> ';        
  }
  $j--;
}

/*for ($j = $adjacents; $j > 0; $j--) {
  echo '<a href="anypage/' . ($offset - 10 - ($j * 10)) . '" class="pagelink">' . ($offset - 10 - ($j * 10)) . '</a> ';
}*/

echo '<a href="anypage/' . ($offset - 10) . '" class="pagelink current">[' . ($offset - 10) . '] </a> ';

for ($j = 1; $j < ($adjacents + 1); $j++) {
  echo '<a href="anypage/' . ($offset - 10 + ($j * 10)) . '" class="pagelink">' . ($offset - 10 + ($j * 10)) . '</a> ';
}

结果应如下所示(Brackets =当前clicket页面): [0] 1 2 3

当我点击&#34; 3&#34;它应该看起来像这样(到目前为止工作): 0 1 2 [3] 4 5 6

但是当我点击&#34; 1&#34;结果如下: -2 -1 0 [1] 2 3 4

&#34; 0&#34;不是问题,我只是回应了#39;它用于调试。 我知道我没有为不显示低于1的页面设置正确的条件,但我不知道如何使它正确。好像我的眼睛上有西红柿......回声仅供测试 - 后来我将整个分页链接保存到变量中,将其分配到页面底部。它是你在这里看到的一些调试代码,但它显示了我尝试做的事情。如果我可以改进这个问题,或者是否缺少类似信息,请告诉我:&#34;你为什么这样做($ offset / 10)-1&gt; 0&#34; ; - )

后来我需要在JS中做同样的事情,但我想我可以管理它,当我知道我在PHP版本中做错了什么。

*也许这是一个糟糕的想法,我试图在那里做什么?

1 个答案:

答案 0 :(得分:1)

这个应该可以解决问题:

  

现在包括$ adjacents

   prefsview=ViewPrefs()
   prefsview.register_observer(self.controller)
   prefsview.run()