当前位置:首页 > PHP

php分页代码实现

2026-01-29 02:10:32PHP

PHP分页代码实现

分页功能是Web开发中常见的需求,以下是一个基本的PHP分页实现方法,适用于MySQL数据库。

数据库连接与查询

建立数据库连接并获取总记录数:

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);

$sql = "SELECT COUNT(*) as total FROM your_table";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$total_records = $row['total'];

分页参数设置

计算分页所需参数:

$records_per_page = 10;
$total_pages = ceil($total_records / $records_per_page);

$current_page = isset($_GET['page']) ? $_GET['page'] : 1;
$offset = ($current_page - 1) * $records_per_page;

数据查询

获取当前页数据:

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

显示分页导航

生成分页链接:

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

完整示例

将以上代码整合:

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

// 获取总记录数
$count_result = $conn->query("SELECT COUNT(*) as total FROM your_table");
$total_records = $count_result->fetch_assoc()['total'];

// 分页设置
$per_page = 10;
$total_pages = ceil($total_records / $per_page);
$page = isset($_GET['page']) ? $_GET['page'] : 1;
$offset = ($page - 1) * $per_page;

// 获取数据
$result = $conn->query("SELECT * FROM your_table LIMIT $offset, $per_page");

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

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

样式建议

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

安全注意事项

防止SQL注入:

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

高级分页功能

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

php分页代码实现

if ($page > 1) {
    echo "<a href='?page=".($page - 1)."'>Previous</a> ";
}
if ($page < $total_pages) {
    echo "<a href='?page=".($page + 1)."'>Next</a> ";
}

此实现提供了基本的分页功能,可根据实际需求进行调整和扩展。

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

相关文章

uniapp 分页组件

uniapp 分页组件

uniapp 分页组件实现方法 在uniapp中实现分页功能,可以通过自定义组件或使用第三方组件库完成。以下是几种常见实现方式: 自定义分页组件 创建一个名为uni-pagination的组件,模板…

vue elementui实现分页

vue elementui实现分页

Vue + ElementUI 分页实现方法 安装与引入 确保已安装 ElementUI,可通过 npm 或 yarn 安装: npm install element-ui 在 main.js 中全…

淘宝css代码制作

淘宝css代码制作

在淘宝店铺装修中,CSS代码用于自定义页面样式,提升视觉体验。以下是关键方法和注意事项: 自定义模块样式 通过淘宝旺铺的“自定义模块”功能,可以插入CSS代码。代码需包裹在<style>…

vue加载实现分页

vue加载实现分页

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

vue实现网页分页

vue实现网页分页

Vue 实现网页分页的方法 使用计算属性实现分页 在 Vue 中可以通过计算属性对数据进行分页处理。定义一个 currentPage 和 pageSize,利用计算属性返回当前页的数据。 data(…

vue完整实现分页

vue完整实现分页

Vue 分页组件实现 分页组件模板 分页组件通常包含页码按钮、上一页/下一页按钮和跳转功能。以下是一个基础模板结构: <template> <div class="pagina…