首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php分页问题

问php分页问题
EN

Stack Overflow用户
提问于 2010-07-28 15:53:30
回答 2查看 267关注 0票数 0

我有一个具有分页选项的php页面

我使用下面的sql语句来生成总页数

代码语言:javascript
复制
      $rowsPerPage=25;
      $pageNum = 1;
      if(isset($_GET['page']))
      {
      $pageNum = $_GET['page'];
      }
      $offset = ($pageNum - 1) * $rowsPerPage;

      $query   = "SELECT COUNT(id) AS numrows FROM TableA"
      $result  = mysql_query($query) or die('Error, query failed');
      $row     = mysql_fetch_array($result, MYSQL_ASSOC);
  $numrows = $row['numrows'];
  $maxPage = ceil($numrows/$rowsPerPage);

现在我有了下面的代码来编写下一页/上一页链接

代码语言:javascript
复制
       $page  = $pageNum - 1;
       $prev  = " <a  href=\"$self?page=$page\" class=\"RedNorm\">[Prev]</a> ";

       $page = $pageNum + 1;
      $next = " <a href=\"$self?page=$page\" class=\"RedNorm\">[Next]</a> ";

我的问题是:

当我使用像abc.php?m=1&page=2这样的页面传递任何查询语句时

单击上一页/下一页链接后,该查询字符串将不可用。

我能理解,问题出在

代码语言:javascript
复制
  $prev  = " <a  href=\"$self?page=$page\" class=\"RedNorm\">[Prev]</a> ";

语句

我如何才能获得页面名称加上所有的查询字符串,而不是$self,因为这只是获得页面名称。

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-28 16:02:47

只需将其他变量添加到链接即可。

如果你不知道它们是什么/可能是什么,你可以尝试这样做:

代码语言:javascript
复制
$q = "?";
foreach($_GET as $k=>$v) {
    if($k == "page") continue;
    $q .= htmlentities($k) . "=" . htmlentities($v) . "&amp;";
}

$page  = $pageNum - 1;
$prev  = " <a  href=\"$self${q}page=$page\" class=\"RedNorm\">[Prev]</a> ";

$page = $pageNum + 1;
$next = " <a href=\"$self${q}page=$page\" class=\"RedNorm\">[Next]</a> ";

这会将所有查询字符串变量附加到链接,以将其传递到下一页。

票数 2
EN

Stack Overflow用户

发布于 2010-07-28 16:21:09

您应该使用$SELF而不是$self。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3350889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档