当前位置:首页 > PHP

php实现分页教程

2026-02-15 20:09:25PHP

PHP实现分页的基本步骤

使用PHP实现分页功能需要结合MySQL数据库查询和前端页面展示。以下是一个简单的分页实现方法。

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

$sql = "SELECT COUNT(*) FROM your_table";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_row($result);
$total_records = $row[0];
$total_pages = ceil($total_records / $per_page);

获取当前页码并计算LIMIT偏移量:

php实现分页教程

$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$start = ($page - 1) * $per_page;

查询当前页数据:

$sql = "SELECT * FROM your_table LIMIT $start, $per_page";
$result = mysqli_query($conn, $sql);

前端分页导航实现

在HTML中显示分页链接:

php实现分页教程

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

使用预处理语句增强安全性

为了防止SQL注入,建议使用预处理语句:

$stmt = $conn->prepare("SELECT * FROM your_table LIMIT ?, ?");
$stmt->bind_param("ii", $start, $per_page);
$stmt->execute();
$result = $stmt->get_result();

分页样式优化

添加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;
}

完整分页类实现

创建一个可重用的分页类:

class Pagination {
    private $total_records;
    private $per_page;

    public function __construct($total, $per_page) {
        $this->total_records = $total;
        $this->per_page = $per_page;
    }

    public function getTotalPages() {
        return ceil($this->total_records / $this->per_page);
    }

    public function getOffset($page) {
        return ($page - 1) * $this->per_page;
    }

    public function renderLinks($current_page, $url = '?page=') {
        $html = '<div class="pagination">';
        for ($i = 1; $i <= $this->getTotalPages(); $i++) {
            $class = $i == $current_page ? 'active' : '';
            $html .= "<a class='$class' href='{$url}{$i}'>{$i}</a> ";
        }
        $html .= '</div>';
        return $html;
    }
}

标签: 分页教程
分享给朋友:

相关文章

php实现分页

php实现分页

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

vue  实现分页

vue 实现分页

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

js 实现分页

js 实现分页

实现分页的基本逻辑 分页功能通常需要后端返回数据总量或总页数,前端根据当前页码和每页条数截取对应数据。以下是一个基于JavaScript的简单分页实现方案: 前端分页实现 假设已有从后端获取的完整数…

vue router实现分页

vue router实现分页

使用 Vue Router 实现分页 在 Vue.js 项目中,可以通过 Vue Router 结合分页组件实现分页功能。以下是实现分页的几种方法: 使用路由参数传递页码 在路由配置中定义一个动态参…

vue 分页功能实现

vue 分页功能实现

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

vue实现分页打印

vue实现分页打印

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