使用“更多”按钮增加数字

时间:2013-05-28 21:38:23

标签: php

我正在写一个看起来像这样的脚本。

$num = 1;
while($num <= 10) {
    echo $num;
    $num++;
}

唯一的问题是只会显示1-10。我想要一个“更多”按钮,它将显示下一组10.因此输出将是..

12345678910

更多

1234567891011121314151617181920

真的坚持这个...我将使用它在我的网站上导入Tumblr feed,但它需要数字,我不知道如何做这样的事情。

2 个答案:

答案 0 :(得分:1)

  • $num存储在$_SESSION中,以便在页面访问期间保持不变。

  • 或者,或许更好的是,将其设为网址参数,以便用户访问your_page.php?page=30,然后使用$_GET["page"]作为$num

答案 1 :(得分:0)

你所描述的是分页。

您在第1页上显示10个数字,在第2页上显示10个数字等。

每个页面都以起始编号开头,并保留偏移项目数。

这通常使用?page = X HTTP GET参数实现。代码看起来像这样:

$offset = 10;

$page = 1;
if (isset($_GET['page']) && is_numeric($_GET['page'])) {
  $page = $_GET['page'];
}
$start_number = ($page - 1) * $offset;
$end_number   = $start_number + 10;

$num = $start_number;
while ($num <= $end_number) {
  echo $num;
  $num++
  echo sprintf('<a href="/script.php?page=%s">More</a>', $page + 1)
}

编辑: 我刚刚意识到你希望加载越来越多的数据(所以不仅仅是10项,而是10,20,30等)。只有当你使用Javascript和Ajax动态加载新项目时才有时间这样做,但即便如此,你应该删除旧项目(因此页面不会变得很大)。但是,如果您正在重新加载页面,则加载页面需要更长时间,而对用户没有任何实际好处。