简单的 PHP 分页查询 MySQL 数据库的示例代码,同时使用 HTML 来显示数据和分页导航不显示什么原因
时间: 2024-03-14 18:45:50 浏览: 212
以下是一个简单的 PHP 分页查询 MySQL 数据库的示例代码:
```php
// 连接数据库
$host = 'localhost';
$username = 'username';
$password = 'password';
$dbname = 'database';
$conn = mysqli_connect($host, $username, $password, $dbname);
// 获取当前页码和每页显示的记录数
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;
$records_per_page = 10;
// 计算查询的起始位置
$offset = ($page - 1) * $records_per_page;
// 查询数据
$sql = "SELECT * FROM table_name LIMIT $offset, $records_per_page";
$result = mysqli_query($conn, $sql);
// 显示数据
echo '<table>';
while ($row = mysqli_fetch_assoc($result)) {
echo '<tr>';
echo '<td>' . $row['column1'] . '</td>';
echo '<td>' . $row['column2'] . '</td>';
echo '</tr>';
}
echo '</table>';
// 显示分页导航
$sql = "SELECT COUNT(*) AS total FROM table_name";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($result);
$total_records = $row['total'];
$total_pages = ceil($total_records / $records_per_page);
echo '<div>';
if ($page > 1) {
echo '<a href="?page=' . ($page - 1) . '">上一页</a>';
}
for ($i = 1; $i <= $total_pages; $i++) {
if ($i == $page) {
echo '<span>' . $i . '</span>';
} else {
echo '<a href="?page=' . $i . '">' . $i . '</a>';
}
}
if ($page < $total_pages) {
echo '<a href="?page=' . ($page + 1) . '">下一页</a>';
}
echo '</div>';
// 关闭数据库连接
mysqli_close($conn);
```
这段代码首先连接了 MySQL 数据库,然后获取当前页码和每页显示的记录数。接着计算了查询的起始位置,并使用 `LIMIT` 子句查询数据。然后使用 HTML 的表格标签来显示数据,并使用分页导航来分页显示数据。
如果你在浏览器中运行这段代码,但是没有显示任何东西,可能是因为:
- 代码中有语法错误或者逻辑错误,导致无法正常执行;
- 数据库连接失败,导致无法查询数据;
- 数据库中没有任何数据,导致无法显示任何内容;
- 没有设置正确的 URL 参数 `page`,导致无法正确地计算当前页码;
- 分页导航中的链接没有正确生成,导致无法正确地跳转到下一页或上一页。
你可以根据具体情况来检查代码并进行排查。
阅读全文