新微赢技术网

标题: [求助]用记登录 [打印本页]

作者: 夜流冰    时间: 2010-1-16 01:27
标题: [求助]用记登录
<%
set rs=server.CreateObject("adodb.recordset")
rs.open "select * from denglu where name='"&name&"' and pwd='"&pwd&"'" ,conn,1,1

if request.Form("name")="" then
response.Write"<script language=javascript>alert('请输入用户名');history.back(-1);</script>"
response.End()
end if
if request.Form("pwd")="" then
response.Write"<script language=javascript>alert('请输入密码');history.back(-1);</script>"
response.End()
end if
name=trim(request.Form("name"))
pwd=trim(request.Form("pwd"))
if rs.eof then
response.Write"<script> alert('用户名或密码不正确');history.back(-1);</script>"
response.End()
else
session("name")=rs("name")
session("pwd")=rs("pwd")
response.Redirect"1.asp"
end if
rs.close
set rs=nothing
cn.close
set cn=nothing
%>
这什么不读取数据库中的数据库呢
作者: 木子    时间: 2010-1-16 01:27
这种编程风格要不得。
1.代码凌乱
2.无重用技术
3.顺序发生错误。
还是在做之前理一下你的思路吧
作者: 夜寒    时间: 2010-1-16 01:27
cn.close
set cn=nothing

cn哪里来的?
作者: ㄣ紸縡のoァ    时间: 2010-1-16 01:27
那个是数据库连接。。

还有1楼的,你这样写不行

set rs=server.CreateObject("adodb.recordset")
rs.open "select * from denglu where name='"&name&"' and pwd='"&pwd&"'" ,conn,1,1

应该放在输入值判断后,这样每次都去判断一次,你也没去关闭数据库连接。。

还有一些注入的判断也没加 我一个 admin or 1=1 ' 你就没掉了!




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2