Crash1hd
05-01-2003, 09:18 AM
Trying to set up a membership login site but for some reason after loging in as a valed user entering username and password and clicking submit it goes to a page that says "you are now logged in" and at this point it should say the users name here is the script what am I doing wrong
members.asp
<%@Language="VBScript"%>
<!-- #include file="checklogin.asp" -->
<html><head><title>title</title>
<body>
<br>
<P Class=title>You are now logged in, <%=login%>. Yay!</p>
</body>
checklogin.asp
<% If Request.Cookies("login") <> "OK" Then Response.Redirect("login.asp") %>
login.asp
<% @Language="VBScript" %>
<% Option Explicit %>
<% Response.CacheControl="Private" %>
<% Response.Expires= -1 %>
<%
'*************************************** FUNCTIONS
Function SQLFormat(byVal str)
If IsNull(str) Then str = ""
SQLFormat = Replace(str,"'","''")
End Function
Function RemoveExtraSpaces(byVal str)
If IsNull(str) Then str = ""
Dim resRegEx
Set resRegEx = New RegExp
resRegEx.Pattern = "\s+"
resRegEx.Global = True
RemoveExtraSpaces = resRegEx.Replace(str," ")
End Function
Function RequestFormat(str)
If IsNull(str) Then str = ""
RequestFormat = Trim(RemoveExtraSpaces(Replace(str,vbTab,"")))
End Function
'***************************** DIMENSION VARIABLES
' Connection variables
Dim Conn, RS, sConnString, sMapPath
Dim username ' user is a reserved word in Access
Dim pass ' password is a reserved word in Access
Dim submitnumber ' This is used to determine whether the form has been submitted
Dim rememberme ' Set a cookie expiration date (we'll use a year for now) otherwise cookie will expire when session is over
Dim confirmed ' Use this to check if they have been confirmed
'******************************* REQUEST VARIABLES
username = RequestFormat(Request.Form("username"))
pass = RequestFormat(Request.Form("pass"))
rememberme = Request.Form("rememberme")
submitnumber = Request.Form("submitnumber")
confirmed = True
'************************************ MAIN PROGRAM
If Request.Cookies("login") = "OK" Then Response.Redirect("login/members.asp")
submitnumber = submitnumber + 1
If username <> "" AND pass <> "" Then
Call OpenConnection()
Dim Member1Query
Member1Query = "SELECT username, pass, confirmed FROM members WHERE username = '" & SQLFormat(Left(username,255)) & "' AND pass = '" & SQLFormat(Left(pass,255)) & "'"
Set RS = Conn.Execute(Member1Query)
If NOT RS.EOF Then
confirmed = rs("confirmed")
If confirmed = True Then
Response.Cookies("login") = "OK"
If rememberme = "1" Then
Response.Cookies("login").Expires = Date + 365
End If
Call CloseConnection()
Response.Redirect("login/members.asp")
Else
Call DisplayLoginForm()
End If
Else
Call DisplayLoginForm()
End If
Else
Call DisplayLoginForm()
End If
'******************************** END MAIN PROGRAM
'************************************* SUBROUTINES
Sub OpenConnection() '''''''''''''''''''''''''''''
sConnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
Mid(Server.MapPath("\"), 1, InStrRev(Server.MapPath("\"),"\")-1) & "\AR DbFiles\AR.mdb;" & _
"Persist Security Info=False;"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open sConnString
End Sub ''''''''''''''''''''''''''''''''''''''''''
Sub CloseConnection() ''''''''''''''''''''''''''''
Conn.Close
Set Conn = Nothing
End Sub ''''''''''''''''''''''''''''''''''''''''''
%>
<% Sub DisplayLoginForm() '''''''''''''''''''''''' %>
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head>
<title>title</title>
<LINK href="style.css" rel="stylesheet" type="text/css">
<script language="JavaScript" src="Header.js"></script></head>
<body>
<div>
<% If submitnumber > 1 AND username <> "" AND pass <> "" AND confirmed = True Then %>
<h1>Invalid Login.</h1>
<% ElseIf confirmed = False Then %>
<P class=title>Please make sure to check your email, and confirm registration before loging in!</p>
<% End If %>
<form name="login" action="login.asp" method="post">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="30%"> </td>
<td width="40%">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="50%">
<p align="right">Username: </p></td>
<td width="50%"><input type="text" name="username" value="<% = Server.HTMLEncode(username) %>" size="20" />
<% If submitnumber > 1 AND username = "" Then Response.Write("<span style=""color:#cc0000""> * Required</span>") %></td>
</tr>
<tr>
<td width="50%">
<p align="right">Password: </p></td>
<td width="50%"><input type="password" name="pass" value="<% = Server.HTMLEncode(pass) %>" size="20" />
<% If submitnumber > 1 AND pass = "" Then Response.Write("<span style=""color:#cc0000""> * Required</span>") %></td>
</tr>
<tr>
<td width="100%" colspan="2"><p align="center"><input type="checkbox" name="rememberme" value="1" /> Remember my username and password</p></td>
</tr>
</table>
</td>
<td width="34%"> </td>
</tr>
<tr>
<td width="30%"> </td>
<td width="40%">
<p align="center">
<input type="hidden" name="submitnumber" value="<% = submitnumber %>" />
<input type="submit" value="Submit" />
<br /><br /><a href="register.asp">New Members Register Here</a>
</p>
</td>
<td width="34%"> </td>
</tr>
</table>
</form>
</body>
</html>
<% End Sub ''''''''''''''''''''''''''''''''''''''' %>
members.asp
<%@Language="VBScript"%>
<!-- #include file="checklogin.asp" -->
<html><head><title>title</title>
<body>
<br>
<P Class=title>You are now logged in, <%=login%>. Yay!</p>
</body>
checklogin.asp
<% If Request.Cookies("login") <> "OK" Then Response.Redirect("login.asp") %>
login.asp
<% @Language="VBScript" %>
<% Option Explicit %>
<% Response.CacheControl="Private" %>
<% Response.Expires= -1 %>
<%
'*************************************** FUNCTIONS
Function SQLFormat(byVal str)
If IsNull(str) Then str = ""
SQLFormat = Replace(str,"'","''")
End Function
Function RemoveExtraSpaces(byVal str)
If IsNull(str) Then str = ""
Dim resRegEx
Set resRegEx = New RegExp
resRegEx.Pattern = "\s+"
resRegEx.Global = True
RemoveExtraSpaces = resRegEx.Replace(str," ")
End Function
Function RequestFormat(str)
If IsNull(str) Then str = ""
RequestFormat = Trim(RemoveExtraSpaces(Replace(str,vbTab,"")))
End Function
'***************************** DIMENSION VARIABLES
' Connection variables
Dim Conn, RS, sConnString, sMapPath
Dim username ' user is a reserved word in Access
Dim pass ' password is a reserved word in Access
Dim submitnumber ' This is used to determine whether the form has been submitted
Dim rememberme ' Set a cookie expiration date (we'll use a year for now) otherwise cookie will expire when session is over
Dim confirmed ' Use this to check if they have been confirmed
'******************************* REQUEST VARIABLES
username = RequestFormat(Request.Form("username"))
pass = RequestFormat(Request.Form("pass"))
rememberme = Request.Form("rememberme")
submitnumber = Request.Form("submitnumber")
confirmed = True
'************************************ MAIN PROGRAM
If Request.Cookies("login") = "OK" Then Response.Redirect("login/members.asp")
submitnumber = submitnumber + 1
If username <> "" AND pass <> "" Then
Call OpenConnection()
Dim Member1Query
Member1Query = "SELECT username, pass, confirmed FROM members WHERE username = '" & SQLFormat(Left(username,255)) & "' AND pass = '" & SQLFormat(Left(pass,255)) & "'"
Set RS = Conn.Execute(Member1Query)
If NOT RS.EOF Then
confirmed = rs("confirmed")
If confirmed = True Then
Response.Cookies("login") = "OK"
If rememberme = "1" Then
Response.Cookies("login").Expires = Date + 365
End If
Call CloseConnection()
Response.Redirect("login/members.asp")
Else
Call DisplayLoginForm()
End If
Else
Call DisplayLoginForm()
End If
Else
Call DisplayLoginForm()
End If
'******************************** END MAIN PROGRAM
'************************************* SUBROUTINES
Sub OpenConnection() '''''''''''''''''''''''''''''
sConnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
Mid(Server.MapPath("\"), 1, InStrRev(Server.MapPath("\"),"\")-1) & "\AR DbFiles\AR.mdb;" & _
"Persist Security Info=False;"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open sConnString
End Sub ''''''''''''''''''''''''''''''''''''''''''
Sub CloseConnection() ''''''''''''''''''''''''''''
Conn.Close
Set Conn = Nothing
End Sub ''''''''''''''''''''''''''''''''''''''''''
%>
<% Sub DisplayLoginForm() '''''''''''''''''''''''' %>
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head>
<title>title</title>
<LINK href="style.css" rel="stylesheet" type="text/css">
<script language="JavaScript" src="Header.js"></script></head>
<body>
<div>
<% If submitnumber > 1 AND username <> "" AND pass <> "" AND confirmed = True Then %>
<h1>Invalid Login.</h1>
<% ElseIf confirmed = False Then %>
<P class=title>Please make sure to check your email, and confirm registration before loging in!</p>
<% End If %>
<form name="login" action="login.asp" method="post">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="30%"> </td>
<td width="40%">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td width="50%">
<p align="right">Username: </p></td>
<td width="50%"><input type="text" name="username" value="<% = Server.HTMLEncode(username) %>" size="20" />
<% If submitnumber > 1 AND username = "" Then Response.Write("<span style=""color:#cc0000""> * Required</span>") %></td>
</tr>
<tr>
<td width="50%">
<p align="right">Password: </p></td>
<td width="50%"><input type="password" name="pass" value="<% = Server.HTMLEncode(pass) %>" size="20" />
<% If submitnumber > 1 AND pass = "" Then Response.Write("<span style=""color:#cc0000""> * Required</span>") %></td>
</tr>
<tr>
<td width="100%" colspan="2"><p align="center"><input type="checkbox" name="rememberme" value="1" /> Remember my username and password</p></td>
</tr>
</table>
</td>
<td width="34%"> </td>
</tr>
<tr>
<td width="30%"> </td>
<td width="40%">
<p align="center">
<input type="hidden" name="submitnumber" value="<% = submitnumber %>" />
<input type="submit" value="Submit" />
<br /><br /><a href="register.asp">New Members Register Here</a>
</p>
</td>
<td width="34%"> </td>
</tr>
</table>
</form>
</body>
</html>
<% End Sub ''''''''''''''''''''''''''''''''''''''' %>