最经典最简单的ASP分页程序
1.原理:ASP分页其实是将数据库中的记录分割成若干段“分屏显示”
,为什么叫“分屏显示”显示,因为其实显示的原始页面只有1页,通过控制数据库显示,来刷新页面的显示内容(可能一些朋友会误会为动态产生若干页面来显示,呵呵,我刚刚学的时候也是这样以为的)
2.用到的几个函数
rs.pagesize--->定义一页显示记录的条数
rs.recordcount--->统计记录总数
rs.pagecount---->统计总页数
这几个函数相信大家都很快就明白意识了,不过还有一个函数它的用法可能理解起来难一点
rs.absolutepage--->将数据库指针移动到当前页要显示的数据记录的第一条记录,比如有20条记录的一个数据库,我们分为10条记录显示一页,当你的页面为2时,通过使用rs.absolutepage将指针移动到第11条记录处,依次类推....
最经典最简单的ASP分页程序
<%
set rs=server.createobject("adodb.recordset")
conn="DBQ="+server.mappath("check.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};pwd=yaday"
sql="select * from news order by id desc"
rs.open sql,conn,1,1
%>
[BR]
<%
dim page
page=Clng(request("page"))
rs.pagesize=6
if page<1 then page=1
if page>rs.pagecount then page=rs.pagecount
rs.Absolutepage=page
%>
<%
for i=1 to rs.pagesize
%>
<a href=shownews.asp?id=<% = rs("id") %> target="_blank"><% = rs("bt")%></a><br/><br/>
<%
rs.movenext
if rs.eof then exit for
next
%>
<%
if page<>1 then
response.write "<a href=index.asp?page=1>首页</a> "
response.write "<a href=index.asp?page="&(page-1)&">上一页</a> "
end if
if page<>rs.pagecount then
response.write "<a href=yaday.asp?page="&(page+1)&">下一页</a> "
response.write "<a href=yaday.asp?page="&rs.pagecount&">尾页</a> "
end if
%>
第<%=page%>页/共有<%=rs.pagecount%>页
<form name="form1" method="get" action="index.asp">
<input name="page" size="2" value="<%=page%>">
<input type="submit" method="submit" value="GO">
</form>