我从外部源获取数组值,然后将其转换为无序列表以显示在网页上。但有时列表的内容非常大,无法在单页上显示。是否可以对内容进行分页,以便每页显示10个列表项。
<div id="a">
<div id="object3">TRIVIA</div>
<div class="details">
<?php foreach ($tri as $key): echo "<ul><li>$key</li></ul>"; endforeach ?>
</div>
</div>
答案 0 :(得分:0)
是的,但它实际上需要编写一个分页器。
但是,您需要能够获得一个计数,并能够根据诸如?start = 10&amp; end = 20之类的网址字符串显示一系列结果。
其余的只是使用for循环或fore {(if(count<start)continue;)
和(if(count>end)break;)
您还需要生成至少前进和后退的链接,并且如果您处于总计数的开头或结尾,则不生成链接。
答案 1 :(得分:0)
您需要传递给脚本的唯一信息是页码,因为这是页面之间唯一的变化。
您需要了解其他一些信息,例如numberPerPage
,但它们会包含在您的脚本中,永远不会更改。
这是一个可以帮助你入门的MySQL语句:
SELECT columnList
FROM table
ORDER BY someColumn
LIMIT 10,5
LIMIT子句说跳过前10条记录,然后给我下一条5.这是使用MySQL后端的所有分页脚本的基础和起点。
那你怎么知道偏移?
通过我前面提到的外部信息,当前的页码,结合我前面提到的内部信息,每页的数量。
如果您想要查看第5页并且打算每页显示10个元素,那么很容易看到您想要从第41行开始:
您可以通过这种方式计算偏移量:
$offset = $numPerPage * ($curPage - 1)
在页面1上,偏移量将为0(这是您想要的)。
在第2页上,偏移量将为10,依此类推。
Here是指向更详尽的分页教程的链接。
答案 2 :(得分:0)