在PHP中实现分页查询,通常需要以下几个步骤:
- 连接数据库
- 计算总记录数
- 计算总页数
- 获取当前页数
- 编写SQL查询语句,包含分页条件
- 执行查询并处理结果
以下是一个简单的示例,展示了如何使用PHP和MySQL实现分页查询:
connect_error) { die("连接失败: " . $conn->connect_error); } // 设置字符集为utf8,防止中文乱码 $conn->set_charset("utf8"); // 当前页数,默认为1 $page = isset($_GET['page']) ? intval($_GET['page']) : 1; // 每页显示的记录数,默认为10 $limit = 10; // 计算偏移量 $offset = ($page - 1) * $limit; // 计算总记录数 $sql_count = "SELECT COUNT(*) FROM myTable"; $result_count = $conn->query($sql_count); $row_count = $result_count->fetch_row()[0]; // 计算总页数 $total_pages = ceil($row_count / $limit); // 编写分页查询语句 $sql_page = "SELECT * FROM myTable LIMIT $offset, $limit"; $result_page = $conn->query($sql_page); // 处理结果 if ($result_page->num_rows > 0) { while($row = $result_page->fetch_assoc()) { echo "id: " . $row["id"]. " - Name: " . $row["name"]. "
"; } } else { echo "0 结果"; } // 分页导航 for ($i = 1; $i <= $total_pages; $i++) { echo "$i "; } // 关闭连接 $conn->close(); ?>
在这个示例中,我们首先连接到MySQL数据库,然后根据当前页数和每页显示的记录数计算偏移量。接着,我们编写一个SQL查询语句,使用LIMIT
子句来获取当前页的数据。最后,我们处理查询结果并显示出来,同时提供一个分页导航,允许用户点击页码来切换不同的页面。