本程序主要用到Connection、RecordSet这两个对象,程序中的数据库为Access库,采用OLEDB方式连接库。
一个简单的分页教程:
<%
Set conn = Server.CreateObject("ADODB.Connection")
strcon="provider=microsoft.jet.oledb.4.0;data source="& _
server.mappath("mdb.mdb")
conn.Open strcon
Set rs = Server.CreateObject ("ADODB.Recordset")
sql="select * from table order by id desc"
rs.Open sql, conn, 1
page=1 ' 设置变量PAGE=1
rs.PageSize = 5 '每页显示记录数
if Not IsEmpty(Request("Page")) then '如果PAGE已经初始化...
Page = CInt(Request("Page")) '接收PAGE并化为数字型赋给PAGE变量
if Page > rs.PageCount then '如果接收的页数大于总页数
rs.AbsolutePage = rs.PageCount '设置当前显示页等于最后页
elseif Page <= 0 then '如果page小于等于0
Page = 1 '设置PAGE等于第一页
else
rs.AbsolutePage = Page '如果大于零,显示当前页等于接收的页数
end if
End if
Page = rs.AbsolutePage
%>
<%
For i = 1 to rs.PageSize
if rs.EOF then
Exit For
end if '利用for next 循环依次读出记录
%>
上面的代码只需要改动Rs.pagesize=5,把5改为你想显示的记录数.比如说 改为10.那么每页就是显示10页.还需要修改的是select语句.就是你要检索的数据库了. 也就是说放到任何一个系统中上面的代码只需很小的改动都可以直接拿过来用.
然后:就是要循环读出记录的显示内容了..............比如
<table width=50 border=1 align=center> <tr> <TD><% =rs("内容") %></td> </tr> </table> <% rs.MoveNext next %>
当然也可以改为response.write输出.那是你的事了.你可以自由发挥版面样式.
最后,添加"下一页,上一页"的链接:
<%if request("page")>1 then%> <a Href="test.asp?Page=<% = 1%>">首页</a> <a Href="test.asp?Page=<% =request("page") -1 %>">上一页</a> <%end if %> <%if request("page")<>rs.pagecount then %> <a Href="test.asp?Page=<% =request("page") + 1%>">下一页</a> <a Href="test.asp?Page=<% = rs.PageCount%>">尾页</a> <% end if %>
上面的代码反正不管三七二十一只管复制粘贴.只需把"fenye.asp"改成你自己的文件名就可以了.随便把这段代码放在什么地方?就是你想让它出现下一页下一页链接的地方吧.
最后.关闭记录集释放资源:
<% rs.close Set rs = Nothing conn.close set conn=nothing %>