绝缘梯子冲击试验装置:请问一下ASP高手,这段登陆代码麻烦解释一下(奖励50)

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/06 16:34:19
<%
if NOT isempty(request("LoginSubmit")) then
dim username,password
username=replace(trim(request("username")),"'","")
password=md5(replace(trim(request("password")),"'",""))
if username="" or password="" then
call MsgBox("对不起,登录失败,请检查您的登录名和密码","None","None")
end if
set rs=server.CreateObject("adodb.recordset")
rs.Open "select * from [user] where username='"&username&"' and password='"&password&"' " ,conn,1,3
if not(rs.bof and rs.eof) then
if password=rs("password") then
response.Cookies(cookieName)("username")=trim(request("username"))
response.Cookies(cookieName)("vip")=rs("vip")
rs("lastvst")=now()
rs("loginnum")=rs("loginnum")+1
rs.Update
rs.Close
set rs=nothing
response.redirect "muser.asp"
else
call MsgBox("对不起,您的用户名或密码有误!","Back","None")
end if
else
call MsgBox("对不起,您的用户名或密码有误!","Back","None")
end if
end if
%>

麻烦各位达人帮我解释一下这段代码,能详细的尽量详细一点...其实也不是完全不懂,只是如果每句要详细解释一下我又说不上...!
rs.bof and rs.eof这个是什么意思呢?另外conn,1,3 中CONN后的1和3是什么意思?

if NOT isempty(request("LoginSubmit")) then //如果表单请求LoginSubmit不为空,那么
dim username,password //定义两个变量
username=replace(trim(request("username")),"'","") //将表单提交的username赋值给username变量 ,trim就是去掉提交数据的前后空格
password=md5(replace(trim(request("password")),"'","")) //将表单提交的password赋值给password变量,trim就是去掉提交数据的前后空格,replace就是将提交数据中的,改一下,md5是将数据进行md5加密

if username="" or password="" then //如果密码和用户名都是空白的
call MsgBox("对不起,登录失败,请检查您的登录名和密码","None","None") //提示登录失败
end if
set rs=server.CreateObject("adodb.recordset") //打开数据库
rs.Open "select * from [user] where username='"&username&"' and password='"&password&"' " ,conn,1,3 //在数据库中查找看有没有这个username和password
if not(rs.bof and rs.eof) then //如果不是查到最后没找到(即找到了),那么
if password=rs("password") then //如果密码相同
response.Cookies(cookieName)("username")=trim(request("username")) //将用户名写到cookie中
response.Cookies(cookieName)("vip")=rs("vip") //将vip写入cookie中
rs("lastvst")=now() //将现在的时间写到lastvst中
rs("loginnum")=rs("loginnum")+1 //将数据库中登录的次数增加1
rs.Update //更新数据库
rs.Close //关闭数据库
set rs=nothing //删除rs变量
response.redirect "muser.asp" //网页重定向到muser.asp
else
call MsgBox("对不起,您的用户名或密码有误!","Back","None") //否则提示密码有误
end if
else
call MsgBox("对不起,您的用户名或密码有误!","Back","None")
end if
end if
%>

<%
if NOT isempty(request("LoginSubmit")) then
//如果request("LoginSubmit")为空
dim username,password
username=replace(trim(request("username")),"'","")
password=md5(replace(trim(request("password")),"'",""))
//username,password参数接收
if username="" or password="" then
//如果username,password参为空
call MsgBox("对不起,登录失败,请检查您的登录名和密码","None","None")
//警告失败
end if
set rs=server.CreateObject("adodb.recordset")
//创建数据库对象rs
rs.Open "select * from [user] where
username='"&username&"' and password='"&password&"' " ,conn,1,3
//打开表[user]查找满足条件的记录
if not(rs.bof and rs.eof) then
//如果记录不为空
if password=rs("password") then
//如果密码正确
response.Cookies(cookieName)("username")=trim(request("username"))
response.Cookies(cookieName)("vip")=rs("vip")
//创建COOKIE
rs("lastvst")=now()
rs("loginnum")=rs("loginnum")+1
rs.Update
//对此次登陆做统计更新
rs.Close
set rs=nothing
//关闭并释放对象rs
response.redirect "muser.asp"
//强制跳转到muser.asp
else
call MsgBox("对不起,您的用户名或密码有误!","Back","None")
//在不满足条件的情况下警告
end if
else
call MsgBox("对不起,您的用户名或密码有误!","Back","None")
//在不满足条件的情况下警告
end if
end if
%>
里面的IF语句是多层嵌套

<%
if NOT isempty(request("LoginSubmit")) then /* 变量是否初始话 */
dim username,password /* 定义变量 */

username=replace(trim(request("username")),"'","")/* 变量的复值 */

password=md5(replace(trim(request("password")),"'",""))

if username="" or password="" then /如果用户名或者密码为空 */
call MsgBox("对不起,登录失败,请检查您的登录名和密码","None","None")
end if
set rs=server.CreateObject("adodb.recordset")/* 建对象 */
rs.Open "select * from [user] where username='"&username&"' and password='"&password&"' " ,conn,1,3 /*检测用户和密码*/
if not(rs.bof and rs.eof) then */如果没到第一页或最后页 */
if password=rs("password") then /*密码真*/
response.Cookies(cookieName)("username")=trim(request("username")) /*读取不带空格的COOKIES*/
response.Cookies(cookieName)("vip")=rs("vip")
rs("lastvst")=now() /*时间*/
rs("loginnum")=rs("loginnum")+1 /*计数的LOGINNUM+1*/
rs.Update
rs.Close
set rs=nothing /*释放*/
response.redirect "muser.asp" /*转到MUSER页面*/
else
call MsgBox("对不起,您的用户名或密码有误!","Back","None") /*对话框输出*/
end if
else
call MsgBox("对不起,您的用户名或密码有误!","Back","None")
end if
end if
%>

靠 比我写的还烦琐 真是见到高人了