Link to home
Start Free TrialLog in
Avatar of GessWurker
GessWurker

asked on

fix problem in simple asp login page; add username field

I've got a simple asp login page, but it's got two little problems I need to fix.
1) When login fails, we lose the original target url. We need to keep that information.
2) I need to add a username field.

Who can help?

Thanks!

gesswurker
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
dim targetUrl
      If Request.Cookies("PasswordIsValidated") = "true" Then
            Response.Redirect(Replace(Request.QueryString("target"),"gggAmPggg","&"))
      End If
      
      If Request.QueryString("action")="login" Then
            dim pwd
            pwd = "password"
            dim username
            username = "username"
       
            If pwd = Trim(Request.Form("txtPassword")) Then
                  Response.Cookies("PasswordIsValidated") = "true"
                  Response.Redirect(Replace(Request.QueryString("target"),"gggAmPggg","&"))
            Else
                  Response.Redirect("password.asp?result=loginfailed") 'here's where I need to include the target url
            End If
      End If
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login</title>
<link href="bibliography.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
body {
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
}
-->
</style></head>
<br/>
<body>
<table border="0"><tr><td width="50">&nbsp;</td><td>
    <form action="password.asp?action=login&target=<%=Request.QueryString("target")%>" method="post">
            <% If Request.QueryString("result")="loginfailed" Then %>
                <p>Login failed. Please check that you have entered the correct password.</p>
            <% End If %>
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="22%"><h1>Login</h1></td>
                <td width="78%">&nbsp;</td>
              </tr>
              <tr>
                <td height="36" colspan="2">A password is required in order to request items from the AIM-VA Catalog. </td>
              </tr>
              <tr>
                <td height="44">Password: </td>
                <td><input type="password" id="txtPassword" name="txtPassword" /></td>
              </tr>
              <tr>
                <td>&nbsp;</td>
                <td>&nbsp;</td>
              </tr>
              <tr>
                <td><input type="submit" id="btnLogin" name="btnLogin" value="Login" onclick="return ValidateLogin();" /></td>
                <td>&nbsp;</td>
              </tr>
            </table>
            <h2>&nbsp;</h2>
            <p>&nbsp;</p>
            <p>&nbsp;</p>
            <p>&nbsp;</p>
    </form>
</td></tr></table>
</body>
</html>

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of hielo
hielo
Flag of Wallis and Futuna image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of GessWurker
GessWurker

ASKER

I also need a username field along with a validation test.
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
dim targetUrl
      If Request.Cookies("PasswordIsValidated") = "true" Then
            Response.Redirect(Replace(Request.QueryString("target"),"gggAmPggg","&"))
      End If
     
      If Request.QueryString("action")="login" Then
            dim pwd
            pwd = "password"
            dim username
            username = "username"
       
            If pwd = Trim(Request.Form("txtPassword")) AND username = Trim(Request.Form("txtUsename")) Then
                  Response.Cookies("PasswordIsValidated") = "true"
                  Response.Redirect(Replace(Request.QueryString("target"),"gggAmPggg","&"))
            Else
                  Response.Redirect("password.asp?result=loginfailed&target=" & Request.QueryString("target")) ) 'here's where I need to include the target url
            End If
      End If
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login</title>
<link href="bibliography.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
body {
      margin-left: 0px;
      margin-top: 0px;
      margin-right: 0px;
}
-->
</style></head>
<br/>
<body>
<table border="0"><tr><td width="50">&nbsp;</td><td>
    <form action="password.asp?action=login&target=<%=Request.QueryString("target")%>" method="post">
            <% If Request.QueryString("result")="loginfailed" Then %>
                <p>Login failed. Please check that you have entered the correct password.</p>
            <% End If %>
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="22%"><h1>Login</h1></td>
                <td width="78%">&nbsp;</td>
              </tr>
              <tr>
                <td height="36" colspan="2">A password is required in order to request items from the AIM-VA Catalog. </td>
              </tr>
              <tr>
                <td height="44">Username: </td>
                <td><input type="text" id="txtUsername" name="txtUsername" /></td>
              </tr>
              <tr>
                <td height="44">Password: </td>
                <td><input type="password" id="txtPassword" name="txtPassword" /></td>
              </tr>
              <tr>
                <td>&nbsp;</td>
                <td>&nbsp;</td>
              </tr>
              <tr>
                <td><input type="submit" id="btnLogin" name="btnLogin" value="Login" onclick="return ValidateLogin();" /></td>
                <td>&nbsp;</td>
              </tr>
            </table>
            <h2>&nbsp;</h2>
            <p>&nbsp;</p>
            <p>&nbsp;</p>
            <p>&nbsp;</p>
    </form>
</td></tr></table>
</body>
</html>
Corrections: misspelled username here:
Trim(Request.Form("txtUsename"))

and there is an extra/unmatched closing parenthesis here (which you need to remove):
Response.Redirect("password.asp?result=loginfailed&target=" & Request.QueryString("target")) ) 'here's where I need to include the target url
Thanks hielo. It's all working now!