21-12-2004, 18:57
|
|
|
חבר מתאריך: 25.08.03
הודעות: 9,114
|
|
שאילתת UPDATE
יש לי טבלה בשם flash_news.
שמות העמודותד הינם: id, date, time, update_by, category, title, flash
אני מנסה לבנות טופס לעדכון הטבלה (UPDATE לא INSERT).
בטופס יש שדה שבו רושמים באיזה ID רוצים לבצע את העכדון, ושדות נוספים שממלאים רק במקרה שמעוניינים לעדכן שדה זה. (category, title, flash)
היות ואי אפשר לדעת איזה שדה יעדכנו, כתבתי את הקוד כך:
קוד PHP:
if($_GET['update_by']) { $update_by="update_by=".$_POST["update_by"].","; } if($_GET['category']) { $category="category=".$_POST["category"].","; } if($_GET['title']) { $title="title=".$_POST["title"].","; } if($_GET['flash']) { $flash="flash=".$_POST["flash"].","; } $sql= " UPDATE news_flash SET " .$update_by .$category .$title .$flash ." WHERE id=".$_POST['id'] ;
ניסיתי לעדכן, וקיבלתי את השגיאה
קוד:
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 id=9' at line 1
כמו שהנכם בוודאי יודעים, לפי התחביר לא כותבים פסיק (,) רק אם יש שדה נוסף שרוצים לעדכן. ובקוד שכתבתי יש פסיק גם לאחר תוכן השדה האחרון ("column=content,").
האם זה מהווה בעיה ?
(לפי השגיאה אני מבין שיש בעיה אחרת).
אשמח גם לשמוע איך אוכל לכתוב קוד יעיל יותר.
|