1

今天我需要你的帮助。我实际上正在编写一个注册表单,并且对于每个新注册,我都会使用uniqid()函数生成一个密钥。

问题是当我尝试将生成的密钥插入数据库时​​出现此错误:

错误:SQLSTATE [42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 'key) VALUES('','test','test','test@test.com','7c4a8d09ca3762af61e59520943dc26494' 附近使用正确的语法

我的数据库中键的字段设置为VARCHAR(90)

我在谷歌或这里寻找答案,但我没有找到有同样问题的人

请问有谁知道我的问题在哪里?

谢谢,安托

编辑:

这是我的 SQL 请求:

$key = uniqid();

try{
    $sql = "INSERT INTO users(id,name,firstname,mail,pass,status,avatar,key) VALUES('','$name','$firstname','$mail','$pass','$status','$avatar','$key')";
    $req = $db->exec($sql);

    echo 'OK';
}catch(PDOException $e){
    echo 'Erreur: '.$e->getMessage();
}
4

1 回答 1

3

我相信 KEY 是 mysql 的保留字。尝试逃避它

`key`
于 2013-05-02T22:33:00.733 回答