写一个PHP mysql 模糊查询music表的title字段为空则将查询字段插入至music表的示例
时间: 2024-05-12 22:13:45 浏览: 84
假设music表的结构如下:
```
CREATE TABLE music (
id INT(11) NOT NULL AUTO_INCREMENT,
title VARCHAR(255) DEFAULT NULL,
artist VARCHAR(255) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=INNODB DEFAULT CHARSET=utf8;
```
以下是示例代码:
```php
<?php
// 连接数据库
$con = mysqli_connect("localhost", "username", "password", "database");
if (!$con) {
die("连接失败: " . mysqli_connect_error());
}
// 获取查询字段
$search = isset($_GET['search']) ? $_GET['search'] : '';
// 构造查询语句
$sql = "SELECT * FROM music WHERE title LIKE '%$search%'";
// 执行查询
$result = mysqli_query($con, $sql);
// 判断查询结果是否为空
if (mysqli_num_rows($result) > 0) {
// 如果查询结果不为空,则输出查询结果
while($row = mysqli_fetch_assoc($result)) {
echo "ID: " . $row["id"] . " - Title: " . $row["title"] . " - Artist: " . $row["artist"] . "<br>";
}
} else {
// 如果查询结果为空,则将查询字段插入至music表的title字段中
$sql = "INSERT INTO music (title) VALUES ('$search')";
if (mysqli_query($con, $sql)) {
echo "查询结果为空,已将查询字段插入至music表的title字段中";
} else {
echo "插入数据失败: " . mysqli_error($con);
}
}
// 关闭数据库连接
mysqli_close($con);
?>
```
在上述代码中,首先连接到数据库,并获取查询字段。然后构造查询语句并执行查询,如果查询结果不为空,则输出查询结果。如果查询结果为空,则将查询字段插入至music表的title字段中。最后关闭数据库连接。请注意,上述代码存在SQL注入的风险,应该使用参数化查询或者转义输入的查询字段。
阅读全文