1

今日、私はあなたの助けが必要です。私は実際に登録フォームをコーディングしており、新しい登録ごとにuniqid()関数でキーを生成しています。

問題は、生成されたキーをデータベースに挿入しようとすると、次のエラーが発生することです。

エラー: SQLSTATE[42000]: 構文エラーまたはアクセス違反: 1064 SQL 構文にエラーがあります。使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

私のデータベースのキーのフィールドはVARCHAR(90)に設定されています。

Google またはこちらで回答を探しましたが、同じ問題を抱えている人は見つかりませんでした

私の問題がどこにあるか知っている人はいますか?

ありがとう、アント

編集:

ここに私の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 に答える