BOF 或 EOF 中有一个是“真”,帮忙看下哪出错了~

来源:百度知道 编辑:UC知道 时间:2024/07/08 01:24:27
<%
dingdan=request("dingdan")
set rs=server.CreateObject("adodb.recordset")
rs.open "select * from shop_action where dingdan='"&dingdan&"' order by actionid desc ",conn,1,1%>
<%
if dingdan<>"" then
if rs.eof and rs.bof then
response.write "<script language='javascript'>"
response.write "alert('无此订单号,请检查后重新输入');"
response.write "location.href='javascript:history.go(-1)';"
response.write "</script>"
end if
end if
%>
<%if dingdan<>"" then%>

表中没有数据,这是判断,帮忙看下哪出了问题~
如果表里有数据的话就可以查出来,但是没有要查的数据或者不写查询的关键字就会提示下面的错误。。。

ADODB.Field (0x80020009)
BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
如果表内有数据,输入正确的查询的数据查询就可以查的出来。如果说查询的数据没有就会页面出错。

呵呵,你的程序有点乱
<%
dingdan=request("dingdan")
set rs=server.CreateObject("adodb.recordset")
rs.open "select * from shop_action where dingdan='"&dingdan&"' order by actionid desc ",conn,1,1%>
<%
if rs.eof then
response.write "无考勤信息!<a href=javascript:window.history.go(-1)>无此订单号,请检查后重新输入</a>"
end if
%>

好像是传递的值上存在问题~我前几天用DW做的时候也遇到过,我用自动编号查询的时候就会出现这个错误,后来我改用用户名来做查询对象就解决了
(上面提到的自动编号和用户名都是我数据库礼的数据)