| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1066 人关注过本帖
标题:ASP也闹鬼了。。。。?
只看楼主 加入收藏
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
结帖率:88.89%
收藏
 问题点数:0 回复次数:18 
ASP也闹鬼了。。。。?

我查询不到内容时,我设了一个处理,但是有时这个处理能工作,有时候却不能工作,好奇怪,像闹鬼了啊,怎么回事啊?
<!--#include file="connections/conn.asp" -->
<%set rs=Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM checkinout WHERE checkid="&request("id")
rs.open sql,conn,1,3%>
<%if rs.eof and rs.bof then%>
<script language="javascript">
alert("该岗位已经收费,请检查后重新操作!");
window.history.back();
</script>
<%end if%>

执行后,提示。。。
错误类型:
ADODB.Field (0x80020009)
BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
/ao/humanresourcedep/signagreement.asp


搜索更多相关主题的帖子: ASP 闹鬼 
2007-10-03 21:04
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 

这样的写法有点问题,要做一下调整
<%if rs.eof and rs.bof then%>
<script language="javascript">
alert("该岗位已经收费,请检查后重新操作!");
window.history.back();
</script>
<%end if%>
改成
<%
if rs.eof and rs.bof then
response.write "<script language='javascript'>alert('该岗位已经收费,请检查后重新操作!');window.history.back();</script>" '这句是一行写的
else
%>
<%
..... '如果sql语句成立,你想显示的内容
%>
<%
end if
%>

2007-10-03 21:15
skydragon219
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-9-27
收藏
得分:0 
应该是or吧!?
即:if rs.eof or rs.bof then

至于如何输出提示信息,
个人认为对于上面的两种写法应该都是正确的.

[此贴子已经被作者于2007-10-3 21:31:19编辑过]


2007-10-03 21:26
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 

各位大虾,上述的分析还是无法正常使用!都不行!请再想想办法吧!

2007-10-03 22:03
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 
以下是引用boyfuture在2007-10-3 22:03:51的发言:

各位大虾,上述的分析还是无法正常使用!都不行!请再想想办法吧!

报什么错吗?还是报一楼一样的错?

2007-10-03 22:15
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
以下是引用madpbpl在2007-10-3 22:15:22的发言:

报什么错吗?还是报一楼一样的错?

错误类型:
ADODB.Field (0x80020009)
BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
/ao/humanresourcedep/signagreement.asp

2007-10-03 22:26
skydragon219
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-9-27
收藏
得分:0 
没有理由啊!~~~~~~~~~~~~

<%if rs.eof or rs.bof then '这里就是判断"BOF 或 EOF 中有一个是“真”",即返回true,执行下面的语句%>
<script language="javascript">
alert("该岗位已经收费,请检查后重新操作!");
window.history.back();
</script>
<%end if%>

你检查一下真的是这句的错误吗????

2007-10-03 23:03
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 
楼主的错误原因是因为你要找的id不存在或是已经删除的原因
所以你要加上
if rs.eof and rs.bof then
...... '这里是找不到传递过来id时要做的操作
else
.... '这里是找到传递过来id时要做的操作
end if


2007-10-03 23:14
shaoli4261
Rank: 3Rank: 3
来 自:安徽.巢湖
等 级:新手上路
威 望:6
帖 子:212
专家分:0
注 册:2007-9-11
收藏
得分:0 

同意楼上的!


爱一个人,不一定拥有她,但拥有一个人,就要爱她。也许她不是最好的,但她可能是你最值得的珍惜的人。
2007-10-03 23:26
boyfuture
Rank: 1
等 级:新手上路
帖 子:552
专家分:0
注 册:2005-12-20
收藏
得分:0 
以下是引用madpbpl在2007-10-3 23:14:48的发言:
楼主的错误原因是因为你要找的id不存在或是已经删除的原因
所以你要加上
if rs.eof and rs.bof then
...... '这里是找不到传递过来id时要做的操作
else
.... '这里是找到传递过来id时要做的操作
end if


我原来就是这样定义的,不知为什么不能执行?你看看这一句!
<!--#include file="connections/conn.asp" -->
<%set rs=Server.CreateObject("ADODB.RecordSet")
sql="SELECT * FROM matchlist,checkinout WHERE matchlist.matchidcard=checkinout.checkidcard and matchid="&request("id")
rs.open sql,conn,1,3
if rs.eof and rs.bof then%>'不是有这句话吗?
<script language="javascript">
alert("该岗位已经收费,请检查后重新操作!");
window.history.back();
</script><%end if%>
如果id存在则能正常显示,如果没有,则无法执行相关的语句rs.eof以上有什么问题吗?

[此贴子已经被作者于2007-10-4 16:10:28编辑过]

2007-10-04 15:41
快速回复:ASP也闹鬼了。。。。?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030320 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved