热血无赖怎么偷车:如何用VB开发ASP分页组件

来源:百度文库 编辑:高校问答 时间:2024/04/30 00:48:16
请问如何用VB开发ASP分页组件。有人会的请给出源代码。

分页程序一直是初学者的心病,常常看着那些分页代码云里雾里的,现在我来总结一下分页程序的要点:

下面这页代码是用来显示当前页可以显示多少条记录;(post.asp)

<% sql = "select……………………省略了sql语句
Set rs=Server.Createobject("ADODB.RECORDSET")
rs.Open sql, conn, 1, 1
if not rs.eof then
pages = 30 '定义每页显示的记录数
rs.pageSize = pages '定义每页显示的记录数
allPages = rs.pageCount '计算一共能分多少页
page = Request.QueryString("page") '通过浏览器从下面pageUrl()传递来的页数
'if语句属于基本的排错处理
if isEmpty(page) or Cint(page) <1 then
page = 1
elseif Cint(page) >allPages then
page = allPages
end if
rs.AbsolutePage = page
Do while not rs.eof and pages>0 %>
这里输出第page页的记录………………
<% pages = pages - 1
rs.MoveNext
Loop
else
Response.Write("数据库暂无内容!")
End if
rs.Close
Set rs = Nothing %>

下面这页代码是关键:分页函数的定义

<% SUB pageUrl(pUrl) 'pUrl传来的参数是 post.asp
Dim eUrl
txts = Request.ServerVariables("URL") '得到系统的路径,如/bbs/news/post.asp
txts = left(txts,instrrev(txts,"/",len(txts))-1) '得出/bbs/news
eUrl = "http://"; & Request.ServerVariables("server_name") & txts
For i =1 to allpages
txt = ""
txt = "<strong>"
txt = txt & "<a href=" & eUrl & pUrl & "?page="&i & ">"
if i = Cint(Page) then txt = txt & "<font color='FF0000'>"
txt = txt & (i)
if i = Cint(Page) then txt = txt & "</font>"
txt = txt & "</a>‖ </strong>"
Response.Write(txt)
Next
END sub %>
上面这个分页函数代码存成一个ASP文件,在需要使用的页面里用include来引入,如果页面 post.asp要调用那么就<%Call("/post.asp")%>。最主要的就是,这个分页函数可以在任何一个asp页面里调用。