asp分页问题令我好苦恼

王朝知道·作者佚名  2012-03-18
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

下面是我的源程序:

该程序能运行,就是不按照我设定每页显示的记录条数显示~~~

------------------------------------------------------------------ <!--#include virtual="conn.asp"-->

<%

dim m,n ,nowpage

set rs=server.CreateObject("adodb.recordset")

sqlstr="select * from lybook order by id desc"

rs.open sqlstr,conn,3,3

rs.pagesize=3 '定义一页显示的记录数目

tatalrecord=rs.recordcount '获取记录总数目

tatalpages=rs.pagecount '获取分页的数目

rs.movefirst

nowpage=request("page") '用request获取当前页数,注意page是自己定义的变量并非函数

if nowpage&""="" then '处理页码为空时的情况

nowpage=1

else

nowpage=cint(nowpage) '将页码转换成数字型

end if

rs.absolutepage=nowpage '将指针移动到当前显示页的第一条记录

%>

<共 <%= tatalrecord %>条纪录

<% n=1

while not rs.eof and n<=rs.pagesize

%>

<% Do while not rs.eof %>

<table width="699" height="163" border="0" align="center" >

<tr>

<td width="82" height="19" bgcolor="#CCFFFF" ><div align="center" class="STYLE5">昵称</div></td>

<td width="124" align="center" valign="middle" bgcolor="#CCFFFF" ><div align="center" class="STYLE5">联络方式</div>

<div align="center" class="STYLE5"></div></td>

<td width="479" bgcolor="#CCFFFF"><div align="center" class="STYLE5">留言内容</div></td>

</tr>

<tr>

<td width="82" height="131" bgcolor="#99CCFF"> <div align="center"><img src=<% =rs("tuxiang")%>><br><FONT style="FONT-SIZE: 9pt; FILTER: Glow(color=#FF0000,strength=2); COLOR: #ffffff; HEIGHT: 9pt"> <% =rs("name")%> </FONT>

</div></td> <% rs.movenext

Loop %></table><% n=n+1 wend %>

共:<%=tatalpages%>页 当前为:<%=nowpage%>页

<%if nowpage>1 then%>

<a href="index.asp?page=<%=nowpage-1%>">上一页</a>

<%else%> 上一页 <%end if%>

<%for k=1 to tatalpages%>

<%if k<>nowpage then %>

<a href="index.asp?page=<%=k%>"><%=k%></a> <%else%>

<%=k%><%end if%><%next%>

<%if nowpage < tatalpages then%>

<a href="index.asp?page=<%=nowpage+1%>">下一页</a>

<%else%> 下一页

<%end if%> <%if nowpage<>1 then%>

<a href="index.asp?page=<%=1%>"> 首页</a> <%else%>

首页 <%end if%>

<%if nowpage<>tatalpages then %>

<a href="index.asp?page=<%=tatalpages%>">末页</a>

<%else%> 末页

<%end if%>

<br><div align="right"> <a href="tianjia.asp">【添加记录】</a> <br></div>

</body>

</html>

-----------------------------------------------------------------

麻烦高手给指点迷津!

尽量详细些,

參考答案:

你把游标类型改成1,1试试看!

其实纯ASP的分页并没有那么复杂!

主要就是用到recordset的几个属性。

pagesize 就是每页显示几条记录

recordcount 就是记录集总共有多少条记录

pagecount 就是总共多少页

adsolutepage 游标定在分完页后的哪一页的第一条记录

举个简单分页的例子:

<%set rs=server.CreateObject("adodb.recordset")

rs.open "select * from table" ,conn,1,1

rs.pagesize=10 '一页10记录

dim page,i

page=cint(request("page"))'接收各种方式传递的page值

if page<1 or page="" then '处理page值的特殊情况

page=1

end if

if page>rs.pagecount then

page=rs.pagecount

end if

rs.absolutepage=page '游标定位

>%

<%do while not rs.eof and i<rs.pagesize%>

需要循环输出的内容,不列举了。。。

<%rs.movenext

i=i+1

loop%>

<a href="page.asp">首页</a><a href="page.asp?page=<%=page-1%>">上一页</a><a href="page.asp?page=<%page+1%>">下一页</a><a href="page.asp?page=<%=rs.pagecount%>">尾页</a> 共<%=rs.recordcount%>条记录 每页<%=rs.pagesize%>条 当前页/总页<%=page%>/<%=rs.pagecount%>

这是最简单的分页程序,希望对您有所启发!

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航