2016-08-25 2 views
-2

を持っていません。、NOTが存在する場合...私は私のウェブサイトのための単純なSQLクエリだったが、それはエラーとして上がってくる続けると思ったものを書き込むしようとしている作業とは考えなぜ

文を:

if(!mysqli_query($con, 
"IF NOT EXISTS(SELECT email FROM users WHERE email = '".$email."') BEGIN INSERT INTO users(email) VALUES ('".$email."') END") 
){ ... } 

エラー:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF NOT EXISTS(SELECT email FROM users WHERE email = '[email protected]') BE' at line 1

私はそれの上に何度も起こって試してみたが、私は何も悪いことを見ることができません。データベースへの接続とテーブルusersとカラム属性/プライマリキーemailはすべて正しく設定されています。

+0

mysqliでクエリを印刷し、そのクエリをコピーして実行します。 –

答えて

1

あなたの問題を解決するための新しい方法をお勧めします。 テーブルに存在しない新しい電子メールを挿入し、既にテーブルに存在する電子メールの挿入を無視する必要がある場合は、「INSERT IGNORE」を使用できます。

$sql = "INSERT IGNORE INTO users(email) VALUES ('$email')"; 
関連する問題