ASP中显示上一条下一条出错
<%Setrs1=Server.CreateObject("Adodb.RecordSet")rs1.Open"Select*fromsecuwherenid="&nid...
<%
Set rs1=Server.CreateObject("Adodb.RecordSet")
rs1.Open "Select * from secu where nid="&nid-1&"",conn,1,1
IF rs1.bof Then
response.write" 【没有上一个了】"
end if
if not(rs1.bof and rs1.eof) then%>
上一条:<a href="secu_body.asp?nid=<%=Rs1("nid")%>" title="<%=Rs1("cnt")%>" ><%response.write(rs1("cnt"))%></a>
<%
end if
rs1.close
set rs1=nothing
%>
</td><td>
<%
Set rs2=Server.CreateObject("Adodb.RecordSet")
rs2.Open "Select * from secu where nid="&nid+1&"",conn,1,1
IF rs2.eof Then
response.write" 【没有下一个了】"
end if
if not(rs2.bof and rs2.eof) then%>
下一条:<a href="secu_body.asp?nid=<%=Rs2("nid")%>" title="<%=Rs2("cnt")%>" >
<%response.write(rs2("cnt"))%></a>
<%end if
rs2.close
set rs2=nothing%>
这段代码是可以正常运行的.但是有个问题 就是在 检索数据库ID的时候 比如 我现在有1-100条记录.但是中间我把 第50条删除了.他显示到第50条的时候就说 没有记录了.我想解决怎么样才可以让他进行全局检索呢就是对整个表
楼下的大哥,你的程序我放上去了,但是提示出错啊
Microsoft VBScript 运行时错误 错误 '800a01a8'
缺少对象: ''
/notice_body.asp,行 123
这句话是 foodrs.AbsolutePage =page 展开
Set rs1=Server.CreateObject("Adodb.RecordSet")
rs1.Open "Select * from secu where nid="&nid-1&"",conn,1,1
IF rs1.bof Then
response.write" 【没有上一个了】"
end if
if not(rs1.bof and rs1.eof) then%>
上一条:<a href="secu_body.asp?nid=<%=Rs1("nid")%>" title="<%=Rs1("cnt")%>" ><%response.write(rs1("cnt"))%></a>
<%
end if
rs1.close
set rs1=nothing
%>
</td><td>
<%
Set rs2=Server.CreateObject("Adodb.RecordSet")
rs2.Open "Select * from secu where nid="&nid+1&"",conn,1,1
IF rs2.eof Then
response.write" 【没有下一个了】"
end if
if not(rs2.bof and rs2.eof) then%>
下一条:<a href="secu_body.asp?nid=<%=Rs2("nid")%>" title="<%=Rs2("cnt")%>" >
<%response.write(rs2("cnt"))%></a>
<%end if
rs2.close
set rs2=nothing%>
这段代码是可以正常运行的.但是有个问题 就是在 检索数据库ID的时候 比如 我现在有1-100条记录.但是中间我把 第50条删除了.他显示到第50条的时候就说 没有记录了.我想解决怎么样才可以让他进行全局检索呢就是对整个表
楼下的大哥,你的程序我放上去了,但是提示出错啊
Microsoft VBScript 运行时错误 错误 '800a01a8'
缺少对象: ''
/notice_body.asp,行 123
这句话是 foodrs.AbsolutePage =page 展开
2个回答
展开全部
这好比一个分页程序,每页只用显示一条记录,不要根据他数据库里的ID来实现上页下页程序,建议使用page来实现,就不会出现第几条记录被删除而查询不到的情况了
具体实现为:
Set rs1=Server.CreateObject("Adodb.RecordSet")
rs1.Open "Select * from secu order by nid",conn,1,1
page=request("page") '接收page值
if page="" then
page=1 '如果没有 就初始化
end if
if not rs1.eof then
rs1.pagesize=1
foodrs.AbsolutePage =page
record=rs1.recordcount
if page=1 then '如果是第一个记录
response.write" 【没有上一个了】"
else
%>
上一条:<a href="secu_body.asp?nid=<%=Rs1("nid")%>&page=<%=page-1%>" title="<%=Rs1("cnt")%>" ><%response.write(rs1("cnt"))%></a>
<%
end if
if page=record then '如果是最后个记录
response.write" 【没有下一个了】"
else
%>
下一条:<a href="secu_body.asp?nid=<%=Rs1("nid")%>&page=<%=page+1%>" title="<%=Rs1("cnt")%>" >
<%response.write(rs1("cnt"))%></a>
<%
end if
end if
rs1.close
set rs1=nothing
'……
%>
具体实现为:
Set rs1=Server.CreateObject("Adodb.RecordSet")
rs1.Open "Select * from secu order by nid",conn,1,1
page=request("page") '接收page值
if page="" then
page=1 '如果没有 就初始化
end if
if not rs1.eof then
rs1.pagesize=1
foodrs.AbsolutePage =page
record=rs1.recordcount
if page=1 then '如果是第一个记录
response.write" 【没有上一个了】"
else
%>
上一条:<a href="secu_body.asp?nid=<%=Rs1("nid")%>&page=<%=page-1%>" title="<%=Rs1("cnt")%>" ><%response.write(rs1("cnt"))%></a>
<%
end if
if page=record then '如果是最后个记录
response.write" 【没有下一个了】"
else
%>
下一条:<a href="secu_body.asp?nid=<%=Rs1("nid")%>&page=<%=page+1%>" title="<%=Rs1("cnt")%>" >
<%response.write(rs1("cnt"))%></a>
<%
end if
end if
rs1.close
set rs1=nothing
'……
%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询