503
צפיות
צפיות
43
תשובות
תשובות
אממ למבינים בasp
הייתי רותה לדעת כמה דברים..
1.איך אני עושה שנגיד מי שנרשם לאתר אז זה מוסיף אוטומטי לרשימת חברים של האתר.
2.איך לעשות את הרשימת חברים.
3.איך אני עושה שמתי שהמתמש מחובר אז רשום שהוא מתחבר נגיד קוראים למשתמש יוסי אז רשום יוסי ומתי שלוחצים עליו אז זה מתנתק מהאתר.
תודה לעוזרים!!
43 תשובות
ככה
תעשה טבלה עם המשתמשים
תציג אותה וזו תהיה הרשימת חברים ובקשר להראות שהו מחובר יש להשתמש בapplication
לא הבנתי בקשר לרשימת חברים
מה זאת אומרת לעשות טבלה עם משתמשים?
אני מתכוון שזה יוסיף אותם מתי שהם נרשמים אוטומטי לשם, וזה יחלק לדפים אוטומטי.
תשובות
1 ו-2. אתה עושה טבלת משתמשים (users למשל) במסד נתונים, ומטופס ההרשמה שלך אתה עושה:
action="signUp.asp"
ובדף הזה אתה מוסיף את המשתמש לטבלה.
3.
בקשר לחלוקה בעמודים, הנה מאמרים מהאתר:
מתוך ה-SQL Server
אוי שני הקישורים יצאו אותו דבר
טוב לא משנה זה השני:
תודה אחי אני ינסה!
אחי לא הבנתי
מזתומרת לעשות מטופס ההרשמה שלי ככה
action="signUp.asp"
?
פשוט
<form action="signUp.asp">
ופה בא הדף signUp.asp שמוסיף את הנתונים שהזין הגולש בטופס ההרשמה אל טבלת המשתמשים.
זה עושה לי תדף אוטומטי?
או שאני צריך לעשות אותו?
אל תתיחס להודעה הקודמת….
עשיתי טופס הרשמה והכל הוא נרשם רשום שהוא נרשם בהצלחה אז אני רוצה שכל אחד שנרשם זה יויסף אותו לרשימה איך אני עושה את זה?
כך
מגדירים את הנתונים שנשלחו מהטופס כמשתנים, יוצרים אובייקט חיבור ו-dsn, פותחים את החיבור, משתמשים ב-insert כדי להוסיף את הנתונים למסד, סוגרים את החיבור ומשחררים אותו.
אתה יוצר אובייקט חיבור ו-dsn, פותח את החיבור
Dim user, pass
user = Request.Form("user")
pass = Request.Form("pass")
Dim conn, dsn, sql
Set conn = Server.CreateObject("ADODB.Connection")
dsn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("yourDb.mdb") & ";"
conn.Open dsn
sql = "INSERT INTO messages (user,pass) VALUES ('"
sql = sql & user & "','" & pass & "')"
conn.Execute sql
conn.Close
Set conn = nothing
אופס
אל תתייחסו למשפט:
"אתה יוצר אובייקט חיבור ו-dsn, פותח את החיבור"
זה היה באמצע שלבי הניסוח
אחי שמע שניה אני רוצה משו כמו זה
http://www.setup.co.il/Forums/Users.asp
נוו מה הבעיה
אתה פשוט שולף את כל הרשומות מטבלת המשתמשים שלך ע"פ id
ואיך אני אומר לו מאיזה מסד לשלוף
את הכל?
לא משנה נראה לי ששאני יסתדר
ככה
Dim conn, dsn, sql
Set conn = Server.CreateObject("ADODB.Connection")
dsn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("yourDb.mdb") & ";"
conn.Open dsn
ותפסיק לבקש קודים מוכנים
אחי אני מודה לך מאוד על העזרה שלך.!
אבל אחי עוד לא הבנתי
לאיזה דף זה מוסיף את כל מי שנרשם נגיד הוא נרשם זה מוסיף אותו למסד נתונים אבל אני רוצה שגם תיהיה רשימה של המשתמשים..
אני מבין שאין לך הרבה ידע בasp
לך למדריך באתר ותלמד קצת
יש לזה מדריך מיוחד.?
תפריט–>מדורים–>ASP–>מדריך ASP
זה הולך ככה..
כל מי שנרשם באמצעות טופס ההרשמה נוסף לטבלת המשתמשים במסד.
רשימת המשתמשים שולפת את כל המשתמשים מהטבלה, לכן גם היא מתעדכנת בהתאם.
הבנת?
עשיתי מה שאמרת וזה..
לא עובד תראה תכנס לטופס הרשמה..
http://bb.1asphost.com/zombie123/registration.asp
נגיד נרשמת אז לטבלה ששמתי תקוד שרשמת פה קוראים users..
http://bb.1asphost.com/zombie123/users.asp
תגיד לי מה הבעיה…
תראה את הקוד
הקוד של הטופס הרשמה יותר מדי ארוך..
תכתוב כאן את השגיאה המתקבלת בבקשה?!
ואת הקוד הרלוונטי!
אין שגיעה פשוט רשום שהדף לא נמצא..
והינה הקוד שמכניס תנתונים למסד..
לא הטופס הרשמה:
cst = "Provider=Microsoft.Jet.OLEDB.4.0;data source="
cst=cst&server.mappath("access.mdb")
set conn = server.createobject("adodb.connection")
conn.connectiontimeout=30
conn.commandtimeout=80
conn.mode=3
conn.open cst
set r=server.createobject("adodb.recordset")
r.activeconnection=conn
sqlstring="select * from users where user_name='" & request.form("user_name") & "'"
r.open sqlstring
if r.eof then
sqlstring2="insert into users values ('" & request.form("client_id") & "','" & request.form("first_name") & "','" & request.form("last_name") & "','" & request.form("user_name") & "','" & request.form("user_password") & "','" &request.form("mail") & "','no')"
conn.execute sqlstring2
response.write"<font size=5 color=blue>"
response.write"ההרשמה לאתר התבצעה בהצלחה"
response.write"</font>"
response.write"<br><br><br><br> <a href=enter.asp name=reg><font color=blue><b><i> כניסה לאתר </i></b></font</a> "
else
response.redirect("registration.asp?err_msg=" & server.URLEncode("שם משתמש כבר קיים"))
end if
%>
<div style="display:none">
</body>
</html>
וזה הקוד של הרשימת משתמשים..
<%
action="insert.asp"
Dim user_name, user_password
user_name = Request.Form("user_name")
user_password = Request.Form("user_password")
Dim conn, dsn, sql
Set conn = Server.CreateObject("ADODB.Connection")
dsn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("access.mdb") & ";"
conn.Open dsn
sql = "INSERT INTO users (user_name,user_password) VALUES ('"
sql = sql & user_name & "','" & user_password & "')"
conn.Execute sql
conn.Close
Set conn = nothing
%>
כמה דברים
קודים מיישרים לשמאל!
באפשרויות הדפדפן כנס ל-ADVANCE ושם תוריד את האפשרות של הצגת הודעות ידידותית למשתמש (או משהו כזה רק באנגלית)
בדקת מה הבעיה בקוד?
זה מה שרשום לי שאני נכנס לקובץ של
החברים
Microsoft JET Database Engine error '80040e14'
Syntax error in INSERT INTO statement.
/zombie123/users.asp, line 14
תראה רק את ה-INSERT INTO
מיושר לשמאל! תודה
קח..
sql = "INSERT INTO users (user_name,user_password) VALUES ('"
USERS היא מילה שמורה באקסס
sql = "INSERT INTO [users] (user_name,user_password) VALUES ('"
ואיפה שאר המשפט?
זה רשום לי את השגיאה הזאת……….
Microsoft JET Database Engine error '80040e14'
Syntax error in INSERT INTO statement.
/zombie123/users.asp, line 14
שאלתי איפה שאר משפט ה-INSERT?
הנה
sql = "INSERT INTO users (user_name,user_password) VALUES ('"
sql = sql & user_name & "','" & user_password & "')"
אופס זה זה
sql = "INSERT INTO users (user_name,user_password) VALUES ('"
sql = sql & user_name & "','" & user_password & "')"
ישר לשמאל!
הנה!
sql = "INSERT INTO users (user_name,user_password) VALUES ('"
sql = sql & user_name & "','" & user_password & "')"
קוד שמכניס את הנתונים למסד
קודם תיצור את אובייקט החיבור ואח"כ תתחבר למסד
עזוב אני מוותר על זה תודה בכל זאת..