提要分页PHP逻辑

提要分页PHP逻辑,php,pagination,Php,Pagination,不确定是否有人能帮上忙,但已经尝试了各种方法 而且似乎无法解决它。在寻找了相当多的 一点也没找到,我设法做了一个粗略的临时修复 但这是一种迂回的方式,并不理想 我试图显示提要的输出,并使用分页的示例代码 结果 示例代码可以正常工作并显示页面,但是 有两个问题: 1) 如果我将每页的项目数设置为示例10-如果 提要中有10个或更少的项,然后它不显示任何内容。如果有 例如,在提要中有五个条目,那么我需要设置 将每页的结果设置为4,这样它将创建两个页面,然后 展示。如果我将其设置为显示5或10,则不会

不确定是否有人能帮上忙,但已经尝试了各种方法 而且似乎无法解决它。在寻找了相当多的 一点也没找到,我设法做了一个粗略的临时修复 但这是一种迂回的方式,并不理想

我试图显示提要的输出,并使用分页的示例代码 结果

示例代码可以正常工作并显示页面,但是 有两个问题:

1) 如果我将每页的项目数设置为示例10-如果 提要中有10个或更少的项,然后它不显示任何内容。如果有 例如,在提要中有五个条目,那么我需要设置 将每页的结果设置为4,这样它将创建两个页面,然后 展示。如果我将其设置为显示5或10,则不会显示任何内容

2) 这可能与上述内容有关,但如果列表中有100个项目 feed和我将每页的项目数设置为10,然后它应该创建 10页。实际情况是,它创建了11页-第11页是 空白

下面是示例中的完整代码(抱歉长度):


~~~~标题~~~
~~~~标题~~~
~~~~描述~~~


~~~~开始记录~~~ ~~~~ ItemPubShortDate~~~~~~~ ItemPubShortTime~~~ ~~~~项目描述~~~
~~~结束项记录~~~
我知道很难通过上面的代码量发现任何东西 所以我知道这有点遥不可及


提前感谢您提供的任何帮助。

您的代码中有几个错误

首先,如果你有超过一个页面所需的feed,你只需显示页面! 如果您的页面数超过1页,则可以安全地
$onePage=0
,但最终您只需在这种情况下输出,而不是输出另一页:

<?php
if ($onePage == 0) {
  if (($startNumber <= $x) && ($x < $startNumber+$itemsPerPage)) {
?>
      <tr><td>~~~ItemPubShortDate~~~ ~~~ItemPubShortTime~~~</td></tr>
      <tr><td><a href="~~~ItemLink~~~">~~~ItemTitle~~~</a></td></tr>
      <tr><td>~~~ItemDescription~~~</td></tr>
      <tr><td><hr></td></tr>
<?php
  }
  $x++;
}
// Here the else is missing!
?>

~~~~ ItemPubShortDate~~~~~~~ ItemPubShortTime~~~
~~~~项目描述~~~

您的第二个问题是,如果有100个项目,它将创建11个页面,这与此有关:

// Next Page
if($startNumber + $itemsPerPage <= $numItems) {
    $pageString .= '<a href="'.$_SERVER['PHP_SELF'].'?'.$Qstring.'ItemNumber='.($startNumber + $itemsPerPage).'">Next</a>';
}
//下一页

如果($startNumber+$itemsPerPage很抱歉延迟回复-花了一点时间才将else语句正确。非常感谢您花时间回复-第一个问题马上就解决了,第二个问题在几个地方,但您的答案是正确的,我也在这些地方更改了。非常感谢您的帮助是的,没问题,我想在其他人的代码中发现这类错误似乎更容易。
// Next Page
if($startNumber + $itemsPerPage <= $numItems) {
    $pageString .= '<a href="'.$_SERVER['PHP_SELF'].'?'.$Qstring.'ItemNumber='.($startNumber + $itemsPerPage).'">Next</a>';
}