这是我的代码:
$result = mysql_query("INSERT INTO clients (client_id, name, surname, tel1,tel2,id_num,address)
VALUES ('" .$updating_id . "','" .$updatedName1 . "','" .$updatedName1 . "', '" .$updatedSurname1
. "', '" . $updatedTel1 . "', '" .$updatedTel2 . ", '" .$updatedId_num1. "', '" .$updatedAddress1.
") ON DUPLICATE KEY UPDATE name='" . $updatedName1 . "', surname='" . $updatedSurname1 . "',
tel1='" . $updatedTel1 . "', tel2='" . $updatedTel2 . "', id_num='" . $updatedId_num1 . "',
address='" .$updatedAddress1 . "'");
if(mysql_query($result))
{ echo $updatedName1," ", $updatedSurname1, " updated successfully ";
}
else {
echo mysql_error();}
}
我注意到 mysql_query("INSERT INTO
...
以 VALUES ('".$updating_id . "'
... 语句的第一个引号结束,但我引用的方式是我的示例中的方式,我已评估过。
最佳答案
使用if($result)
而不是if(mysql_query($result))
。谢谢@Vinie
并且您在 VALUES
语句中漏掉了两个简单的引号:
$updatedTel2 . "'
$updatedAddress1."'
你需要看看mysql_real_escape_string();
或者至少使用PDO:)
关于php - MySQL 查询中出现引号错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31533169/