温馨提示×

php数据库搜索与分页

PHP
小樊
81
2024-12-24 05:52:09
栏目: 编程语言

在PHP中,实现数据库搜索和分页可以通过以下步骤完成:

  1. 连接数据库
  2. 编写SQL查询语句,包括搜索条件和分页参数
  3. 执行查询并获取结果
  4. 分页处理
  5. 显示结果

以下是一个简单的示例:

<?php
// 数据库配置
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

// 搜索参数
$search = isset($_GET['search']) ? $_GET['search'] : '';
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;
$limit = 10; // 每页显示的记录数
$offset = ($page - 1) * $limit;

// SQL查询语句
$sql = "SELECT * FROM myTable WHERE myColumn LIKE '%$search%' LIMIT $offset, $limit";

// 执行查询
$result = $conn->query($sql);

// 分页处理
$totalRows = $conn->query("SELECT COUNT(*) FROM myTable WHERE myColumn LIKE '%$search%'");
$totalPages = ceil($totalRows->fetch_row()[0] / $limit);

// 显示结果
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} else {
    echo "0 结果";
}

// 显示分页链接
for ($i = 1; $i <= $totalPages; $i++) {
    echo "<a href='?search=$search&page=$i'>$i</a> ";
}

// 关闭连接
$conn->close();
?>

这个示例中,我们首先连接到数据库,然后根据搜索参数和分页参数构建SQL查询语句。接着执行查询并获取结果,最后显示结果和分页链接。请注意,为了防止SQL注入,建议使用预处理语句和参数化查询。

0