当我尝试使用代码插入数据时:
$query = dbConnect()->prepare("INSERT INTO users(key) WHERE mail='$mail' VALUES ('$key')");
我正在使用XAMPP,它给了我一个错误:
未捕获的PDOException:SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法中有错误;检查与您的MariaDB服务器版本对应的手册,以便在C:\ xampp \ htdocs \ PHP7_login \ restore \ index的第1行使用“key”附近的正确语法WHERE mail ='maciej @ localhost'VALUES(key)'。 php:38
答案 0 :(得分:0)
你应该使用反引号作为键(因为是保留字)
而不是在哪里使用
"INSERT INTO users(`key`) VALUES ('$key')"
或者如果您需要更新
"UPDATE users
set `key` = '$key'
where mail = '$mail'"
答案 1 :(得分:0)
猜测是你想要update
:
update users
set key = '$key'
where mail = '$mail' ;
您还应该学习在查询中使用参数值。将字符串替换为查询字符串会引入意外错误,并使代码容易受到SQL注入攻击。