【问题标题】:Use PHP to create new pages? [closed]使用 PHP 创建新页面? [关闭]
【发布时间】:2013-12-12 00:34:54
【问题描述】:

我有一个设备数据库。该数据库中有 972 个不同的项目。包括图像 url、资产编号、标题、描述、运输重量等。我有一个 php 脚本,它为每个项目创建一个表。但是,我不希望将所有 972 个项目都加载到一页上。有没有办法使用 PHP 来设置它,以便每 10 个项目或表格创建一个新页面,其中包含接下来的 10 个项目,然后是另一个页面,然后是另一个页面,直到它到达最后一个项目?星期五我必须把网站介绍给我的老板。任何帮助将不胜感激!

【问题讨论】:

  • 这称为分页。这是一个广泛讨论的话题
  • 看起来他知道它叫什么,因为他将它包含在标签中。

标签: php mysql database navigation pagination


【解决方案1】:

要使用 PHP/MySQL 进行分页,您需要执行以下操作:

  1. 提供通过 URL 查询字符串请求的页面(例如 ?page=1
  2. 在 SQL 查询中使用 LIMIT 和 OFFSET 来显示不同的“页面”
  3. 维护查询的 ORDER BY 部分,以便每个页面上的结果顺序相同
  4. (可选)具有确定最后一页是什么的机制,并防止查看超出该最后一页的页面。

为了让您走上正轨,您的代码应如下所示:

$limit = 10; // This never changes
$page = $_GET['page'];
if(!$page || !is_numeric($page) || $page < 1) {
    $page = 1;
}
$offset = ($page - 1) * $limit; // Start at record 10 instead of record 0
$results = $my_db_object->getResults("SELECT * FROM equipment ORDER BY id LIMIT $limit OFFSET $offset");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-01
    • 2012-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多