php实现网页数据查询
PHP 实现网页数据查询的方法
连接数据库
使用 PHP 的 mysqli 或 PDO 扩展连接数据库。以下是一个使用 mysqli 的示例代码:
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database_name";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
执行查询
通过 SQL 语句从数据库中查询数据。以下是一个简单的查询示例:
$sql = "SELECT id, name, email FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 输出数据
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
}
} else {
echo "0 结果";
}
使用预处理语句
为了防止 SQL 注入,建议使用预处理语句。以下是使用 mysqli 预处理语句的示例:
$stmt = $conn->prepare("SELECT id, name, email FROM users WHERE id = ?");
$stmt->bind_param("i", $id);
$id = 1;
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
}
$stmt->close();
关闭数据库连接
查询完成后,关闭数据库连接以释放资源:
$conn->close();
结合 HTML 表单实现动态查询
通过 HTML 表单接收用户输入,动态查询数据库:
<form method="post" action="query.php">
<input type="text" name="search" placeholder="输入姓名">
<input type="submit" value="查询">
</form>
在 query.php 中处理查询:
$search = $_POST['search'];
$stmt = $conn->prepare("SELECT id, name, email FROM users WHERE name LIKE ?");
$search = "%" . $search . "%";
$stmt->bind_param("s", $search);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
}
$stmt->close();
$conn->close();
使用 AJAX 实现无刷新查询
结合 JavaScript 和 AJAX 实现无刷新数据查询:
function searchData() {
var search = document.getElementById('search').value;
var xhr = new XMLHttpRequest();
xhr.open("POST", "query.php", true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
document.getElementById('result').innerHTML = xhr.responseText;
}
};
xhr.send("search=" + search);
}
在 query.php 中处理 AJAX 请求:

$search = $_POST['search'];
$stmt = $conn->prepare("SELECT id, name, email FROM users WHERE name LIKE ?");
$search = "%" . $search . "%";
$stmt->bind_param("s", $search);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
}
$stmt->close();
$conn->close();
以上方法涵盖了从基础到高级的 PHP 网页数据查询实现方式,可以根据实际需求选择合适的方法。






