עבור לתוכן

עזרה בASP

Featured Replies

פורסם

מה הבעיה אני מנסה להוסיף אנשים למסד נתונים ואני לא מצליח

<body bgcolor="E5E5E5">
<%
set c=Server.CreateObject("ADODB.Connection")

c.Provider="Microsoft.Jet.OLEDB.4.0"
c.Open Server.MapPath("proj.mdb")

dim s,use,email,pass3,date
use=request.form("use")
email=request.form("mail")
pass3=request.form("pass1")

s="insert into users values("&use&", '"&email&"', "&pass3&")"
c.execute s

c.close
set c=nothing

response.write("נרשמת")
%>

הוא אומר לי Microsoft JET Database Engine (0x80040E10)

??לא ניתן ערך עבור אחד או יותר מבין הפרמטרים הדרושים.

/p/game.asp, line 14

פורסם

השאילתא שלך לא נכונה אתה לא נותן לו שם את שמות השדות שאליהם הנתונים יכנסו

s="insert into users (bla,bla1,bla2) values('" & user & "', '" & email & "', '" & pass3 & "')"

פורסם

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

במקרה שלך כנראה שלא התייחסת לאחת העמודות

התחביר הנכון יותר הוא התחביר המלא


insert into table1 (column1Name, column2Name) values(column1Value, column2Value)

פורסם
  • מחבר

s="insert into users(use, mail, pass) values("&use&", '"&email&"', "&pass3&")"

זה המשפט החדש ועדיין אותה בעיה

פורסם

אין עוד עמודות בטבלה שאתה לא מתייחס אליהן ?

פורסם

אתה רושם הכל בבלגאן וקשה להבין.

תנסה לרשום עם רווחים מסודר כמו המשפט שרשמתי לך.

כמו כן אני רואה שאתה לא שם ' בסיסמה ובשם משתמש. אם אתה קולט string (טקסט) אתה חייב לשים אותו.

פורסם

יעזור אם תרשום גם את הבעיה שאתה נתקל בה.

פורסם
  • מחבר

סוג שגיאה:

Microsoft JET Database Engine (0x80040E10)

??לא ניתן ערך עבור אחד או יותר מבין הפרמטרים הדרושים.

/p/game.asp, line 14

תמונה של המסד נתונים:

http://img400.imageshack.us/img400/4754/24189088li7.jpg

הקוד:

<% 
set c=Server.CreateObject("ADODB.Connection")

c.Provider="Microsoft.Jet.OLEDB.4.0"
c.Open Server.MapPath("proj.mdb")

dim s,use1,email,pass3,date
use1=request.form("use")
email=request.form("mail")
pass3=request.form("pass1")

s="insert into users(use, mail, pass) values("&use1&", '"&email&"', "&pass3&")"
c.execute s

c.close
set c=nothing

response.write("נרשמת")
%>

פורסם

בואנה עכשיו הכול ברור, וזה בדיוק מה שאמרתי לך מלכתחילה והתעלמת מההערה שלי :

יש לך שם עמודה נוספת בשם code שקרוב לוודאי מוגדרת אצלך כ- לא יכולה לקבל null וגם אין לה ערכי ברירת מחדל ואתה מתעלם ממנה בפקודת ה- insert

פורסם
  • מחבר

אבל אחי אני לא רוצה להכניס כלום לקוד כי אני רוצה לעשות כאילו USER וADMIN ואז אם זה 1 אז זה ADMIN ואם זה 0 אז זה USER

אם יש לך שיטה אחרת לזה אתה מוכן להציג את הפתרון שלך

ואם לא אז אני יעשה את זה אני יעשה לכולם 0 ורק דרך המסד נתונים אני ישנה ל-1?

פורסם

:-\

פתח את הטבלה במצב של עיצוב.

תלחץ על השדה code ואתה תראה למטה כלמני מאפיינים שלו.

ככל הנראה המאפיין בשל "נדרש" מוגדר ככן ואז אתה לא יכל להשאיר אותו ריק.

יש לך 2 אופציות:

1. להגדיר אותו כלא ואז מי ש 1 הוא אדמין

2. לשים ערך ברירת מחדל 0 ומי ש 1 הוא אדמין

פורסם

מצטרף למה שאמר Pure-Gold

או שאתה קובע ל- access מה לעשות עם השדה הנ"ל כאשר אין אליו התייחסות בקוד

וזה אומר או לתת ערך ברירת מחדל או להגיד שזה שדה לא חובה

אחרת אתה חייב להכניס אותו לקוד , אין דרך אחרת

פורסם
  • מחבר

איך אני אומר שזה שדה לא חובה?

אני דווקא חשבתי להכניס 0 לשדה הזה כברירת מחדל ורק ADMIN יוכל להוסיף עוד ADMINS

פורסם

יש שם פרמטר שנקרא "דרוש".

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

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים