0

我的数据库中有很多项目,显示它们没有问题。只是我想通过对从数据库中获取的项目进行分组来组织它们。

例如,我有 50 个项目,我想先显示前 10 个项目,然后保留其余项目以供稍后显示。因此,如果用户单击“查看下一个项目”按钮或适当的数字(例如,10 个项目在“1”中,因此如果单击“2”,它应该显示第 2 个 10 个项目,直到所有项目都按 10 及其对应的编号组项目持有者显示),那么接下来的 10 个项目将被显示并替换前 10 个项目。简而言之,我希望项目按 10 显示。

我有这个当前代码:

PHP

$result = mysql_query("SELECT * FROM items");
$data = "";
while($row = mysql_fetch_array($result)) {
    $data .= "<a href='#' id='".$row['id']."' class='theitem'><img src='media/".$row['picture']."' /></a>";
}

HTML

<div id="itemsholder">
  <? echo $data; ?>
</div>

在下方应该有一个数字导航,该数字应该对应于设置超过 50 个项目的 10 个项目的数量。例如,有 50 个项目,因为我只想显示 10 个项目,我应该有 1、2、3、4、5 个链接,或者“显示下一个项目”按钮,这样每当用户点击它时,它就会显示下一个10 个项目,其余的。

PS:我对建议、建议和想法持开放态度。

谢谢,希望有人能帮忙,谢谢。

4

2 回答 2

1

这是一种常见的设计模式,称为分页。您可能想要谷歌 php 分页并消化一些结果。

简而言之,一般模式是确定总共有多少项目(通过 SELECT COUNT(*) 查询,或者对于非常大的数据集,通过将其存储在另一个地方并在添加或删除项目时对其进行更新)并使用LIMIT 子句运行查询。

例如,如果您想要每页 20 个项目并且您在第 5 页,而不是:

SELECT * FROM items;

改为运行这个:

SELECT * FROM items LIMIT 100, 20;

并将这些结果显示为页面。如果您总共有 $n 个项目,则页数将为:

floor(($n + 1) / 20);
于 2012-07-01T06:21:03.543 回答
0

使用分页,那里有很多,只需在 google 中搜索 em。这是帮助您入门的代码。

SELECT * FROM items LIMIT 100, 20;
于 2015-03-19T14:18:38.763 回答