2017-03-08 8 views
-2

私はドキュメントを読んでいると、私の声明と間違っているものを参照してくださいカントPHP、重複したキー更新で。エラー?

エラーが

INSERT INTO employeedetails (userid,ref,name,department,commenced) VALUES 
('$userid','$ref','$name','$department','$commenced') 
ON DUPLICATE KEY UPDATE 
ref='" . $ref . "', 
name = '" . $name . "', 
department = '" . $department . "', 
commenced = '" . $commenced . "' 
WHERE userid=" . $userid; 

「KEY」でヒットしているがどうもありがとうございました!

EDIT:認識されないキーワード:

主キーがエラーは 'ユーザID'

 INSERT INTO employeedetails (userid,ref,name,department,commenced) 
     VALUES ('1','11','','','2017-03-08 00:00:00') ON DUPLICATE KEY UPDATE ref='11', 
     name = '', department = '', commenced = '2017-03-08 00:00:00' WHERE userid=1 

です。 WHEREを削除する(位置529での「KEY」に近い)

+0

を実行し、正常に動作しますかどのデータベースを使用していますか?すべてのパラメータを[注入](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php)したら、完全なSQLの外観を表示できますか? – IMSoP

+2

'INSERT'文で' WHERE'を使うことはできません。意味がありません。そして、あなたは非常にうまく自分自身をSQLインジェクションすることができます。 – jeroen

+0

こんにちは、私はそれを更新しました、私はどこに更新を挿入していない –

答えて

0

まだエラーが表示されますが、それはエラーは何ですか?

INSERT INTO employeedetails (userid,ref,name,department,commenced) 
     VALUES ('1','11','','','2017-03-08 00:00:00') ON DUPLICATE KEY UPDATE ref='11', 
     name = '', department = '', commenced = '2017-03-08 00:00:00' 
関連する問題