【问题标题】:Need code for pagination in PHP? [closed]需要 PHP 中的分页代码吗? [关闭]
【发布时间】:2010-02-25 00:28:19
【问题描述】:

我在 PHP 中的分页脚本/类/帮助程序中搜索数据数组,而不是 SQL 语句。有人知道解决方案吗?

【问题讨论】:

    标签: php pagination


    【解决方案1】:

    在我的脑海中,您可能已经看到了 LimitIterator,它是 SPL 的一部分。

    【讨论】:

      【解决方案2】:

      如果您正在寻找不涉及 SQL 的集合的分页,那么您可能会更幸运地实现具有大量结果集合的分页客户端。我只是在想,如果你有一个 php 数据的结果块,那么你真的不想一次又一次地重新加载它 - 通常 sql 会跟踪下一个/上一个结果。

      这个 jquery pagination plugin 可能有用吗?

      【讨论】:

      • 我用 jquery 分页插件试过了,但它失败了,我有很多数据
      【解决方案3】:

      您可以根据需要调整基本分页。 剪切的第二个代码将是您视图中的一部分。您可以轻松地使用它并使其更通用,以便在需要时使用。

      // !!! make sure that page is set as a url param
      if( !isset( $_GET[ 'page' ] )){
         $_GET[ 'page' ] = 0;
      }
      
      // find out how many rows there are total
      $totalRows = mysql_query( "SELECT COUNT(*) FROM table" ); 
      $totalRows = mysql_num_rows( $totalRows );
      // find out how many pages there will be
      $numPages = floor( $totalRows  / $perPage );
      
      $perPage = 15;
      $offset = floor( $_GET[ 'page' ] * $perPage );
      
      // get just the data you need for the page you are on
      $pageData = mysql_query( "SELECT * FROM table LIMIT $perPage OFFSET $offset" ); 
      

      然后在页面上创建链接

      // get the current url to replace
      
      for ($i=0; $i <= $numPages; $i++) {             
         if( $_GET[ 'page'] != $i ){          
             echo '<a href="/yourpage.php?page=' . $i + 1 . '">page '.( $i+1 ).'</a>';
          }else{      
             echo "page " . ( $i+1 );
         }
      }
      

      【讨论】:

        猜你喜欢
        • 2012-11-06
        • 2017-11-21
        • 1970-01-01
        • 2014-11-02
        • 1970-01-01
        • 2016-11-24
        • 1970-01-01
        • 2011-10-24
        • 1970-01-01
        相关资源
        最近更新 更多