2011-10-21 12 views
0

単純なINSERTでのMySQL構文エラー?このPHP/MySQLのクエリで

mysql_query("INSERT INTO Follows (User, Following, Type) VALUES ('$_COOKIE[user]', '$genre', 'Genre'") 

私は構文エラー

を取得しています「あなたはあなたのSQL構文でエラーが発生している。ためにあなたのMySQLサーバのバージョンに対応するマニュアルを確認してください'1行目付近'で使用する正しい構文

この構文で何も問題はありません。他の人はいますか?

+0

それは、これらの変数の値が何であるかによって異なり ...あなたは本当にあなたが終わる ')' '真剣VALUES' –

+2

をエスケープする必要があります! 2011年ですが、まだSQLクエリに文字列補間を使用していますか? –

+1

のために不足している、他の懸念の中でそれら – Phil

答えて

6

あなたが不足しているかっこがあります

mysql_query("INSERT INTO ... VALUES (... , 'Genre'") 

は次のようになります。

mysql_query("INSERT INTO ... VALUES (... , 'Genre')") 
               ^

あなたはまた、あなたのコード内のSQLインジェクションの脆弱性を持っています。 mysql_real_escape_stringまたはパラメータ化されたクエリを使用します。関連:

-1

エラーは、対応するブラケットを使用してMySQLの文を閉じていないということです。

ユアーズ:

mysql_query("INSERT INTO Follows (User, Following, Type) VALUES ('$_COOKIE[user]', '$genre', 'Genre'"); 

正しい:

mysql_query("INSERT INTO Follows (User, Following, Type) VALUES ('$_COOKIE[user]', '$genre', 'Genre')"); 
+1

@Downvoter、男になって説明をお願いします。 – Jules

0

クエリでの最後のブラケットを閉じませんでした。

mysql_query("INSERT INTO Follows (User, Following, Type) VALUES ('$_COOKIE[user]', '$genre', 'Genre')") 
+0

誰がこれを落としたのですか?いかなる理由で? – Mob

関連する問題