当前位置:首页 > PHP

php实现表格分页代码

2026-04-03 09:37:38PHP

实现表格分页的基本逻辑

在PHP中实现表格分页功能,通常需要结合数据库查询和前端分页控件。核心逻辑是通过SQL的LIMIT子句控制数据范围,配合页码参数实现分页切换。

数据库查询分页

通过LIMIT offset, count实现分页查询,其中offset是起始位置,count是每页显示的记录数。

$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$perPage = 10; // 每页显示10条记录
$offset = ($page - 1) * $perPage;

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

显示分页数据

将查询结果渲染为HTML表格:

echo '<table>';
while ($row = $result->fetch_assoc()) {
    echo '<tr>';
    echo '<td>'.$row['column1'].'</td>';
    echo '<td>'.$row['column2'].'</td>';
    echo '</tr>';
}
echo '</table>';

计算总页数

需要先获取总记录数以计算总页数:

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

生成分页导航

创建分页导航链接,允许用户切换页码:

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

完整示例代码

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

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

// 获取分页数据
$sql = "SELECT * FROM products LIMIT {$offset}, {$perPage}";
$result = $conn->query($sql);

// 显示表格
echo '<table border="1">';
echo '<tr><th>ID</th><th>Name</th><th>Price</th></tr>';
while ($row = $result->fetch_assoc()) {
    echo '<tr>';
    echo '<td>'.$row['id'].'</td>';
    echo '<td>'.$row['name'].'</td>';
    echo '<td>'.$row['price'].'</td>';
    echo '</tr>';
}
echo '</table>';

// 计算总页数
$totalResult = $conn->query("SELECT COUNT(*) as total FROM products");
$totalRows = $totalResult->fetch_assoc()['total'];
$totalPages = ceil($totalRows / $perPage);

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

前端样式建议

为分页导航添加基本CSS样式:

php实现表格分页代码

.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;
}

安全注意事项

  1. 始终对输入的页码参数进行验证和过滤
  2. 使用预处理语句防止SQL注入
  3. 对数据库查询错误进行适当处理

通过以上方法可以实现基本的PHP表格分页功能,可根据实际需求调整每页显示数量和分页导航样式。

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

相关文章

vue 实现分页

vue 实现分页

分页实现方法 在Vue中实现分页功能,可以通过计算属性和方法结合来实现。以下是一个典型的分页实现方式: 模板部分 <template> <div> <ul…

css制作表格

css制作表格

CSS 制作表格的方法 使用 CSS 可以灵活地创建和样式化表格,以下是几种常见的方法: 使用 HTML 表格标签结合 CSS 样式 通过 HTML 的 <table>、<tr&g…

jquery分页

jquery分页

jQuery分页的实现方法 jQuery分页可以通过多种方式实现,以下是几种常见的方法: 使用插件实现分页 jQuery有许多优秀的分页插件,如jQuery Pagination、DataTabl…

vue表格实现单选

vue表格实现单选

实现 Vue 表格单选功能 使用 v-model 绑定选中状态 在表格的每一行添加单选按钮或点击行触发选中,通过 v-model 绑定一个变量存储当前选中行的唯一标识(如 id)。 示例代码:…

css怎么制作表格

css怎么制作表格

使用HTML和CSS制作表格 在HTML中,表格由<table>标签定义,结合CSS可以灵活控制样式。 基本HTML结构: <table> <tr>…

js分页实现

js分页实现

分页的基本原理 分页的核心是通过计算当前页码和数据偏移量,从服务器或本地数据中截取对应范围的数据进行展示。通常需要以下参数:当前页码(currentPage)、每页条数(pageSize)、总数据量(…