שלח תשובה

זירת השאלות

675
צפיות
85
תשובות

מישהו יכול להגיד לי מה אומרת השגיאה

,‏ 1 באוקטובר, 2004

הזאת?


INSERT INTO pics(picname,desc,link) VALUES(,",")
Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

/zombie123/gallery/insert_pics.asp, line 11

תגיות:

85 תשובות

  1. BuildHome הגיב:

    ערכים בשאילתה לא יכולים להיות ריקים
    לפי מה שאני רואה זו הסיבה לשגיאה.
    תן את כל השאילתה שלך ונראה אם יש טעות בה (בקוד).

  2. 0mri הגיב:

    הנה אין לי מושג מה הבעיה
    אפילו שאני ממלא תטופס זה עושה תשגיאה הזאת


          SQLstr="INSERT INTO pics(picname,desc,link)"
          SQLstr= SQLstr & " VALUES("&Request.QueryString("picname")&",'" & Request("desc") & "','"
          SQLstr= SQLstr & Request("link") & "')"
          Response.Write SQLstr
          conn.Execute SQLstr

  3. BuildHome הגיב:

    נסה כך
          SQLstr="INSERT INTO pics(picname,desc,link)"
          SQLstr= SQLstr & " VALUES('"&Request.QueryString("picname")&"','" & Request("desc") & "','"
          SQLstr= SQLstr & Request("link") & "')"

  4. זהר פלד הגיב:

    DESC היא מילה שמורה ב SQL….
    או שתחליף את שם השדה או שתעטוף אותו בשאילתה בסוגרים מרובעות [desc].

  5. 0mri הגיב:

    תודה רבה + שאלה נוספת
    עשיתי גלריה ואני רוצה שנגיד הבאתי כתובת לא טובה של תמונה אז זה יחליף את זה בתמונה אחרת
    תודה מראש לעוזרים

  6. BuildHome הגיב:

    תשובה
    בתגית ה-IMG תוסיף onError בצורה כזו:
    <img src="pic.gif" OnError="this.src='no_pic.gif'">
    התמונה no_pic.gif תופיע במידה והתמונה pic.gif לא קיימת או לא נטענת.

    שאלה כזו מתאימה לצד-לקוח.

  7. 0mri הגיב:

    תודה אחי + שאלה נוספת
    אני רוצה להעלות קבצים לשרת דרך הדף שאני מוסיף תמונות איך אני יכול לעשות את זה?
    תודה מראש לעוזרים

  8. BuildHome הגיב:

    אתה זקוק לתמיכה
    באובייקט העלאת קבצים.
    aspUpload הוא מומלץ וקל לשימוש.

  9. 0mri הגיב:

    יש אתר שאתה מכיר שהוא תומך בזה
    (חינמי)

  10. 0mri הגיב:

    ->->->יש לי בעיה
    הנה השגיאה

    ADODB.Recordset error '800a0bb9'

    Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

    /zombie123/examples/insertcats.asp, line 19

    הקוד שורה 19 מודגשת


    <%
       If Request("sname")<>"" Then
          
          Dim conn, SQLstr, rscats
          Set conn = Server.CreateObject("ADODB.Connection")
          conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Server.MapPath("catdb.mdb")
          
          SQLstr="INSERT INTO subjects(sname)"
          SQLstr= SQLstr & " VALUES('" & Request("sname") & "')"
          Response.Write SQLstr
          conn.Execute SQLstr
          conn.Close
          Set conn = Nothing
          Response.Redirect "index.asp"
       End If
    %>
    <% set rscats=server.createobject("adodb.recordset")
    sql="select id, cname from catss"
    rscats.open sql, conn
    %>
    <%while not rscats.EOF %>
    <html>
    <head>
    <title>הוספת נושא</title>
    </head>
    <form action="insertcats.asp">
    <table align=center>
    <tr>
    <td>שם הנושא</td><td><input type="text" name="name" size="20">
    </tr>
    <tr>
    <td>קטגוריה</td><td><select name=catid><option value="1"><%=rscats("cname")%></option></select ></td></tr>
    </table>
    <% rscats.movenext
        wend
    %>

  11. BuildHome הגיב:

    החיבור למסד הנתונים שלך
    נמצא בתוך משפט תנאי ובעיקרון אינו קיים בעמוד (אלא אם כן התנאי מתקיים).
    שים את החיבור למסד מעל התנאי.

  12. 0mri הגיב:

    עכשיו יש שגיאה אחרת


    Microsoft VBScript runtime error '800a01a8'

    Object required: "

    /zombie123/examples/insertcats.asp, line 22

    שורה 22 מודגשת

          set rscats=server.createobject("adodb.recordset")
          sql="select id, cname from catss"
          rscats.open sql, conn
          
          SQLstr="INSERT INTO subjects(sname)"
          SQLstr= SQLstr & " VALUES('" & Request("sname") & "')"
          Response.Write SQLstr
          conn.Execute SQLstr
          conn.Close
          Set conn = Nothing
          Response.Redirect "index.asp"
       End If

    %>
    <%while not rscats.EOF %>
    <html>
    <head>
    <title>הוספת נושא</title>
    </head>
    <form action="insertcats.asp">
    <table align=center>
    <tr>
    <td>שם הנושא</td><td><input type="text" name="name" size="20">
    </tr>
    <tr>
    <td>קטגוריה</td><td><select name=catid><option value="1"><%=rscats("cname")%></option></select ></td></tr>
    </table>
    <% rscats.movenext
        wend
    %>

  13. BuildHome הגיב:

    תשובה
    אני מניח שיצירת האובייקט rscats נמצא בתוך משפט התנאי.
    השגיאה אומרת שאובייקט הדרוש אינו קיים.
    המשפט תנאי שלך אמור לכלול רק את הכנסת הנתונים למסד ולא יותר.

  14. 0mri הגיב:

    אז אתה יכול בבקשה להסביר לי איפה
    להשים את האובייקט?
    תודה מראש לעוזרים

  15. BuildHome הגיב:

    תשובה
    <%
          Dim conn, SQLstr, rscats
          Set conn = Server.CreateObject("ADODB.Connection")
          conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Server.MapPath("catdb.mdb")

       If Request("sname")<>"" Then
          SQLstr="INSERT INTO subjects(sname)"
          SQLstr= SQLstr & " VALUES('" & Request("sname") & "')"
          Response.Write SQLstr
          conn.Execute SQLstr
          conn.Close
          Set conn = Nothing
          Response.Redirect "index.asp"
       End If

    set rscats=server.createobject("adodb.recordset")
    sql="select id, cname from catss"
    rscats.open sql, conn
    %>
    <%while not rscats.EOF %>
    <html>
    <head>
    <title>הוספת נושא</title>
    </head>
    <form action="insertcats.asp">
    <table align=center>
    <tr>
    <td>שם הנושא</td><td><input type="text" name="name" size="20">
    </tr>
    <tr>
    <td>קטגוריה</td><td><select name=catid><option value="1"><%=rscats("cname")%></option></select ></td></tr>
    </table>
    <% rscats.movenext
        wend
    %>

  16. 0mri הגיב:

    תודה עובד + שאלה
    אני רוצה שהmovenext יהיה בתוך התיבת בחירה ושזה לא יעשה לי Movenext על כל מה שיש בדף
    תדוה מראש

  17. BuildHome הגיב:

    תשובה
    פשוט תמקם את הלולאה היכן שאתה רוצה שהיא תתבצע.
    <html>
    <head>
    <title>הוספת נושא</title>
    </head>
    <form action="insertcats.asp">
    <table align=center>
    <tr>
    <td>שם הנושא</td><td><input type="text" name="name" size="20">
    </tr>
    <tr>
    <td>קטגוריה</td><td><select name=catid>
    <%while not rscats.EOF %>
    <option value="1"><%=rscats("cname")%></option>
    <% rscats.movenext
        wend
    %>
    </select ></td></tr>
    </table>

  18. 0mri הגיב:

    יש בעיה


    Microsoft VBScript compilation error '800a03fa'

    Expected 'Wend'

    /zombie123/examples/insertcats.asp, line 29

    שורה 29 מודגשת

    rscats.movenext
    wend  

  19. BuildHome הגיב:

    נסה כך

    <%Do while not rscats.EOF %>
    <option value="1"><%=rscats("cname")%></option>
    <% rscats.movenext
        Loop
    %>

  20. 0mri הגיב:

    תודה עובד אבל יש לי בעיה בINSERT
    הוא לא מראה תבעיה הוא פשוט לא מכניס נתונים הנה הדף שמכניס את הנתונים


    <%
          Dim conn, SQLstr, rscats
          Set conn = Server.CreateObject("ADODB.Connection")
          conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Server.MapPath("catdb.mdb")

       If Request("sname")<>"" Then
          SQLstr="INSERT INTO subjects(sname)"
          SQLstr= SQLstr & " VALUES('" & Request("sname") & "')"
          Response.Write SQLstr
          conn.Execute SQLstr
          conn.Close
          Set conn = Nothing
          Response.Redirect "index.asp"
       End If
       %>

    ודרך אגב אני חושב שהבעיה היא בגלל שלא רשום פה לאיזה קטגורייה להכניס את הנושא אז אם את יכול להראות לי איך אפשר להכניס לקטגורייה שאני קובע דרך הטופס אני ישמח מאוד
    תודה מראש

  21. BuildHome הגיב:

    נסה כך

    <%
          Dim conn, SQLstr, rscats
          Set conn = Server.CreateObject("ADODB.Connection")
          conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Server.MapPath("catdb.mdb")

       If Request.Form("sname")<>"" Then
          SQLstr="INSERT INTO subjects(sname,catid)"
          SQLstr= SQLstr & " VALUES('" & Request.Form("sname") & "',"&Request.Form("catid")&")"
          Response.Write SQLstr
          conn.Execute SQLstr
          conn.Close
          Set conn = Nothing
          Response.Redirect "index.asp"
       End If
       %>
    זה בערך הקוד שצריך להיות. אתה צריך לדעת היטב כיצד מוסיפים וכיצד משתמשים ב-ASP.

    תוסיף ל-FORM שלך את השיטה post.

  22. 0mri הגיב:

    עדיין לא
    תראה אפילו
    http://bb.1asphost.com/zombie123/examples/insertcats.asp
    דרך אגב תגיד לי אם להביא לך את הקודים של שתי הדפים
    תודה מראש 0mri

  23. BuildHome הגיב:

    ———–> שרשור מחדש
    לא הוספת שיטה של post בטופס.
    <form action="insertcats.asp" method="post">

  24. BuildHome הגיב:

    קשה להבין אותך
    כשאתה אומר "לא עובד".
    אני לא רואה שגיאה.
    כנראה השאילתה מתבצעת. תבדוק היטב שאין נתונים במסד.

    בנוסף, אל תבצע העברה לעמוד. תסמן את השורה הזו כהערה ותראה אם יש שגיאה ותציג כאן את השאילתה המודפסת.

  25. BuildHome הגיב:

    אין יותר במה לעזור
    זו שאילתת הכנסה פשוטה ובסיסית למדי.
    תבדוק את מה שכתבתי ותראה אם קיימת בעיה.

  26. 0mri הגיב:

    הצלחתי לסדר + כמה שאלות
    1.אני בונה גלריה ואני רוצה שכל מספר מסוים של תמונות זה ירד שורה.
    2.אני רוצה נגיד ללחוץ על לינק של תמונה ושזה יעשה הורדה למחשב ולא יפתח את הכתובת שלה.
    תודה מראש 0mri

  27. BuildHome הגיב:

    תשובות
    1. תעשה משהו כזה (לדוגמא):
    i = 1
    Do while not rs.EOF
        response.write rs("field")
        If i = 3 Then
            response.write "<br>"
            i = 0
        End If
        i = i + 1
    rs.MoveNext
    Loop

    2. FAQ בתפוז
    תוכן העמוד אליו תפנה את הקישור יכיל את הקוד כמו שכתוב ב-FAQ (לדוגמא) והקישורים שלך יהיו בסגנון כזה:
    <A href="download.asp?file=file.html">download</a>
    אפשרי גם בעזרת ID בלבד אבל תצטרך בעמוד ההורדה לשלוף את שם הקובץ לפי ה-ID.

  28. 0mri הגיב:

    צריך תמיכה מיוחדת באובייקט הזה?
    (ADODB.Stream)

  29. BuildHome הגיב:

    לא חושב
    אם לא כתוב לך שיצירת האובייקט נכשלה יש תמיכה אובייקט הנ"ל.

  30. ניר טייב הגיב:

    אם עשית עדכוני אבטחה אחרונים
    למחשבך הפרטי אז האובייקט לא יעבוד לך במחשב שלך (נראה לי רק ב-XP)
    אבל בשרת האכסון זה צריך לעבוד

  31. 0mri הגיב:

    אמ יש לי שאלה
    אני רוצה שנגיד אני לוחץ על התמונה אז התמונה בגודל הרגיל שלה תפתח בחלון חדש
    (popup)

  32. BuildHome הגיב:

    FAQ
    FAQ.
    זה אמור להיות ב-OnClick ל-span (ולא קישור).

  33. 0mri הגיב:

    אתה יכול להראות לי
    איך אפשר להכניס את פונקציית replace באמצע קוד html כי יש לי כל מיני בעיות עם מרכאות

  34. 0mri הגיב:

    + מה אומרת השגיאה הזאת?


    error '80020009'
    Exception occurred.

    /zombie123/skup/index.asp, line 81

  35. BuildHome הגיב:

    תראה את הקוד
    משורה 78 ועד שורה 84 ותבליט (תדגיש) את שורה 81.

    זו שגיאה די כללית, כלומר ללא תאור ספציפי.

  36. 0mri הגיב:

    תראה
    זה שתי דברים שונים הנה השורה של הreplace


    <%" & Replace(rs4.fields("mdesc"),chr(13),"<br>") & "%>

    ושורה 81 היא


    response.write "<td height=32 background=headertitle2.gif><font size=2><b>" & rs2.fields("ahrazatitle") & "</b></font></td> " & vblf

    תודה מראש

  37. BuildHome הגיב:

    בקשר ל-replace
    זה אמור להיות משהו כזה:
    <%=Replace(rs4.fields("mdesc"),chr(13),"<br>")%>
    או
    <% str = Replace(rs4.fields("mdesc"),chr(13),"<br>")%>

    השורה השניה נראית תקינה.

  38. 0mri הגיב:

    הנה הקוד
    הדגשתי את שורה 81

    response.write "<p align=center><table width=100>" & vblf
    response.write "<tr>" & vblf
    response.write "<td height=32 background=headertitle2.gif><font size=2><b>" & rs2.fields("ahrazatitle") & "</b></font></td> " & vblf
    response.write "</tr>" & vblf
    response.write "<tr>" & vblf
    response.write "<td height=28 background=title.gif></td>" & vblf
    response.write "</tr>" & vblf
    response.write "<tr>" & vblf
    response.write "<td height=340 bgcolor=ffcc99><font size=2><b>" & rs2.fields("ahrazadesc") & "</b></font></td>" & vblf
    response.write "</tr>" & vblf
    response.write "<tr>" & vblf
    response.write "<td height=28 background=title.gif></td>" & vblf
    response.write "</tr>" & vblf
    response.write "</table></p>" & vblf

  39. BuildHome הגיב:

    אני לא רואה שגיאה
    ובמקום vblf רושמים vbcrlf.

  40. 0mri הגיב:

    אתה לא יודע מה יכולה להיות הבעיה?

  41. BuildHome הגיב:

    אם יש שגיאה אז מהי?
    לפי השורה שהצגת לא אמורה להיות שגיאה.

  42. 0mri הגיב:

    הנה השגיאה


    error '80020009'
    Exception occurred.

    /zombie123/skup/index.asp, line 81

  43. BuildHome הגיב:

    נסה כך:
    response.write "<td height=32 background=headertitle2.gif><font size=2><b>" & rs2("ahrazatitle") & "</b></font></td> " & vbcrlf

  44. 0mri הגיב:

    דרך אגב לא הבנתי איך עושים שנגיד
    אני לוחץ על תמונה והיא תיפתח בחלון חדש אם תוכל להסביר לי את זה קצת יותר טוב אני ישמח.!

  45. 0mri הגיב:

    אממ יש לי בעיה אחרת
    עשיתי כמו מבזק כזה שזה כתובית שעולה למעלה  
    בקיצור עכשיו הכנסתי נתונים בשביל לראות אם זה פועל וכל פעם שאני מעלה תמסד ורשום משו בתוך המבזק האינדקס פשוט לא עולה
    תודה מראש 0mri

  46. BuildHome הגיב:

    לא הכי מובן
    ותשרשר את ההודעה עם הפירוט והקוד להודעה הראשית שלך.

  47. 0mri הגיב:

    להראות את כל הקוד של הדף אינדקס שלי
    ?

  48. BuildHome הגיב:

    תסביר את עצמך היטב
    תראה קוד רלוונטי ותראה מה הבעיה/שגיאה.

  49. 0mri הגיב:

    תראה אני יסביר לך יותר טוב
    אין לי שום שגיאה על הדף פשוט תראה זה ככה הולך
    עשיתי שתיהיה כתובית מטיילת ע"פ מה שרשום במסד נתונים
    אז עכשיו נגיד אם לא רשום כלום במסד אז הדף עובד חלק
    אם אני מכניס נתונים למסד אז הדף לא עולה ואין שום שגיאה

  50. BuildHome הגיב:

    אוקי
    תעשה הצג מקור וחפש שגיאה.
    אולי תראה שגיאה מסוימת.

    ומה הקוד הרלוונטי?

  51. 0mri הגיב:

    הנה


    <marquee width="165" height="74"><%=Replace(rs4.fields("mdesc"),chr(13),"<br>")%></marquee></p>

  52. 0mri הגיב:

    תיקון


    <%while not rs4.EOF%>
    <marquee width="165" height="74"><%=Replace(rs4.fields("mdesc"),chr(13),"<br>")%></marquee></p>
    <%wend%>

  53. BuildHome הגיב:

    אתה צריך
    לעשות את הלולאה על התוכן שנמצא בתוך ה-marquee
    ולא כתבת rs4.MoveNext.

  54. 0mri הגיב:

    לא עשיתי את זה עם איידי
    כל מה שיש בטבלה זאת העמודה
    mdesc

  55. BuildHome הגיב:

    אז למה עשית לולאה?
    אתה יודע מה אתה עושה?

  56. 0mri הגיב:

    דרך אגב אם תוכל אחרי זה
    להסביר לי איך עושים update אני ישמח מאוד
    תודה מראש 0mri

  57. BuildHome הגיב:

    אני לא אמור ללמד אותך
    אתה אמור ללמוד באמצעות המדריכים באתר.
    ASP,VBS,SQL.

  58. 0mri הגיב:

    כאילו לפי מה שרשום קראתי הרבה פעמים
    וראיתי שבמאמרים עושים  את זה בשיטה אחרת..

  59. 0mri הגיב:

    טוב שניה יש לי שאלה אחרת מה אומרת
    השגיאה הזאת?


    Microsoft JET Database Engine error '80040e14'

    Syntax error (missing operator) in query expression 'PID='.

    /zombie123/gallery/replies.asp, line 9

    השורה שלי היא


    sql="select * from replies where PID="&Request.QueryString("ID")

    שורה 9


    rs.open sql, conn

  60. BuildHome הגיב:

    הנתון שאתה מנסה
    לשלוף משורת הכתובות (ID) ריק.

  61. 0mri הגיב:

    סידרתי תבעיה + בעיה נוספת
    כל פעם הבעיה הזאת חוזרת על עצמה אין לי מושג למה

    INSERT INTO replies(rtitle,redesc,by) VALUES('sdasdasd','dasd','asda')
    Microsoft JET Database Engine error '80040e14'

    Syntax error in INSERT INTO statement.

    /zombie123/gallery/insert_replies.asp, line 10

    הקוד שמכניס תנתונים


    SQLstr="INSERT INTO replies(rtitle,redesc,by)"
          SQLstr= SQLstr & " VALUES('"&Request.QueryString("rtitle")&"','" & Request("redesc") & "','"
          SQLstr= SQLstr & Request("by") & "')"
          Response.Write SQLstr
          conn.Execute SQLstr
          conn.Close
          Set conn = Nothing
          Response.Redirect "index.asp"

  62. BuildHome הגיב:

    by מילה שמורה. שים אותה בסוגריים []

  63. 0mri הגיב:

    בעיה אחרת.->->


    INSERT INTO replies(rtitle,redesc,[by]) VALUES('שגשגדשדגשד','גדשגדשגשגד','דששג')
    Microsoft JET Database Engine error '80004005'

    You cannot add or change a record because a related record is required in table 'pics'.

    /zombie123/gallery/insert_replies.asp, line 10

    תודה מראש

  64. BuildHome הגיב:

    זו שגיאה
    הקשורה לקשר גומלין שיצרת בין 2 הטבלאות.
    תבדוק את העניין.

  65. 0mri הגיב:

    אני לא מבין מה הבעיה
    קישרתי את pid בטבלה replies ל id בטבלה pics

  66. 0mri הגיב:

    עכשיו כתובה בעיה אחרת


    INSERT INTO replies(pid,rtitle,redesc,[by]) VALUES(",'sdasdas','dadasdasd','asdasd')
    Microsoft JET Database Engine error '80040e07'

    Data type mismatch in criteria expression.

    /zombie123/gallery/insert_replies.asp, line 10

    שורה 10    

    conn.Execute SQLstr

  67. BuildHome הגיב:

    לדעתי
    כדאי לך לכתוב הודעה חדשה.
    ההודעה הזו כבר לא תקפוץ וגם ככה עצומה מדי (אולי עדיף למחוק אותה[?]).

    רק תפרט את הסיבה מחדש עם קוד רלוונטי והכל כמו שצריך שגם אחרים יוכלו להבין ולעזור.

שלח תשובה