יש לי דף login.aspx

amera

New member
יש לי דף login.aspx

ואני משתמש ב-
Sub cmdLogin_Click(Sender As Object, E As EventArgs) Dim strOk As String Dim strOk2 As String 'Attempt to Validate User Credentials strOk2 = null_check(txtUsername.Value, txtPassword.Value) If (strOk2 <> "") Then strOk = Login(txtUsername.Value, txtPassword.Value) If (strOk <> "") Then 'Redirect browser back to originating page FormsAuthentication.RedirectFromLoginPage(strOk, false) Else ' Login failed spnInfo.innerHTML = "Login Failed!" End If Else spnInfo.innerHTML = "You have to enter your Password and Username" End If End Sub​
לאחר מילוי USERNAME ו- PASSWORD אני מועבר ישירות לדף default.aspx למרות שהוא לא קיים, ואני מקבל ERROR!!! האם יש לזה הסבר?
 

yuval k

New member
לא שייך: אם הדף לא קיים זה 404.

amera> מהו הערך של strOK?
 

amera

New member
להלן

הערך של strOK יכול להיות רק "OK" או "":
Function null_check(strUsername As String, strPassword As String) if (txtUsername.value = "") or ((txtPassword.value.ToString) = "") then Return "" Else Return "ok" End If End Function Function Login(strUsername As String, strPassword As String) As String Dim strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("data\school_reports.mdb") Dim conn As OleDbconnection=New OleDbconnection(strConn) conn.Open() Dim sql As String="select * from users where user_name='" & strUsername sql=sql & "' and password=" & strPassword - 10000 Dim cmd_users As OleDbCommand=New OleDbCommand(sql,conn) Dim dr As OleDbDataReader dr=cmd_users.ExecuteReader() If dr.read() = False Then Return "" Else Return "ok"​
 

gilad g

New member
אתה מועבר לדף הזה

כי זה הדף הדיפולטי שאליו מועברים אחרי RedirectFromLoginPage.
 

amera

New member
האם עקרונית אני יכול בדף login.aspx

לבנות משתני SESSION כך שהדף default.aspx יכול להשתמש בהם!! אני שואל כי דבר מוזר קרה לי: אם אני עובר מ- login.aspx ל- default.aspx דרך response.redirect , עניין ה- SESSION מסתדר באופן הטוב ביותר. אם אני עובר דרך RedirectFromLoginPage, אזי ה- SESSION כאילו לא קיים בכלל!!!?
 

amera

New member
אם אני עובר מ- login.aspx ל- defaul

אם אני עובר מ- login.aspx ל- default.aspx דרך response.redirect , עניין ה- SESSION מסתדר באופן הטוב ביותר. אם אני עובר דרך RedirectFromLoginPage, אזי ה- SESSION כאילו לא קיים בכלל!!!?
 

asp123

New member
אתה מתכוון שה

RedirectFromLoginPage מבטל לך את הsession
 

amera

New member
to be clearer:

to be clearer: I would like to know why the value of session("user_id") = 77 in the login file is not recognizes in the file default.aspx. I'll appreciate it if you try the two files in your webmatrix! (and to ignore the value retreived from the database) I have the following two files: login.aspx: <%@ Page Language="VB" Debug="true" %> <%@ import Namespace="System.Data" %> <%@ import Namespace="System.Data.OleDb" %> <script runat="server"> Function null_check(strUsername As String, strPassword As String) if (txtUsername.value = "") or ((txtPassword.value.ToString) = "") then Return "" Else Return "ok" End If End Function Function Login(strUsername As String, strPassword As String) As String Dim strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("data\school_reports.mdb") Dim conn As OleDbconnection=New OleDbconnection(strConn) conn.Open() Dim sql As String="select * from users where user_name='" & strUsername sql=sql & "' and password=" & strPassword - 10000 Dim cmd_users As OleDbCommand=New OleDbCommand(sql,conn) Dim dr As OleDbDataReader dr=cmd_users.ExecuteReader() If dr.read() = False Then Return "" Else Return "ok" session.Item("permission_to_exams")="ok" session("user_id") = 77 session.Item("user_email")=dr("user_email") session.Item("user_fname")=dr("user_fname") session.Item("user_mname")=dr("user_mname") session.Item("user_lname")=dr("user_lname") session.Item("user_name")=dr("user_name") session.Item("class_id")=dr("class_id") session.Item("school_id")=dr("school_id") session.Item("subject_id")=dr("subject_id") session.Item("user_sex")=dr("user_sex") session.Item("admin")=dr("admin") End If conn.close() End Function Sub cmdLogin_Click(Sender As Object, E As EventArgs) Dim strOk As String Dim strOk2 As String 'Attempt to Validate User Credentials strOk2 = null_check(txtUsername.Value, txtPassword.Value) If (strOk2 <> "") Then strOk = Login(txtUsername.Value, txtPassword.Value) If (strOk <> "") Then 'Redirect browser back to originating page FormsAuthentication.RedirectFromLoginPage(strOk, false) Else ' Login failed spnInfo.innerHTML = "Login Failed!" End If Else spnInfo.innerHTML = "You have to enter your Password and Username" End If End Sub </script> <!-- =========================== User Interface ============================ --> <html> <head> <title>Login</title> </head> <body> <form id="WebForm1" method="post" runat="server"> <!-- Username -->Username: <input id="txtUsername" type="text" size="30" runat="server" /> <br /> <br /> <!-- Password -->Password: <input onkeypress='if (event.keyCode>=48 && event.keyCode<=57==false) {alert("Passwords should be numbers - Except For Registering New Schools For The First Time")}' id="txtPassword" type="password" size="30" runat="server" /> <br /> <br /> <!-- Button --> <input type="submit" value="Sign In Now" runat="server" onserverclick="cmdLogin_Click" /> <br /> <br /> <!-- Label --><span id="spnInfo" runat="server"></span> </form> </body> </html> AND The FILE: default.aspx: <%@ Page Language="vb" %> <script runat="server"> Sub Page_Load(Sender As Object, E As EventArgs) Session("user_id") = session("user_id") + 4 lblSessionvar.Text = Session("user_id") End Sub </script> <html> <head> </head> <body>​
 

amera

New member
כבר חודש יש לי בעיות עם SESSIONS

אני מצרף את שני הקבצים, LOGIN ו- DEFAULT אנא לעזור לי למה דף ה- DEFAULT לא "תופס" את ה- session(user_id") המוגדר ב- LOGIN: default:
<%@ Page Language="vb" %> <script runat="server"> Sub Page_Load(Sender As Object, E As EventArgs) Session("intNumber") = session("user_id") + 4 lblSessionvar.Text = Session("intNumber") End Sub </script> <html> <head> </head> <body> <form id="WebForm1" method="post" runat="server"> Here is the value in the session variable increased by 4: <br /> <asp:Label id="lblSessionvar" runat="server"></asp:Label> <br /> <br /> </form> <a href="login_to_exams.aspx">Back</a> </body> </html>​
LOGIN
<%@ Page Language="VB" Debug="true" %> <%@ import Namespace="System.Data" %> <%@ import Namespace="System.Data.OleDb" %> <script runat="server"> Function null_check(strUsername As String, strPassword As String) if (txtUsername.value = "") or ((txtPassword.value.ToString) = "") then Return "" Else Return "ok" End If End Function Function Login(strUsername As String, strPassword As String) As String Dim strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;data source=" & server.mappath("data\school_reports.mdb") Dim conn As OleDbconnection=New OleDbconnection(strConn) conn.Open() Dim sql As String="select * from users where user_name='" & strUsername sql=sql & "' and password=" & strPassword - 10000 Dim cmd_users As OleDbCommand=New OleDbCommand(sql,conn) Dim dr As OleDbDataReader dr=cmd_users.ExecuteReader() If dr.read() = False Then Return "" Else Return "ok" session.Item("permission_to_exams")="ok" session("user_id") = 8 'dr("user_id") session.Item("user_email")=dr("user_email") session.Item("user_fname")=dr("user_fname") session.Item("user_mname")=dr("user_mname") session.Item("user_lname")=dr("user_lname") session.Item("user_name")=dr("user_name") session.Item("class_id")=dr("class_id") session.Item("school_id")=dr("school_id") session.Item("subject_id")=dr("subject_id") session.Item("user_sex")=dr("user_sex") session.Item("admin")=dr("admin") End If conn.close() End Function Sub cmdLogin_Click(Sender As Object, E As EventArgs) Dim strOk As String Dim strOk2 As String 'Attempt to Validate User Credentials strOk2 = null_check(txtUsername.Value, txtPassword.Value) If (strOk2 <> "") Then strOk = Login(txtUsername.Value, txtPassword.Value) If (strOk <> "") Then 'Redirect browser back to originating page FormsAuthentication.RedirectFromLoginPage(strOk, false) Else ' Login failed spnInfo.innerHTML = "Login Failed!" End If Else spnInfo.innerHTML = "You have to enter your Password and Username" End If End Sub </script> <!-- =========================== User Interface ============================ --> <html> <head> <title>Login</title> </head> <body> <form id="WebForm1" method="post" runat="server"> <!-- Username -->Username: <input id="txtUsername" type="text" size="30" runat="server" /> <br /> <br /> <!-- Password -->Password: <input onkeypress='if (event.keyCode>=48 && event.keyCode<=57==false) {alert("Passwords should be numbers - Except For Registering New Schools For The First Time")}' id="txtPassword" type="password" size="30" runat="server" /> <br /> <br /> <!-- Bu​
 
למעלה