phpsql
是 PHP 中用于与 MySQL 数据库进行交互的扩展。在处理数据库查询时,过滤空值是一个常见的需求,以确保数据的完整性和准确性。
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 过滤空值
$name = isset($_POST['name']) && !empty($_POST['name']) ? $_POST['name'] : null;
$email = isset($_POST['email']) && !empty($_POST['email']) ? $_POST['email'] : null;
if ($name && $email) {
$sql = "INSERT INTO users (name, email) VALUES ('$name', '$email')";
if ($conn->query($sql) === TRUE) {
echo "新记录插入成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
} else {
echo "姓名和邮箱不能为空";
}
$conn->close();
?>
<?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 = "SELECT name, email FROM users WHERE name IS NOT NULL AND email IS NOT NULL";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// 输出数据
while($row = $result->fetch_assoc()) {
echo "姓名: " . $row["name"]. " - 邮箱: " . $row["email"]. "<br>";
}
} else {
echo "0 结果";
}
$conn->close();
?>
$stmt = $conn->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$stmt->bind_param("ss", $name, $email);
$stmt->execute();
CREATE INDEX idx_name ON users (name);
CREATE INDEX idx_email ON users (email);
CREATE TABLE users (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(30) NOT NULL,
email VARCHAR(50) NOT NULL
);
通过以上方法,可以有效地过滤和处理 PHP 中的 MySQL 空值问题。
领取专属 10元无门槛券
手把手带您无忧上云