当前位置:首页 > PHP

php分页代码简单实现

2026-04-02 19:51:09PHP

基本分页实现

使用PHP和MySQL实现分页功能,需要结合SQL的LIMIT子句。以下是一个基础示例:

<?php
// 数据库连接
$conn = new mysqli('localhost', 'username', 'password', 'database');
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// 获取当前页码
$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$perPage = 10; // 每页显示条数
$start = ($page > 1) ? ($page - 1) * $perPage : 0;

// 查询数据总数
$total = $conn->query("SELECT COUNT(*) FROM table_name")->fetch_row()[0];
$pages = ceil($total / $perPage);

// 查询当前页数据
$result = $conn->query("SELECT * FROM table_name LIMIT $start, $perPage");
?>

<!-- 显示数据 -->
<?php while ($row = $result->fetch_assoc()): ?>
    <div><?= $row['column_name'] ?></div>
<?php endwhile; ?>

<!-- 分页导航 -->
<div class="pagination">
    <?php for ($i = 1; $i <= $pages; $i++): ?>
        <a href="?page=<?= $i ?>" <?= ($i == $page) ? 'class="active"' : '' ?>>
            <?= $i ?>
        </a>
    <?php endfor; ?>
</div>

使用预处理语句

为提高安全性,建议使用预处理语句:

php分页代码简单实现

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

分页样式优化

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

php分页代码简单实现

.pagination {
    margin-top: 20px;
}
.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;
}
.pagination a:hover:not(.active) {
    background-color: #ddd;
}

分页函数封装

将分页逻辑封装成可重用函数:

function getPagination($conn, $table, $perPage = 10) {
    $page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
    $start = ($page > 1) ? ($page - 1) * $perPage : 0;

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

    $result = $conn->query("SELECT * FROM $table LIMIT $start, $perPage");

    return [
        'data' => $result,
        'page' => $page,
        'pages' => $pages
    ];
}

AJAX分页实现

使用jQuery实现无刷新分页:

$(document).on('click', '.pagination a', function(e) {
    e.preventDefault();
    var page = $(this).attr('href').split('page=')[1];

    $.ajax({
        url: 'get_data.php',
        type: 'GET',
        data: {page: page},
        success: function(data) {
            $('#content').html(data);
        }
    });
});

标签: 分页代码
分享给朋友:

相关文章

vue本地查询代码实现

vue本地查询代码实现

Vue 本地查询代码实现 在Vue中实现本地查询功能,可以通过以下几种方式实现,具体取决于数据源和查询需求。 使用计算属性进行本地查询 计算属性是Vue中处理响应式数据查询的高效方式,适合基于现有数…

h5实现响应式代码

h5实现响应式代码

响应式设计基础 HTML5实现响应式设计主要通过媒体查询(Media Queries)、弹性布局(Flexbox)、网格布局(Grid)和视口设置(Viewport Meta Tag)等技术。核心目标…

h5实现左右分页

h5实现左右分页

实现左右分页的HTML5方法 在HTML5中实现左右分页效果可以通过多种方式完成,以下是几种常见的方法: 使用CSS Flexbox布局 Flexbox是一种现代的布局方式,可以轻松实现左右分页效果…

react如何实现分页

react如何实现分页

实现分页的基本思路 在React中实现分页通常需要以下几个核心步骤:管理当前页码状态、计算分页数据、渲染分页控件。以下是一个典型的分页实现方法。 管理分页状态 使用React的useState钩子来…

php分页功能的实现

php分页功能的实现

分页功能的基本原理 分页功能的核心是通过SQL的LIMIT子句实现数据分段查询。LIMIT接受两个参数:起始位置偏移量和每页记录数。例如查询第2页(每页10条)的SQL语句为: SELECT * F…

vue加载实现分页

vue加载实现分页

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