|
原因是在没有从数据库中找到任何数据库的情况下,调用数据库数据。
就是说你SQL语句,跟本没有查询出任何数据,可以你下面就直接用rs("rmid")了。
解决办法是在查询数据库后,先判断一下有没有查询出结果。
用:not rs.eof
rs.eof 表示空,没有任何查询结果。
not rs.eof 表示有结果。
所以用:if not rs.eof then ‘就是说如果查询结果不为空,那么再进行下一步。
<%
if request("checked")<>"" then
id=request("checked")
id=replace(request("checked")," ","")
id=replace(id,"'","")
id=replace(id,"=","")
id=replace(id,"from","")
set rs=server.createobject("adodb.recordset")
conn="DBQ="+server.mappath("../sjk/3sj0sjk.mdb")+";DRIVER={Microsoft Access Driver (*.mdb)}"
sql="select * from word where rmid in (" & Id & ")"
rs.open sql,conn,1,1
if not rs.eof then
%>
<%for i=1 to rs.pagesize%>
<font size="2"><a target="pword" href="pword.asp?checked=<%=rs("rmid")%>"><%=rs("singer")%>-<%=rs("name")%></a></font><br>
<%
rs.movenext
next
end if
%>
|