PHP分页数据计数显示在每一页

mdkamrul

我想显示分页数据,例如显示16中的1-5。我正在尝试如下

    $nb_elem_per_page = 3;
    $page = isset($_GET['pg'])?intval($_GET['pg']):0;
    $data = $aawp_table['products'] ;
    $number_of_pages = ceil(count($data)/$nb_elem_per_page);
    $offset = ($page - 1) * $nb_elem_per_page;

Displaying <?php echo  $offset .' - '.$nb_elem_per_page .' of ' . count($data); ?>

但是我没有得到适当的结果

系统调用

您可能将$offsetif设为负值($page - 1)

您可以删除它,它将起作用。

代码:

$nb_data = 20;
$nb_elem_per_page = 3;
$page = isset($_GET['pg']) ? intval($_GET['pg']) : 0;
$number_of_pages = ceil($nb_data / $nb_elem_per_page);
$offset = $page * $nb_elem_per_page;
echo  $offset .' - ' . $nb_elem_per_page .' of ' . $nb_data;
  • 如果pg未定义,结果将是0 - 3 of 20
  • 如果pg为0,结果将为0 - 3 of 20
  • 如果pg为1,结果将为3 - 3 of 20
  • 等等...

请注意,您应该测试是否$page小于$number_of_pages,以免走得太远或小于0。

编辑更完整的代码:

function run_pager($pg = null)
{
    $nb_data = 20;
    $nb_elem_per_page = 3;
    $number_of_pages = ceil($nb_data / $nb_elem_per_page);
    $page = isset($pg) ? intval($pg) : 0;
    if ($page < 0) $page = 0;
    if ($page >= $number_of_pages) $page = $number_of_pages - 1;
    $offset = $page * $nb_elem_per_page;
    $end = $offset + $nb_elem_per_page;
    if ($end > $nb_data) $end = $nb_data;
    return ($offset + 1) .' - ' . ($end) .' of ' . $nb_data;
}
for ($i=0;$i<10;$i++) {
    echo "i=$i : " . run_pager($i) . PHP_EOL;    
}

输出:

i=0 : 1 - 3 of 20
i=1 : 4 - 6 of 20
i=2 : 7 - 9 of 20
i=3 : 10 - 12 of 20
i=4 : 13 - 15 of 20
i=5 : 16 - 18 of 20
i=6 : 19 - 20 of 20

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用 datatable() 显示最后一页数据

来自分类Dev

div中显示上一页,并显示最后一页数据表

来自分类Dev

如何一次获取一页数据

来自分类Dev

分页显示数据-一次获取全部数据还是每一页获取一部分?

来自分类Dev

Angular.js-使用服务加载数据将显示前一页数据而不是当前页面数据

来自分类Dev

Angular.js-使用服务加载数据将显示前一页数据而不是当前页面数据

来自分类Dev

PHP-分页最后一页?

来自分类Dev

在分页jQuery数据表的最后一页上显示一行

来自分类Dev

分页数据表,通过按指定行中的按钮获取行数据,仅在第一页中有效

来自分类Dev

如果仅返回一页(Php),则不显示分页

来自分类Dev

分页/上一页和下一页链接未显示

来自分类Dev

Codeigniter分页结果不显示在下一页

来自分类Dev

显示cakephp中分页项的最后一页

来自分类Dev

分页未显示最后一页的1

来自分类Dev

App Engine数据存储分页-上一页

来自分类Dev

TMDB API搜索功能仅提供一页数据

来自分类Dev

BeautifulSoup-刮取多个页面但上一页数据未存储在列表中

来自分类Dev

通过硒和请求获取下一页数据

来自分类Dev

获取下一页数据时出现平面列表错误

来自分类Dev

如何找到分页集的每一页所覆盖的字段范围?

来自分类Dev

php-来自数组的分页数据

来自分类Dev

使用 PHP 遍历分页数据 JSON

来自分类Dev

PHP MYSQL从表到另一页显示相同的数据

来自分类Dev

Scrapy-从分页中仅从第一页而不是从“下一页”中刮取数据

来自分类Dev

数据库输出每一页的每一行

来自分类Dev

Symfony 3 - 除了一页之外,导航栏在每一页上都能正确显示?

来自分类Dev

Instagram API分页-上一页

来自分类Dev

分页的下一页链接

来自分类Dev

一页滚动插件分页

Related 相关文章

  1. 1

    使用 datatable() 显示最后一页数据

  2. 2

    div中显示上一页,并显示最后一页数据表

  3. 3

    如何一次获取一页数据

  4. 4

    分页显示数据-一次获取全部数据还是每一页获取一部分?

  5. 5

    Angular.js-使用服务加载数据将显示前一页数据而不是当前页面数据

  6. 6

    Angular.js-使用服务加载数据将显示前一页数据而不是当前页面数据

  7. 7

    PHP-分页最后一页?

  8. 8

    在分页jQuery数据表的最后一页上显示一行

  9. 9

    分页数据表,通过按指定行中的按钮获取行数据,仅在第一页中有效

  10. 10

    如果仅返回一页(Php),则不显示分页

  11. 11

    分页/上一页和下一页链接未显示

  12. 12

    Codeigniter分页结果不显示在下一页

  13. 13

    显示cakephp中分页项的最后一页

  14. 14

    分页未显示最后一页的1

  15. 15

    App Engine数据存储分页-上一页

  16. 16

    TMDB API搜索功能仅提供一页数据

  17. 17

    BeautifulSoup-刮取多个页面但上一页数据未存储在列表中

  18. 18

    通过硒和请求获取下一页数据

  19. 19

    获取下一页数据时出现平面列表错误

  20. 20

    如何找到分页集的每一页所覆盖的字段范围?

  21. 21

    php-来自数组的分页数据

  22. 22

    使用 PHP 遍历分页数据 JSON

  23. 23

    PHP MYSQL从表到另一页显示相同的数据

  24. 24

    Scrapy-从分页中仅从第一页而不是从“下一页”中刮取数据

  25. 25

    数据库输出每一页的每一行

  26. 26

    Symfony 3 - 除了一页之外,导航栏在每一页上都能正确显示?

  27. 27

    Instagram API分页-上一页

  28. 28

    分页的下一页链接

  29. 29

    一页滚动插件分页

热门标签

归档