ASP缺少对象: ''
<!--#includefile="conn.asp"--><%DimRs,sql,username,password'读取表单传递过来的管理帐号数据username=R...
<!--#include file="conn.asp"-->
<%
Dim Rs, sql, username, password
'读取表单传递过来的管理帐号数据
username=Request.Form("username")
'读取表单传递过来的管理密码数据
password=Request.Form("password")
'如果管理帐号为空
If username="" Then
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理帐号不能空');history.back();</Script>"
Else
'管理帐号不为空
If password="" Then
'管理密码为空
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理密码不能空');history.back();</Script>"
Else
'管理密码不为空
'建立RecordSet 对象
Set Rs=Server.CreateObject("ADODB.RecordSet")
'从数据库中查询ADMIN表中username 列的值为username 的记录
sql="SELECT * FROM ADMIN WHERE USERNAME='"&username&"'"&" AND PASSWORD='"&password&"'"
'执行查询,并将结果保存在Rs中
Rs.open sql,conn,1,1
'如果不存在满足条件的记录
If Rs.EOF Then
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理帐号或密码错误!');history.back();</Script>"
Response.End
Else
'存在满足条件的记录
'成功登录
'Session变量admin 中保存当前登录管理员的帐号
Session("admin")=Rs("USERNAME")
'页面转到主界面
Response.Redirect "index.asp"
End If
End If
End If
'关闭RecordSet对象
Rs.Close ——————(此为第47行)
Set Rs=Nothing
'关闭数据库连接,释放对象
conn.Close
Set conn=Nothing
%>
错误类型:
Microsoft VBScript 运行时错误 (0x800A01A8)
缺少对象: ''
/BiShe/admin/checkpwd.asp, 第 47 行
数据库已经连接上。
如果输入正确的账号和密码则没有问题,
输入错误的账号或密码(包含账号或密码为空情况),则出现上面的错误。
根据上面的源码似乎应该出现提示(如:管理帐号不能空)啊,
求解答! 展开
<%
Dim Rs, sql, username, password
'读取表单传递过来的管理帐号数据
username=Request.Form("username")
'读取表单传递过来的管理密码数据
password=Request.Form("password")
'如果管理帐号为空
If username="" Then
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理帐号不能空');history.back();</Script>"
Else
'管理帐号不为空
If password="" Then
'管理密码为空
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理密码不能空');history.back();</Script>"
Else
'管理密码不为空
'建立RecordSet 对象
Set Rs=Server.CreateObject("ADODB.RecordSet")
'从数据库中查询ADMIN表中username 列的值为username 的记录
sql="SELECT * FROM ADMIN WHERE USERNAME='"&username&"'"&" AND PASSWORD='"&password&"'"
'执行查询,并将结果保存在Rs中
Rs.open sql,conn,1,1
'如果不存在满足条件的记录
If Rs.EOF Then
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理帐号或密码错误!');history.back();</Script>"
Response.End
Else
'存在满足条件的记录
'成功登录
'Session变量admin 中保存当前登录管理员的帐号
Session("admin")=Rs("USERNAME")
'页面转到主界面
Response.Redirect "index.asp"
End If
End If
End If
'关闭RecordSet对象
Rs.Close ——————(此为第47行)
Set Rs=Nothing
'关闭数据库连接,释放对象
conn.Close
Set conn=Nothing
%>
错误类型:
Microsoft VBScript 运行时错误 (0x800A01A8)
缺少对象: ''
/BiShe/admin/checkpwd.asp, 第 47 行
数据库已经连接上。
如果输入正确的账号和密码则没有问题,
输入错误的账号或密码(包含账号或密码为空情况),则出现上面的错误。
根据上面的源码似乎应该出现提示(如:管理帐号不能空)啊,
求解答! 展开
2个回答
展开全部
你慢慢琢磨吧,我就加了前面的注释,经过我测试,完全达到你要的要求,但是不加注释就和你的情况一样!
<!--#include file="conn.asp"-->
<!-- on error resume next
if request.Form("password")and request.Form("username")<>"" then
end if
if request.Form("")<>"" then
Response.Write "<Script>alert(""管理密码不能空"");history.back();</Script>"
end if
if request.Form("")<>"" then
Response.Write "<Script>alert(""管理帐号不能空"");history.back();</Script>"
end if
sql="select * from admin where [username]='"&request.Form("username")&"' and [password]='"&request.Form("password")&"'"
set rs=Conn.execute(sql)
if rs.eof and rs.bof then
error.clear
response.Write("<script>alert(""你输入的用户名或密码错误!"");history.back();</script>")
else
response.cookies("username")="yes"
response.Redirect("index.asp")
end if
-->
<%
Dim Rs, sql, username, password
'读取表单传递过来的管理帐号数据
username=Request.Form("username")
'读取表单传递过来的管理密码数据
password=Request.Form("password")
'如果管理帐号为空
If username="" Then
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理帐号不能空');history.back();</Script>"
Else
'管理帐号不为空
If password="" Then
'管理密码为空
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理密码不能空');history.back();</Script>"
Else
'管理密码不为空
'建立RecordSet 对象
Set Rs=Server.CreateObject("ADODB.RecordSet")
'从数据库中查询ADMIN表中username 列的值为username 的记录
sql="SELECT * FROM ADMIN WHERE USERNAME='"&username&"'"&" AND PASSWORD='"&password&"'"
'执行查询,并将结果保存在Rs中
Rs.open sql,conn,1,1
'如果不存在满足条件的记录
If Rs.EOF Then
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理帐号或密码错误!');history.back();</Script>"
Response.End
Else
'存在满足条件的记录
'成功登录
'Session变量admin 中保存当前登录管理员的帐号
Session("admin")=Rs("USERNAME")
'页面转到管理界面
Response.Redirect "index.asp"
End If
End If
End If
'关闭RecordSet对象
Rs.Close
Set Rs=Nothing
'关闭数据库连接,释放对象
conn.Close
Set conn=nothing
%>
<!--#include file="conn.asp"-->
<!-- on error resume next
if request.Form("password")and request.Form("username")<>"" then
end if
if request.Form("")<>"" then
Response.Write "<Script>alert(""管理密码不能空"");history.back();</Script>"
end if
if request.Form("")<>"" then
Response.Write "<Script>alert(""管理帐号不能空"");history.back();</Script>"
end if
sql="select * from admin where [username]='"&request.Form("username")&"' and [password]='"&request.Form("password")&"'"
set rs=Conn.execute(sql)
if rs.eof and rs.bof then
error.clear
response.Write("<script>alert(""你输入的用户名或密码错误!"");history.back();</script>")
else
response.cookies("username")="yes"
response.Redirect("index.asp")
end if
-->
<%
Dim Rs, sql, username, password
'读取表单传递过来的管理帐号数据
username=Request.Form("username")
'读取表单传递过来的管理密码数据
password=Request.Form("password")
'如果管理帐号为空
If username="" Then
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理帐号不能空');history.back();</Script>"
Else
'管理帐号不为空
If password="" Then
'管理密码为空
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理密码不能空');history.back();</Script>"
Else
'管理密码不为空
'建立RecordSet 对象
Set Rs=Server.CreateObject("ADODB.RecordSet")
'从数据库中查询ADMIN表中username 列的值为username 的记录
sql="SELECT * FROM ADMIN WHERE USERNAME='"&username&"'"&" AND PASSWORD='"&password&"'"
'执行查询,并将结果保存在Rs中
Rs.open sql,conn,1,1
'如果不存在满足条件的记录
If Rs.EOF Then
'给出提示,返回前一页
Response.Write "<Script>window.alert('管理帐号或密码错误!');history.back();</Script>"
Response.End
Else
'存在满足条件的记录
'成功登录
'Session变量admin 中保存当前登录管理员的帐号
Session("admin")=Rs("USERNAME")
'页面转到管理界面
Response.Redirect "index.asp"
End If
End If
End If
'关闭RecordSet对象
Rs.Close
Set Rs=Nothing
'关闭数据库连接,释放对象
conn.Close
Set conn=nothing
%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询