当前位置:首页 > PHP

php实现分页步骤

2026-01-30 07:35:17PHP

PHP实现分页的步骤

数据库查询与分页逻辑

获取当前页码,通常通过$_GET参数传递。默认设置为第一页:

$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$perPage = 10; // 每页显示数量
$offset = ($page - 1) * $perPage;

查询数据库时使用LIMITOFFSET分页:

$sql = "SELECT * FROM table_name LIMIT $perPage OFFSET $offset";
$result = $conn->query($sql);

计算总页数

获取总记录数并计算总页数:

$total = $conn->query("SELECT COUNT(*) FROM table_name")->fetch_row()[0];
$totalPages = ceil($total / $perPage);

生成分页链接

创建分页导航HTML,包含页码和跳转链接:

echo '<div class="pagination">';
for ($i = 1; $i <= $totalPages; $i++) {
    echo '<a href="?page=' . $i . '">' . $i . '</a>';
}
echo '</div>';

样式优化与功能增强

添加当前页高亮样式和禁用不可用链接:

echo '<div class="pagination">';
if ($page > 1) {
    echo '<a href="?page=' . ($page - 1) . '">上一页</a>';
}
for ($i = 1; $i <= $totalPages; $i++) {
    $active = $i == $page ? ' class="active"' : '';
    echo '<a href="?page=' . $i . '"' . $active . '>' . $i . '</a>';
}
if ($page < $totalPages) {
    echo '<a href="?page=' . ($page + 1) . '">下一页</a>';
}
echo '</div>';

安全性处理

对输入参数进行过滤和验证:

$page = filter_input(INPUT_GET, 'page', FILTER_VALIDATE_INT, [
    'options' => [
        'default' => 1,
        'min_range' => 1
    ]
]);

完整示例代码

php实现分页步骤

$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$perPage = 10;
$offset = ($page - 1) * $perPage;

$sql = "SELECT * FROM table_name LIMIT $perPage OFFSET $offset";
$result = $conn->query($sql);

$total = $conn->query("SELECT COUNT(*) FROM table_name")->fetch_row()[0];
$totalPages = ceil($total / $perPage);

echo '<div class="pagination">';
if ($page > 1) {
    echo '<a href="?page=' . ($page - 1) . '">上一页</a>';
}
for ($i = 1; $i <= $totalPages; $i++) {
    $active = $i == $page ? ' class="active"' : '';
    echo '<a href="?page=' . $i . '"' . $active . '>' . $i . '</a>';
}
if ($page < $totalPages) {
    echo '<a href="?page=' . ($page + 1) . '">下一页</a>';
}
echo '</div>';

标签: 分页步骤
分享给朋友:

相关文章

vue实现分页

vue实现分页

Vue 实现分页的方法 使用 Element UI 的分页组件 Element UI 提供了现成的分页组件 el-pagination,适合快速集成到 Vue 项目中。 安装 Element UI:…

react 如何分页

react 如何分页

分页实现方法 在React中实现分页功能可以通过多种方式完成,具体取决于数据来源(如API或本地数据)和UI库的选择。以下是常见的实现方法: 使用本地数据分页 对于存储在组件状态或Context中…

vue实现搜索分页

vue实现搜索分页

实现搜索分页的基本思路 在Vue中实现搜索分页功能通常需要结合以下几个关键点:数据绑定、搜索过滤、分页逻辑处理。以下是一个完整的实现方案。 数据准备与绑定 定义数据列表和分页相关变量,通常包括当前页…

vue实现分页打印

vue实现分页打印

实现分页打印的基本思路 在Vue中实现分页打印功能通常需要结合CSS的分页控制属性和JavaScript的打印API。核心是通过CSS的@media print媒体查询和page-break相关属性控…

vue分页怎么实现

vue分页怎么实现

Vue 分页实现方法 使用 Element UI 的分页组件 Element UI 提供了现成的分页组件 el-pagination,适合快速集成。需要先安装 Element UI 库。 <t…

vue 实现表格分页

vue 实现表格分页

Vue 实现表格分页的方法 使用 Element UI 的分页组件 Element UI 提供了现成的分页组件 el-pagination,结合 el-table 可以快速实现表格分页功能。 安装…