机顶盒推荐:ASP,登陆页的一些问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 08:37:12
我在做登陆页的时候,碰到了一些问题,
1 我仿照别的的代码,做的时候,登陆的用户名和密码验证,这一块都差不多,可是我运行时,输入错误的用户名和密码时就提示:
Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

ADODB.Field 错误 '80020009'

BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。

/web/login.asp,行6
-----------------------------------------------------------------
login.asp

<!-- #include file="conn.asp" -->
<%
set rsl = CreateOBject("ADODB.Recordset")
sqrl = "select * from login where username='"&request.form("username")&"' and password='"&request.form("password")&"'"
rsl.open sqrl,conn,1,1
session("username")=rsl("username")
session("password")=rsl("password")
session.Timeout = 30
set rsl=nothing
response.Redirect("/web/page_public/yonghudenglu2.asp?")
%>

输入正确的时候可以进入跳转的网页,输入错误的时候就提示错误,我仿的那个人的代码时,输入错误的时候就好像刷新了一下页面,把刚才输入的内空清空了,不知道为什么。
那个人的代码:
<!-- #include file="conn.asp" -->
<!-- #include file="ini.asp" -->
<%
'打开数据库判断用户是否存在,info为表名,username为字段名
set rsc=server.createobject("adodb.recordset")
sqlc="select * from info where username='"&request.Form("username")&"' and password='"&request.Form("password")&"'"
rsc.open sqlc,conn,1,1
session("username")=rsc("username")
session("password")=rsc("password")
session.Timeout=30
set rsc=nothing
response.Redirect("change.asp")
'如果用户不存在,session("username")为空
%>
-----------------------------------------------------------------
问题2:
我在输入正确后,跳转到
response.Redirect("/web/page_public/yonghudenglu2.asp?")
连接的那个网页,想输入,XXX,欢迎你,这个XXX怎么用这个跳转把信息传过去呢。

我是一个新手,想在网上找一个老师,不会的时候问一些问题,如果经验非常的人,有空的话,请把QQ留下,谢谢了。

这么点分,问题那么多呀!!

第一个问题:你没有判断用户名或密码是否正确啊!
select * from userTable where userID= and pwd=
查不到,说明用户名或密码不正确,所以在使用
session("username")=rsl("username") 时错,rsl.eof rsl.bof有一个有真,其实这时都为真,说明 rsl无记录!
在此之前应该做一个判断
if rsl.eof and rsl.bof then
提示用户名或密码不正确!
end if

第二个问题:这就是判断登录的条件了,没看到login里把rsl("userName") 放到了 session("userName")里吗??
session的使用域为global,在那个页面可以这样做
respnse.write session("userName") & "欢迎您再次光临本站!"

第一个问题是你的数据库里面没有东西.
第二个问题地址后面加上变量.