פורסם 2007 במרץ 2718 שנים אני מנסה להוציא את המידע מהDATABADE באמצעות סלקט ויש לי רק שורה אחת בDATABASE ובניתי בקובץ ASP מקום ל3 תאים<% Set c = Server.CreateObject("ADODB.Connection") set r = Server.CreateObject("ADODB.Recordset") c.Provider="Microsoft.Jet.OLEDB.4.0" c.Open Server.MapPath("proj.mdb") r.activeconnection=c r.open "select * from news" if not r.eof then response.write(r.fields("tit")) response.write("</br>") response.write(r.fields("mess")) r.movenext %> <% response.write(r.fields("tit")) response.write("</br>") response.write(r.fields("mess")) r.movenext %><% response.write(r.fields("tit")) response.write("</br>") response.write(r.fields("mess")) end if %>הבעיה היא שכאשר יש רק שורה אחת או שתיים במסד נתונים הוא אומר לי ADODB.Field (0x80020009)BOF או EOF הם בעלי ערך True או שהרשומה הנוכחית נמחקה. הפעולה המבוקשת דורשת רשומה נוכחית.אם אין שורות הוא עובדאיך אני מתקן את זה??
פורסם 2007 במרץ 2718 שנים מחבר ניסתי גם עם WHILE ועדיין לא עובד סוג שגיאה:ADODB.Field (0x80020009)BOF או EOF הם בעלי ערך True או שהרשומה הנוכחית נמחקה. הפעולה המבוקשת דורשת רשומה נוכחית.
פורסם 2007 במרץ 2818 שנים השגיאה שהוא מקפיץ לך היא ככל הנראה בגלל שלא אמרת לו MoveFirst אבל לא בטוח.בכל מקרה, הקוד שלך לא יעיל/לא כתוב מסודר.תנסה את זה:<% Set objConn = Server.CreateObject("ADODB.Connection") set objRs = Server.CreateObject("ADODB.Recordset") objConn.Provider="Microsoft.Jet.OLEDB.4.0" objConn.Open Server.MapPath("proj.mdb") objRs.open "select * from news", objConn do while not objRs.eof response.write(objRs("tit")) response.write("</br>") response.write(objRs("mess")) objRs.movenext loop objRs.Close set objRs = Nothing%>אתה לא צריך לסגור ולפתוח כל הזמן את תגית ה ASP (%>).
פורסם 2007 במרץ 2918 שנים אם אתה רוצה רק 3, תרשום בשאילתא top 3(שים לב שבדרך כלל כדאי גם למיין את זה ע"H תאריך מסויים).ותתן שמות קצת יותר משמעותיים ומובנים לשדות שלך. תרשום את השום המלא: title ו- message. שלא יתבלבלו עם משהו אחר.
פורסם 2007 במרץ 3018 שנים כבר הסברנו לו שצריך להשתמש בWHILE.וד.א. בפוסט הראשון - אתה מתכוון ל3 רשומות, לא 3 תאים.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.