中易网

ASP高手进

答案:4  悬赏:70  
解决时间 2021-01-13 00:46
  • 提问者网友:原来太熟悉了会陌生
  • 2021-01-12 20:56
ASP高手进
最佳答案
  • 二级知识专家网友:执傲
  • 2021-01-12 22:26
用以下的代码替换掉你本来的
<%
name=Replace(Request.Form("name"),"'","''")
pwd=Replace(request.Form("pwd"), "'","''")
'对提交的帐号和密码进行过滤及变量取值
set rs=server.CreateObject("adodb.recordset")
rs.open "select * from admin where name='"& name &"' and pwd='"& pwd & "'",conn,1,3
'往数据库admin表里搜索提交的管理员帐号和密码
if rs.eof and rs.bof then
'如果没有找到 那就是错误 转到admin.asp继续登陆
rs.close
set rs=nothing
Response.Write("")
Response.End
else
'否则就是正确 转到 admin2.asp 进行管理
rs.close
set rs=nothing
Response.Redirect ("admin2.asp")
end if
%>
全部回答
  • 1楼网友:舍身薄凉客
  • 2021-01-13 01:31
if not rs.eof then
response.write ""
else
response.Redirect("admin2.asp")
end if
判断写反了吧?应该是查找到记录就验证通过,正确的写法:
if rs.eof then
response.write ""
else
response.Redirect("admin2.asp")
end if
  • 2楼网友:神鬼未生
  • 2021-01-13 00:18
前面的代码都没问题
Rs.Open 一下的代码有问题
If Not Rs.Eof Then
这句的意思是:如果查询到记录,就是说登录成功了
Else
登录失败
你写反了
另外:如果要输出JavaScript脚本的话
下面一行最好加上Response.End()
不然的话JavaScript可能不会执行
  • 3楼网友:话散在刀尖上
  • 2021-01-12 22:44
现在不行吗?
rs.open "select * from admin where name='"& name &"'" &" and pwd='"& pwd & "'",conn,1,1
if rs.eof then
response.write ""
else
response.Redirect("admin2.asp")
end if
这里就是啊。。不过少了 session 代码而已
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息