为什么我设计的网页登录不了

siganel 2008-05-27 11:09:15
我在设计网页登录界面输入的用户和密码都是正确的时老是执行:登陆失败!\n\n错误原因:帐号和密码未填。哪位高手救救我啊!帮看看错在哪里
conn.asp 代码:
<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("contacts.mdb")
%>
login.asp代码:
<form name="login" method="post" action="after_login.asp">
用户名:<input name="Unam" size="12" maxlength="16">密 码:<input name="pwd" size="12" type="password" maxlength="16">
<input align="absMiddle" id="image1" name="image1" src="images/login.gif" type="image" WIDTH="37" HEIGHT="20">
</form>
after_login.asp代码:
<!--#include file="conn.asp"-->
<%
Dim Unam,pwd
Unam=Trim(Request.Form("Unam"))
pwd=Trim(Request.Form("pwd"))
If Unam="" or pwd="" Then
Response.Write ("<script>alert('登陆失败!\n\n错误原因:帐号和密码未填。');history.back();</script>")
Response.end
End If

if Instr(Unam,">")>0 or Instr(Unam,"<")>0 or Instr(Unam,"=")>0 or Instr(Unam,"%")>0 or Instr(Unam,chr(32))>0 or Instr(Unam,"?")>0 or Instr(Unam,"&")>0 or Instr(Unam,";")>0 or Instr(Unam,",")>0 or Instr(Unam,"'")>0 or Instr(Unam,chr(34))>0 or Instr(Unam,chr(9))>0 or Instr(Unam,"")>0 or Instr(Unam,"$")>0 then
Response.Write ("<script>alert('登陆失败!\n\n错误原因:含有非法字符!');history.back();</script>")
Response.end
else
Unam=Trim(Unam)
end if

set rs=server.createobject("adodb.recordset")
sql="select * from contacts where Unam='"&Unam&"'"
rs.open sql,conn,1,3
if rs.eof then
Response.Write ("<script>alert('登陆失败!\n\n错误原因:帐号错误。');history.back();</script>")
Response.end
else
if rs("pwd")<>pwd then
rs.close
set rs=nothing
Response.Write ("<script>alert('登陆失败!\n\n错误原因:密码错误。');history.back();</script>")
Response.end
else

session("Unam")=Unam'登录成功传递一个session值以便以后调用用户相关
session.timeout=300
Response.redirect"main.asp"
end if
end if
rs.close
set rs=nothing
CloseDatabase
%>
...全文
237 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zscmj 2010-10-31
  • 打赏
  • 举报
回复
大家好。我有一个问题:我设计一个网站,登录时,不管我的用户名密码是否正确,它返回的,都是用户名密码不正确;而不能转跳到成功的页面。

部分代码::

set rs=server.createobject("adodb.recordset")
sql="select * from User_info where username='"&username&"'and password='"&password&"'"
rs.open sql,conn,1,3

if rs.eof or rs.bof then
rs.close
set rs=nothing
Response.Write("<script language=javascript>alert('请输入正确的用户名和密码');this.location.href='Login.asp';</script>")
Response.End
else
rs("LoginCount")=rs("LoginCount")+1
rs("LastTime")=rs("LoginTime")
rs("LastIP")=rs("LoginIP")
rs("LoginTime")=now()
rs("LoginIP")=Request.ServerVariables("REMOTE_ADDR")
rs.Update
Session("username")=rs("username")
Session("Admin_Level")=rs("Admin_Level")
Session("LockState")=rs("LockState")
Session("IsAccessAllow")=true
'Server.ScriptTimeout=500
Session.timeout=500
rs.close
set rs=nothing
Response.Redirect ("admin_index.asp")
end if
zscmj 2010-10-31
  • 打赏
  • 举报
回复
大家好,我是新生,原本想发帖请教的。但是积分不够,所以在这里插入一个问题:我设计的网页,登录页,用户验证页,连接数据库都没有错误。但是,不管我的用户名,密码是否正确,它返回的都是我输入错误。已经搞了几天了。还是找不出问题。请各位高手指教指教。不便之处,请见谅。
siganel 2008-05-29
  • 打赏
  • 举报
回复
不知道是不是:
IWAM账号不同步

症状举例:
HTTP 500 - 内部服务器错误

原因分析:
IWAM账号是安装IIS时系统自动建立的一个内置账号。IWAM账号建立后被Active Directory、IIS metabase数据库和COM+应用程序三方共同使用,账号密码被三方分别保存,并由操作系统负责这三方保存的IWAM密码的同步工作。系统对IWAM账号的密码同步工作有时会失效,导致IWAM账号所用密码不统一。

解决办法:
如果存在AD,选择开始->程序->管理工具->Active Directory用户和计算机。为IWAM账号设置密码。
运行c:\Inetpub\AdminScripts>adsutil SET w3svc/WAMUserPass +密码 同步IIS metabase数据库密码
运行cscript c:\inetpub\adminscripts\synciwam.vbs -v 同步IWAM账号在COM+应用程序中的密码
siganel 2008-05-28
  • 打赏
  • 举报
回复
谢谢各位了,不过我按楼上的说法改了,提交后显示:HTTP 500 - 内部服务器错误
单刷新after_login.asp 执行:登陆失败!\n\n错误原因:帐号和密码未填
是after_login.asp代码错吗?
gb_m4gic 2008-05-28
  • 打赏
  • 举报
回复
<input align="absMiddle" id="image1" name="image1" src="images/login.gif" type="image" WIDTH="37" HEIGHT="20">
改成
<input align="absMiddle" name="Submit" id="image1" src="images/login.gif" type="image" WIDTH="37" HEIGHT="20">
jackyzsy2008 2008-05-28
  • 打赏
  • 举报
回复
把你那个login页面的作为提交作用的<input type="image" ....的value设置为submit
gb_m4gic 2008-05-28
  • 打赏
  • 举报
回复
<input align="absMiddle" id="image1" name="image1" src="images/login.gif" type="image" WIDTH="37" HEIGHT="20">
改成
<input align="absMiddle" name="Submit" id="image1" name="image1" src="images/login.gif" type="image" WIDTH="37" HEIGHT="20">
ilovey4 2008-05-28
  • 打赏
  • 举报
回复
应该是你的表单没有提交成功 导致提交的内容传不到after_login.asp页面
把那个图片域换成提交看看
siganel 2008-05-28
  • 打赏
  • 举报
回复
login.asp代码改为:
<form name="login" method="post" action="after_login.asp">
用户名:<input name="Unam" size="12" maxlength="16">密 码:<input name="pwd" size="12" type="password" maxlength="16">
<label>
<input type="submit" name="Submit" value="提交" />
</label>
</form>
还是不行!

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧