0

私のクエリを実行すると、エラーが発生しました..私のクエリは以下に書かれています

$qry = "UPDATE Offer  SET offer_year='$offeryear', " .
"course_code='$coursecode', offer_list='$offerlist', " .
"WHERE offer_id ='$offerid'";

私が得たエラーは

ERROR: Record could not be added
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 'WHERE offer_id ='1'' at line 1

更新クエリにいくつかの変更を加えましたが、まだエラーが発生しました..

4

3 に答える 3

3

いちいちチェックしてみると、句commaの前に余計なものがWHERE

$qry = "UPDATE Offer  SET offer_year='$offeryear', " .
       "course_code='$coursecode', offer_list='$offerlist' ". // remove comma here
       "WHERE offer_id ='$offerid'";

補足として、変数のSQL Injection値が外部から取得された場合、クエリは脆弱です。予防方法については、以下の記事をご覧ください。を使用すると、値を一重引用符で囲む必要がなくなります。PreparedStatements

于 2013-05-29T07:17:16.617 に答える
2

このように更新クエリを更新します

$qry = "UPDATE Offer  
        SET offer_year='$offeryear',
            course_code='$coursecode', 
            offer_list='$offerlist' 
        WHERE offer_id ='$offerid'";

WHERE 条件の前に余分なコンマを入れました

于 2013-05-29T07:17:21.827 に答える
0

これを試してください( の後にコンマがありましたofferlist):

$qry = "UPDATE Offer  SET offer_year='$offeryear', " .
"course_code='$coursecode', offer_list='$offerlist' " .
"WHERE offer_id ='$offerid'";
于 2013-05-29T07:17:13.607 に答える