עזרה בMSQL

pattos

New member
עזרה בMSQL

יש לי קובץ update.asp שמקבל נתונים מטופס של edit.asp, ותפקידו לעדכן פרטים בשדות של רשומה אחת. אולם כשאני מעדכן, אני מקבל את השגיאה הבאה: Error Type: Microsoft JET Database Engine (0x80040E07) Data type mismatch in criteria expression. /update.asp, line 11 והקוד שלי הוא: <% if session("user")<>"admin" then response.redirect "http://127.0.0.1/main.html" end if Set c = server.CreateObject("adodb.connection") c.provider="microsoft.jet.oledb.4.0" c.open server.mappath("data/products.mdb") set r = server.CreateObject("adodb.recordset") idd=request.form("idd") sq="select * from Product_list where (idd=' "&idd&" ' )" c.execute sq r.fields("weapon_name")=request.form("weapon_name") r.fields("units_in_stock")=request.form("units_in_stock") r.fields("price_per_unit")=request.form("price_per_unit") r.update r.close response.redirect "http://127.0.0.1/admin_edit.asp" %> יש למישהו מושג מה הבעיה?
תודה מראש!
 

HaRmosh

New member
שני דברים

אתה מנסה לשים בשדה מסויים ערך שטיפוס הנתונים שלו לא מתאים - בדוק טוב (תדפיס ל-response או משהו) את הערכים שאתה מנסה לשים באובייקט r אצלך לפני ביצוע העדכון, ותראה שבאמת מה שאמור להיות מספר שלם הוא מספר שלם, מה שאמור להיות שבר הוא שבר (ולא מחרוזת עם נקודה שמקודדת ל-% משהו) וכו'. ד"א, אל תעשה redirect ל-URL מלא - רק לדף שאתה צריך יחסית ל-root, למשל main.html ולא http://127.0.0.1/main.html. זה מיותר, לא מקובל, ויסרבל לך אח"כ העברה של האתר למקום אחר, אם תרצה.
 

24sharon

New member
לא מבינה כ"כ בPHP

אבל למה שלא תריץ שאילתת UPDATE?, מה העניין בלפתוח רקורדסט על מנת לעדכן?
 
למעלה