当前位置:首页 > PHP

php分页实现

2026-02-28 14:58:15PHP

基础分页实现

使用MySQL的LIMITOFFSET实现分页。获取当前页码$page和每页显示数量$perPage

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

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

计算总页数

查询总记录数并计算总页数:

$totalSql = "SELECT COUNT(*) as total FROM articles";
$totalResult = $conn->query($totalSql);
$totalRows = $totalResult->fetch_assoc()['total'];
$totalPages = ceil($totalRows / $perPage);

生成分页链接

创建简单的分页导航链接:

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

使用预处理语句防止SQL注入

改进SQL查询安全性:

$stmt = $conn->prepare("SELECT * FROM articles LIMIT ?, ?");
$stmt->bind_param("ii", $offset, $perPage);
$stmt->execute();
$result = $stmt->get_result();

分页样式优化

添加CSS样式美化分页导航:

.pagination a {
    display: inline-block;
    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;
}

高级分页功能

实现带省略号的分页导航:

php分页实现

function pagination($currentPage, $totalPages) {
    $range = 2;
    $html = '<div class="pagination">';

    if ($currentPage > 1) {
        $html .= '<a href="?page=1">&laquo;</a>';
        $html .= '<a href="?page='.($currentPage-1).'">&lsaquo;</a>';
    }

    for ($i = max(1, $currentPage - $range); $i <= min($currentPage + $range, $totalPages); $i++) {
        $active = $i == $currentPage ? ' class="active"' : '';
        $html .= '<a'.$active.' href="?page='.$i.'">'.$i.'</a>';
    }

    if ($currentPage < $totalPages) {
        $html .= '<a href="?page='.($currentPage+1).'">&rsaquo;</a>';
        $html .= '<a href="?page='.$totalPages.'">&raquo;</a>';
    }

    $html .= '</div>';
    return $html;
}

标签: 分页php
分享给朋友:

相关文章

vue 分页 实现

vue 分页 实现

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

php实现socket

php实现socket

PHP 实现 Socket 通信 PHP 可以通过 socket 扩展实现网络通信,支持 TCP/UDP 协议。以下是实现 Socket 通信的核心步骤和代码示例。 创建 TCP 服务器 // 创建…

php实现增删改查

php实现增删改查

以下是在PHP中实现增删改查(CRUD)操作的详细方法,以MySQL数据库为例: 数据库连接配置 创建config.php文件存储数据库连接信息: <?php $host = 'localh…

php 登录实现

php 登录实现

PHP 登录实现 PHP 登录功能通常包括用户认证、会话管理和安全性措施。以下是实现 PHP 登录功能的关键步骤。 数据库准备 创建一个用户表存储用户信息,通常包括用户名、密码(加密存储)和其他必要…

php验证码的实现

php验证码的实现

PHP 验证码实现方法 使用 GD 库生成基础验证码 创建画布并生成随机字符串作为验证码内容: session_start(); $width = 120; $height = 40; $image…

js 实现分页

js 实现分页

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