|
|
# 1 |
|
חבר בקהילה
|
[ASP] שגיאה בדף מסוים
שלום לכולם ,
יש לי את הקוד הזה קוד:
<!-- #INCLUDE FILE="Header.asp"-->
<%
if session("memberOK")="no" then
Response.Write("אין לך גישה לכאן")
Response.End
end if
db=request.form("typeD")
set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)}; Dbq="& Server.MapPath("data.mdb") &";"
set rec=Server.CreateObject("ADODB.RecordSet")
sql = "INSERT INTO "&db&" (rooms,ads,city,floor,ac,parc,price,comment,cell,phone,rs) VALUES(" &request.form("Rooms")& ", '"& request.form("ads") &"', '"& request.form("city") &"', "& request.form("Floor") &", "& request.form("ac") &","& request.form("parc") &","& request.form("price") &", '"& request.form("comment") &"', "& request.form("cphone") &","& request.form("phone") &",'"&session("username")&"')"
rec.Open sql,conn,3,3
conn.execute (sql)
response.write("הדירה נוספה")
response.Write("מספר הדירה"& rec.Fields("num").Value)
rec.Close
set rec=nothing
conn.close
set conn=nothing
%>
<!-- #INCLUDE FILE="Footer.asp"-->
קוד:
ADODB.Recordset error '800a0cc1' Item cannot be found in the collection corresponding to the requested name or ordinal. /DoNewApt.asp, line 15 תודה מראש לעוזרים . |
|
|
|
# 2 |
|
אחראי פורום
|
אני לא מבין כלום ב-ACCESS, אך יכול להיות שאתה צריך גם להכניס את NUM ולתת לו NULL?
כי כאן: HTML קוד:
rooms,ads,city,floor,ac,parc,price,comment,cell,phone,rs אך איני בטוח, אך רק תנסה. |
|
|
|
# 3 |
|
Whatever
|
הוא מדבר על ההדפה של num, לא ההכנסה למסד..
__________________
תומר |
|
|
|
# 4 |
|
A Al Alm Almo Almog!
תודה על תרומתך! |
אתה מנסה לשלוף ערך ממסד ע"י שאילתת INSERT?
אתה צריך להשתמש בשאילתת SELECT, ורק אז תוכל לקחת את הערך מהטבלה. INSERT זה להזנת נתונים. " rec.Open sql,conn,3,3 " אין סיבה להשתמש בקוד הזה, אתה לא משתמש בו. בכלל, כל הקוד שעשית לא נכון.. תקרא שוב מדריכים של איך להשתמש במסד נתונים עם ASP. |
|
|
|
# 5 |
|
חבר בקהילה
|
החלק של ההכנסה עובד , אבל החלק של השליפה לא .
אני צריך לשולף את ה Num של הרשומה שהוא יצר כרגע , איך אני עושה זאת ? חשבתי שה rec הולך על אותה הרשומה שנוצרה. |
|
|
|
# 6 |
|
A Al Alm Almo Almog!
תודה על תרומתך! |
בשביל לשלוף אותו, אתה צריך לעשות SQL נוסף, של SELECT.
אתה לא יכול לשלוף משהו, אם לא הגדרת משאילתה שתוציא אותו תחילה מהטבלה. sql="select num from tbl": set rs= rs.open sql,conn,3,1: num=rs.fields("num"): קודם עליך לעשות שאילתת SELECT(להפעיל) |
|
|
|
# 7 |
|
חבר בקהילה
|
קוד:
conn.execute (sql)
sql="select num from "&db&" "
rec.open sql,conn,3,1
num=rec.Fields("num")
איך ב select הוא יודע איזה Num לשלוף ? הרי יש כמה Num או שהוא עושה זאת על הרשומה שהוכנה עכשיו ? |
|
|
|
# 8 |
|
A Al Alm Almo Almog!
תודה על תרומתך! |
תגדיר WHERE.
אני ממליץ לך לקרוא מדריך SQL.. יש פה בפורום אחד שפעם ממזמן כתבתי, או בהרבה אתרים אחרים כדוגמת www.webmaster.org.il. |
|
|
|
# 9 |
|
חבר בקהילה
|
קראתי כבר אבל אני פשוט לא מבין את הדרך שלך ..
WHERE מה ? num= למה ? הרי אני לא ידוע את הערך שלו.... |
|
|
|
# 10 |
|
A Al Alm Almo Almog!
תודה על תרומתך! |
אם הייתה יודע את הערך שלו, לא הייתה צריך לשלוף אותו
כדי לשלוף משהו מטבלה, אתה צריך לציין לפחות פרמטר אחד שיש באותה שורה, שלא חוזר על עצמו, ואז זה יביא לך את ה NUM. לדוגמא את אחד הנתונים שהזנת בטבלה, כמה שורות לפני. למשל: select num from tbl where tbl.rooms="&request.form("rooms")&" ושוב אני ממליץ לך לקרוא מדריך SQL.. בלי לקרוא מדריך טוב לא תצליך להתקדם, כי מה שאתה שואל זה דבר בסיסי, מאוד בסיסי.. שאילתת SELECT היא השאילתה הכי בסיסית ב SQL.. |
|
![]() |
| חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|