当前位置:首页 > PHP

php分页简单实现

2026-02-16 13:57:55PHP

PHP 分页实现方法

基本分页逻辑

通过计算总记录数、每页显示数量和当前页码实现分页。需要以下关键变量:

$total_records = 100; // 总记录数
$per_page = 10;      // 每页显示数量
$current_page = isset($_GET['page']) ? (int)$_GET['page'] : 1; // 当前页码
$total_pages = ceil($total_records / $per_page); // 总页数

数据库查询分页

结合 MySQL 的 LIMIT 子句实现数据分页查询:

$offset = ($current_page - 1) * $per_page;
$sql = "SELECT * FROM table_name LIMIT $offset, $per_page";
$result = mysqli_query($conn, $sql);

分页链接生成

创建可点击的分页导航链接:

for ($i = 1; $i <= $total_pages; $i++) {
    echo "<a href='?page=$i'>$i</a> ";
}

完整示例代码

// 连接数据库
$conn = mysqli_connect("localhost", "username", "password", "database");

// 获取总记录数
$count_result = mysqli_query($conn, "SELECT COUNT(*) FROM products");
$total_records = mysqli_fetch_array($count_result)[0];

// 分页参数
$per_page = 5;
$current_page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$total_pages = ceil($total_records / $per_page);

// 数据查询
$offset = ($current_page - 1) * $per_page;
$sql = "SELECT * FROM products LIMIT $offset, $per_page";
$result = mysqli_query($conn, $sql);

// 显示数据
while ($row = mysqli_fetch_assoc($result)) {
    echo $row['product_name']."<br>";
}

// 分页导航
for ($i = 1; $i <= $total_pages; $i++) {
    echo "<a href='?page=$i'".($i == $current_page ? " class='active'" : "").">$i</a> ";
}

分页样式优化

添加 CSS 样式提升分页导航视觉效果:

.pagination a {
    padding: 8px 16px;
    text-decoration: none;
    border: 1px solid #ddd;
    margin: 0 4px;
}
.pagination a.active {
    background-color: #4CAF50;
    color: white;
    border: 1px solid #4CAF50;
}
.pagination a:hover:not(.active) {
    background-color: #ddd;
}

分页安全考虑

对页码参数进行验证和过滤:

$current_page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
if ($current_page < 1) $current_page = 1;
if ($current_page > $total_pages) $current_page = $total_pages;

分页扩展功能

添加上一页和下一页按钮:

if ($current_page > 1) {
    echo "<a href='?page=".($current_page - 1)."'>上一页</a> ";
}
if ($current_page < $total_pages) {
    echo "<a href='?page=".($current_page + 1)."'>下一页</a>";
}

php分页简单实现

标签: 分页简单
分享给朋友:

相关文章

css3制作简单动画

css3制作简单动画

CSS3 制作简单动画的方法 CSS3 提供了多种方式制作动画,主要通过 transition、transform 和 animation 属性实现。以下是几种常见的实现方法。 使用 transi…

php实现分页

php实现分页

PHP实现分页的基本方法 使用LIMIT和OFFSET进行数据库查询分页。通过计算当前页码和每页显示数量,动态生成SQL语句。 $page = isset($_GET['page']) ? (int…

vue  实现分页

vue 实现分页

实现分页功能 在Vue中实现分页功能通常需要结合后端API或前端数据处理。以下是两种常见的实现方式: 前端分页实现 适用于数据量较小的情况,所有数据一次性加载到前端后进行分页处理: <…

vue实现页面分页

vue实现页面分页

Vue实现页面分页的方法 使用Element UI的分页组件 Element UI提供了现成的分页组件el-pagination,适合快速集成。以下是一个示例代码: <template>…

vue 分页功能实现

vue 分页功能实现

分页功能实现方法 使用 Element UI 的分页组件 Element UI 提供了现成的分页组件 el-pagination,可以快速实现分页功能。 安装 Element UI: npm…

vue加载实现分页

vue加载实现分页

Vue 实现分页加载的方法 使用 Element UI 的分页组件 安装 Element UI 后,可以直接使用其分页组件。在模板中添加分页组件,并绑定相关事件和数据。 <template&g…