ASP登录代码未提交

时间:2013-10-21 09:32:31

标签: html sql forms login asp-classic

我正在尝试创建一个由asp和sql支持的登录页面。单击提交后,表单甚至不会触发(即如果字段为空,则甚至不显示错误消息)

这是我的代码:

<!DOCTYPE html>
<html>
<title>
Query
</title>
<link href="http://hr-computing/public/AlexS/Tests/Site.css" rel="stylesheet">
 <body>
<div id="main">

<%
username = ""
password = ""
ErrorMessage = ""

if request.form <> "" then
   username = Request.Form("firstname")
   password = Request.Form("password")
  if username = "" or password = "" then
     ErrorMessage = "You must specify a username and password."
  else
     set conn=Server.CreateObject("ADODB.Connection")
 conn.Open ="{private}
set rs=Server.CreateObject("ADODB.recordset")
    set rs = Server.CreateObject("ADODB.recordset")
    rs.Open "Select firstname, PASSWORD FROM teachers WHERE firstname = '" & firstname & "'", conn
    if rs.EOF = false then 
      if rs.fields("Password") = password then
         Response.Redirect("http://hr-computing/public/AlexS/Tests/default.asp")
      end if
    end if 
  ErrorMessage = "Login failed"
  end if 
end if
%>



<h1>Login</h1>
<form method="post" action="http://hr-computing/public/AlexS/Tests/login.asp">
<fieldset>
 <legend>Log In to Your Account</legend>
<ol>
<li>
 <label>Username:</label>
<input type="text" id="firstname" name="firstname" />
</li>
<li>
<label>Password:</label>
 <input type="password" id="password" name="password" />
</li>
<li>
 <p><input type="submit" value="Login" /></p>
</li>
</ol>
 </fieldset>
</form>
</div>
</body>
</html>

有人告诉我出了什么问题。

2 个答案:

答案 0 :(得分:0)

您在哪里打印出错误消息?它看起来不像你在任何地方显示的那样。经典ASP对这些东西很痛苦 - 但在某个地方你需要一个

<%= ErrorMessage %> 

调用以显示登录错误。

答案 1 :(得分:-3)

当您使用asp.net时,为了验证空的用户名和密码,您可以使用必需的字段验证器。务必将验证组设置为文本框和提交按钮。