在 PHP 中,如果你想查询数据库并排除某些字段不等于特定值的记录,可以使用 SQL 查询语句中的 WHERE
子句来实现。假设你使用的是 MySQL 数据库,以下是一个示例:
users
表中 status
字段不等于 inactive
的记录<?php
// 假设你已经连接到数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// SQL 查询语句
$sql = "SELECT * FROM users WHERE status != 'inactive'";
// 执行查询
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 输出数据
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Status: " . $row["status"]. "<br>";
}
} else {
echo "0 结果";
}
// 关闭连接
$conn->close();
?>
SQL 查询语句:SELECT * FROM users WHERE status != 'inactive'
SELECT * FROM users
:从 users
表中选择所有字段。WHERE status != 'inactive'
:过滤掉 status
字段不等于 inactive
的记录。执行查询:使用 $conn->query($sql)
执行 SQL 查询。
处理结果:通过 $result->fetch_assoc()
获取每一行的数据,并进行处理。
$stmt = $conn->prepare("SELECT * FROM users WHERE status != ?");
$status = 'inactive';
$stmt->bind_param("s", $status);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Status: " . $row["status"]. "<br>";
}
$stmt->close();
这样可以更安全地处理用户输入的数据。