当前位置:首页 > PHP

php实现表格分页代码

2026-02-14 01:51:27PHP

PHP实现表格分页的方法

在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 "<table border='1'>";
echo "<tr><th>ID</th><th>Name</th></tr>";

while($row = $result->fetch_assoc()) {
    echo "<tr>";
    echo "<td>".$row['id']."</td>";
    echo "<td>".$row['name']."</td>";
    echo "</tr>";
}

echo "</table>";

生成分页链接

创建分页导航:

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>";

完整示例

将所有代码整合成一个完整的示例:

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

// 分页逻辑
$records_per_page = 10;
$sql = "SELECT COUNT(*) as total FROM your_table";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$total_records = $row['total'];
$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 "<table border='1'>";
echo "<tr><th>ID</th><th>Name</th></tr>";

while($row = $result->fetch_assoc()) {
    echo "<tr>";
    echo "<td>".$row['id']."</td>";
    echo "<td>".$row['name']."</td>";
    echo "</tr>";
}

echo "</table>";

// 分页导航
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->close();
?>

样式优化

可以为分页添加CSS样式:

.pagination {
    margin-top: 20px;
}
.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注入
  • 考虑使用预处理语句提高安全性
  • 对于大型数据集,可以考虑使用AJAX实现无刷新分页
  • 可以添加"上一页"和"下一页"按钮增强用户体验

这种分页方法适用于大多数PHP网站,可以根据实际需求调整每页显示的记录数和样式。

php实现表格分页代码

标签: 分页表格
分享给朋友:

相关文章

国外vue实现表格控件

国外vue实现表格控件

Vue 表格控件实现方案 使用开源组件库(推荐) Element UI、Vuetify、Ant Design Vue 等主流库提供成熟的表格组件,支持排序、分页、筛选等功能。 Element UI…

vue实现子表格

vue实现子表格

Vue 实现子表格的方法 在 Vue 中实现子表格可以通过多种方式完成,以下是几种常见的方法: 使用嵌套组件 创建一个父表格组件和一个子表格组件,通过 props 将数据传递给子表格组件。父表格的每…

vue实现分页

vue实现分页

Vue 实现分页的方法 使用 Element UI 的分页组件 Element UI 提供了现成的分页组件 el-pagination,适合快速集成到 Vue 项目中。 安装 Element UI…

vue  实现分页

vue 实现分页

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

js 实现分页

js 实现分页

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

h5实现表格样式

h5实现表格样式

实现H5表格样式的方法 使用HTML和CSS创建基础表格 在HTML中,表格通过<table>标签定义,配合<tr>(行)、<td>(单元格)和<th&g…