בעיה עם התחברות ב-ASP - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

בעיה עם התחברות ב-ASP


^DaGoN^

Recommended Posts

אז ככה, יש לי את הטופס התחברות שהולך לקובץ ASP שבודק במסד נתונים אם הנתונים הם של אדמין או משתמש רגיל, הנה הקוד:

<%  
set oConn=Server.CreateObject("ADODB.Connection")
oConn.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("Forum.mdb")

memberName=request.Form("memberName")
password=request.Form("password")

sqlStrInsert="select * FROM forumAdmins WHERE (memberName='"+memberName+"' AND password='"+password+"')"
set Admin=oConn.Execute(sqlStrInsert)

if Admin.EOF then
sqlStrInsert="select * FROM forumMembers WHERE (memberName='"+memberName+"' AND password='"+password+"')"
set clubUser=oConn.Execute(sqlStrInsert)
if clubUser.EOF THEN
Response.Redirect("loginError.asp")
else
session("user")=true
session("memberName")=clubUser.fields("memberName")
session("password")=password
response.Redirect("forum.asp")
end if

else
session("admin")=true
session("memberName")=Admin.fields("memberName")
session("password")=password
response.Redirect("forum.asp")
end if

clubUser.Close
Manager.Close
oConn.Close
%>

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

<% 
if ((session("user")=false) and (session("admin")=false)) then
response.Write "<b><font color='#113c6b' style='font-family: Arial; font-size: 11px;'>ברוך הבא: אורח</font></b><br />"
response.Write "<font color='#113c6b' style='font-family: Arial; font-size: 11px;'>אפשרויות אורח ( <a href='login.asp'>התחבר</a> | <a href='registerationForm.asp'>הירשם</a> )</font>"
end if
if session("user")=true then
memberName=session("memberName")
set oConn=server.createobject("adodb.connection")
oConn.open("DRIVER={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("Forum"))
'set sqlSelect=server.createobject("adodb.recordset")
'sqlSelect.activeconnection=oConn
sqlInsert="select * from forumMembers WHERE (memberName='"+memberName+"')"
Set sqlSelect=oConn.Execute(sqlInsert)
Response.Write "<b><font color='#113c6b' style='font-family: Arial; font-size: 11px;'>ברוך הבא, "+sqlSelect.fields ("firstName")+"</font></b>"
response.Write("<br />")
response.Write "<font color='#113c6b' style='font-family: Arial; font-size: 11px;'>אפשרויות משתמש ( <a href='memeberOptions.asp'>אפשרויות משתמש</a> | <a href='memberLogout.asp'>התנתקות</a> )</font>"
end if
if session("admin")=true then
memberName=session("memberName")
set oConn=server.createobject("adodb.connection")
oConn.open("DRIVER={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("Forum"))
'set sqlSelect=server.createobject("adodb.recordset")
'sqlSelect.activeconnection=oConn
sqlInsert="select * from forumAdmins WHERE (memberName='"+memberName+"')"
Set sqlSelect=oConn.Execute(sqlInsert)
Response.Write "<b><font color='#113c6b' style='font-family: Arial; font-size: 11px;'>ברוך הבא, "+sqlSelect.fields ("firstName")+"</font></b>"
response.Write("<br />")
response.Write "<font color='#113c6b' style='font-family: Arial; font-size: 11px;'>אפשרויות מנהל ( <a href='adminOptions.asp'>אפשרויות משתמש</a> | <a href='adminLogout.asp'>התנתקות</a> )</font>"
end if
%>

קישור לתוכן
שתף באתרים אחרים

1) תשמור בSESSION סטרינגים, לא בולאנים(יכול להיות שזו הבעיה).

2) כדאי לך ליצור טבלה אחת של משתמשים, ובטבלה הזו יהייה שדה שמציין אם המשתמש הוא מנהל.

3) את אובייקט החיבור שלך כדאי לך להגדיר בראש הדף, ולא באחד הIFים.

קישור לתוכן
שתף באתרים אחרים

ארכיון

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

×
  • צור חדש...