中易网

实现分页记录的效果

答案:2  悬赏:70  
解决时间 2021-04-28 04:16
  • 提问者网友:无心恋土
  • 2021-04-27 18:24

下面是页面和代码~但是运行后却只是显示前5条记录,点击下一页的时候还是前5条记录,请高手帮帮忙看看代码哪里错误了~谢谢啦~

页面如下:

下面的代码是实现分页记录的代码:

<% set rs=server.CreateObject("adodb.recordset")
sql="select * from comments"
rs.open sql,conn,1,1
if rs.bof and rs.eof then '不存在记录
response.Write ("目前没有记录")
else '存在记录
counts=5 '每页显示记录条数
rs.pageSize = counts '每页记录数
allpages = rs.pageCount '总页数
page = Request("page") '从浏览器取得当前页
If not isNumeric(page) then page=1 'page不是数字
if isEmpty(page) or Cint(page) < 1 then 'page为空或小于1
page = 1
elseif Cint(page) >= allPages then 'page值大于总页数
page = allPages
end if
rs.AbsolutePage = page '转到某页头部
Do While (Not rs.eof) and counts>0 '循环显示指定条数的记录
'显示记录
%>
<%
While ((Repeat1__numRows <> 0) AND (NOT rscomments.EOF))
%>
<form id="form2" name="form2" method="post" action="">
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td><table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td bgcolor="#00CCFF"><strong><%=(rscomments.Fields.Item("fID").Value)%>楼</strong>的 <%=(rscomments.Fields.Item("fName").Value)%> 在 <%=(rscomments.Fields.Item("fDate").Value)%> 发表:
</td>
<td bgcolor="#00CCFF">
<%if session("fAccount")<>"a" then%>
<a href="reply.asp?fID=<%=(rscomments.Fields.Item("fID").Value)%>">回复</a>
<%else%>
<a href="delete.asp?fID=<%=(rscomments.Fields.Item("fID").Value)%>">删除</a></td>
<%end if%>
<tr>
<td colspan="2"><p></p>
<p><%=(rscomments.Fields.Item("fContent").Value)%></p>
<p><%=(rscomments.Fields.Item("fReply").Value)%></p></td>
</tr>
</table></td>
</table>
</form>
<%
Repeat1__index=Repeat1__index+1
Repeat1__numRows=Repeat1__numRows-1
rscomments.MoveNext()
Wend
%>
<%
counts = counts - 1 '每页显示条数减1
rs.movenext '指向下一条记录
'已经到底最后一条记录则跳出
if rs.eof then exit do
loop '结束循环
End If
%>
<div style="margin:5px auto; width:600px; text-align:center; height:15px;">
<%
'显示总新闻条数
response.write "<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前共有<font color='red'>"&rs.recordcount&"</font>条记录 "
if page = 1 then '到达第一页
response.write "<font color=darkgray>首页 前页</font>"
else '不是第一页
%>
<a href=?page=1>首页</a> <a href=?page=<%=page-1%>>前页</a>
<%
end if
if page = allpages then '到达最后一页
response.write "<font color=darkgray> 下页 末页</font>"
else '不是最后一页
%>
<a href=?page=<%=page+1%>>下页</a> <a href=?page=<%=allpages%>>末页</a>
<%
end if
'显示当前页数信息
response.write " 第<font color='red'>"&page&"</font>页 共<font color='red'>"&allpages&"</font>页 "
%>
</div>

最佳答案
  • 二级知识专家网友:强势废物
  • 2021-04-27 18:55

改别一种循环语句就可,


fTD=rs("fID");



<% set rp=server.CreateObject("adodb.recordset")
rpsql="select * from Reply where rID="&fID& order by rdate desc""
rp.open rpsql,conn,1,1%>


<%while not rp.eof%>


<%
rp.movenext
wend
%>
<%end if
rp.close
set rp=nothing
%>



全部回答
  • 1楼网友:嗷呜我不好爱
  • 2021-04-27 19:50
在搜索的应用中,用户给出搜索条件,服务器查出符合条件的记录。但往往搜索会返回大量的数据记录,如果在网页中,往往是通过分页的方式来实现,
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息