首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

BOF 或 EOF 中有一个是“真”,或许当前的记录已被删除

2012-07-08 
BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除%@ LanguageVBScript %% option explicit %!--#i

BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除
<%@ Language=VBScript %>
<% option explicit %>
<!--#include file="conn.asp"-->
<%

if session("studentname")="" then
  Response.Redirect "default.asp"
end if
%>
<html>
<head>
<title>考试界面----再线考试系统</title>
</head>
<script language="javascript">
function attention()
{
  alert('时间到了,请交卷!');
  document.getElementById('submit').click();
}
setTimeout("attention()",<%=session("testtime")*60*1000%>)
</script>
<body bgcolor="#FFFFFF" background=images/backimage.gif>
<p align="center"><b><font face="宋体" size="5" color="#FF0000"><%=session("selectsubjectname")%>考试</font></b></p>
<%
if request.form("submit1")="开始考试" then
%>
<form name="testform" method="post" action="result.asp">
  <table border="0" cellspacing="0" bordercolor="#111111" width="100%" >
  <tr>
  <td width="100%" height="25"><b><font size="3" color="#000080">一、单项选择题(每题<%=session("singleper")%>分,共<%=session("singlenumber")%>题)</font></b></td>
  </tr>
  </table>
<%

  dim i,sql,rs,count,temp,strid1,strid2
  strid1=""
  strid2=""
  randomize
 for i=1 to session("singlenumber")
 'for i=1 to CInt(CStr(Request.Cookies("singlenumber")))
  set rs=server.createobject("adodb.recordset")
' sql="select * from question where subjectname='"& Request.Cookies("selectsubjectname") & "'and type='单选题' and haveselect=0 "
  sql="select * from question where subjectname='"&session("selectsubjectname") & "'and type='单选题' and haveselect=0 "
  rs.open sql,conn,3,4
  count=rs.recordcount
  temp=fix(count*rnd(10))
  rs.move temp
  rs("haveselect")=1

  strid1=strid1 & rs("ID") & ","

%>
  <table border="0" cellspacing="1" style="border-collapse: collapse" bordercolor="#C0C0C0" width="100%" cellpadding="0">
  <tr>
  <td width="100%" bgcolor="#EFEFEF" height="20">&nbsp;&nbsp;<b><%=i%>、<%=rs("question")%></b></td>
  </tr>
<%
  if rs("A")<>"" then
%>
  <tr>
  <td width="100%">&nbsp;&nbsp;&nbsp;&nbsp;<input type="radio" name="NO<%=rs("id")%>" value="A">A、<%=rs("A")%></td>
  </tr>
<%
  end if
  if rs("B")<>"" then
%>
  <tr>
  <td width="100%">&nbsp;&nbsp;&nbsp;&nbsp;<input type="radio" name="NO<%=rs("id")%>" value="B">B、<%=rs("B")%></td>
  </tr>
<%
  end if
  if rs("C")<>"" then
%>
  <tr>
  <td width="100%">&nbsp;&nbsp;&nbsp;&nbsp;<input type="radio" name="NO<%=rs("id")%>" value="C">C、<%=rs("C")%></td>


  </tr>
<%
  end if
  if rs("D")<>"" then
%>
  <tr>
  <td width="100%">&nbsp;&nbsp;&nbsp;&nbsp;<input type="radio" name="NO<%=rs("id")%>" value="D">D、<%=rs("D")%></td>
  </tr>
<%
  end if
%>  
  </table>
<%  
  rs.update
next
 'rs.close
  'set rs=nothing
%>

  <table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber3">
  <tr>
  <td width="100%" height="25"><b><font color="#000080" size="3">二、多项选择题(每题<%=session("multiper")%>分,共<%=session("multinumber")%>题。每题至少有1项正确的答案,少选、多选、错选均不得分)</font></b></td>
  </tr>
  </table>
  <%
  randomize
  'for i=1 to CInt(Request.Cookies("multinumber"))
  for i=1 to session("multinumber")
  set rs=server.createobject("adodb.recordset")
' sql="select * from question where subjectname='" & Request.Cookies("selectsubjectname") & "'and type='多选题' and haveselect=0 "
  sql="select * from question where subjectname='"&session("selectsubjectname") & "'and type='多选题' and haveselect=0 "
  rs.open sql,conn,3,4
  count=rs.recordcount
  temp=fix(count*rnd(10))
  rs.move temp
  rs("haveselect")=1

  strid2=strid2 & rs("ID") & ","
%>
  <table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2">
  <tr>
  <td width="100%" bgcolor="#EFEFEF" height="20">&nbsp;&nbsp;<b><%=i%>、<%=rs("question")%></b></td>
  </tr>
<%
  if rs("A")<>"" then
%>
  <tr>
  <td width="100%">&nbsp;&nbsp;&nbsp;&nbsp;<input type="checkbox" name="NO<%=rs("id")%>" value="A">A、<%=rs("A")%></td>
  </tr>
<%
  end if
  if rs("B")<>"" then
%>
  <tr>
  <td width="100%">&nbsp;&nbsp;&nbsp;&nbsp;<input type="checkbox" name="NO<%=rs("id")%>" value="B">B、<%=rs("B")%></td>
  </tr>
<%
  end if
  if rs("C")<>"" then
%>
  <tr>
  <td width="100%">&nbsp;&nbsp;&nbsp;&nbsp;<input type="checkbox" name="NO<%=rs("id")%>" value="C">C、<%=rs("C")%></td>
  </tr>
<%
  end if
  if rs("D")<>"" then
%>
  <tr>
  <td width="100%">&nbsp;&nbsp;&nbsp;&nbsp;<input type="checkbox" name="NO<%=rs("id")%>" value="D">D、<%=rs("D")%></td>
  </tr>
<%
  end if


%> 
  </table>
<% 
  rs.update
  next
  'rs.close

  response.write("<input type='hidden' name='hidQuestID1' value=" & strID1 & ">")
  response.write("<input type='hidden' name='hidQuestID2' value=" & strID2 & ">")

  set rs=nothing
  set rs=server.createobject("adodb.recordset")
  sql="select * from question where haveselect=1 "
  rs.open sql,conn,3,2
  rs.movefirst
  do while not rs.eof  
  rs("haveselect")=0
  rs.update
  rs.movenext

  loop
  rs.close
  set rs=nothing
  call endConnection()
'response.write(strid1)
'response.write(strid2)
%> 
<p align=center><input type="submit" value="交卷" name="submit" ></p>
</form>
<%
else 
%>
<form method="POST" action="test.asp" name="form">
<p align=center><input type="submit" value="开始考试" id='submit' name="submit1" ></p>
</form>
<%
  response.write "<center>请选择开始考试!</center>"
end if
%>
</body>
</html>


[解决办法]
使用记录集之前,你需要先判断
<%
If Not rs.EOF Then
%>
<td width="100%">&nbsp;&nbsp;&nbsp;&nbsp;<input type="checkbox" name="NO<%=rs("id")%>" value="C">C、<%=rs("C")%></td>
<%
End If
%>

之类的

热点排行