【发布时间】:2015-01-31 07:08:57
【问题描述】:
我可以用 php/mysqli 多步骤来做到这一点。
所以,表格只有两列。
身份证、姓名
两者都是独一无二的。
我想检查名称是否在数据库中可用,如果可用则获取 ID。
如果不可用,则在数据库中添加 Name 并获取 ID。
我可以使用需要多个 sql 查询的 php/mysql 来完成。
有没有办法(检查数据库,如果不存在添加它并获取 ID)仅使用一个 mysql 查询并获取 ID?
提前致谢!
我的代码(MySQLi 程序)
function abc($name) {
global $conn;
$checkName = mysqli_query($con,"SELECT * FROM category WHERE name=".mysql_real_escape_string($name));
if (mysqli_num_rows($checkName) > 0) {
$inputName = mysqli_query($con,"INSERT INTO category (name) VALUES ('".mysql_real_escape_string($name)."')");
if (!$inputName) { die(mysqli_error($conn)); }
$checkName2 = mysqli_query($con,"SELECT * FROM category WHERE name=".mysql_real_escape_string($name));
while($blahblah = mysqli_fetch_assoc($checkName2)) {
$returnData[] = $blahblah;
}
} else {
while($blahblah = mysqli_fetch_assoc($checkName)) {
$returnData[] = $blahblah;
}
}
return $blahblah;
}
【问题讨论】:
-
您可以为名称字段添加唯一索引并在更新时插入
-
请向我们展示您到目前为止尝试过的代码
-
在php中勾选后再添加
-
因为你使用
mysqli_函数,你应该使用mysqli_real_escape_string()来转义输入参数,而不是mysql_real_escape_string()。或者,您可以使用准备好的语句。