这是一个关于翻页制作的函数,放在page.inc里面,主要用于数据量不是非常大的数据库,其中函数中的HTML格式可以自己更改。
<%
''文件名称:page.inc
''功能:处理数据翻页的函数
''作者:天地无用
Sub ShowPageBar(TotalPage,CurPage,strUrl)
''参数TotalPage:整个页数
''参数CurPage:当前页数
''参数strUrl:翻页使用的连接地址
DIM strPage
CurPage=GetValidPageNO(TotalPage,CurPage)
Response.Write "
| "
Response.Write "页数:" & CurPage & "/" & TotalPage & " " IF InSTR(strUrl,"?")=0 THEN strPage="?Page=" ELSE strPage="&Page=" END IF IF Curpage>1 THEN Response.Write "第一页|" ELSE Response.Write "第一页|" END IF IF CurPage>=2 THEN Response.Write "上一页|" ELSE Response.Write "上一页|" END IF IF cInt(CurPage) Response.Write "下一页|" ELSE Response.Write "下一页|" END IF IF cInt(CurPage) <>cInt(TotalPage) THEN Response.Write "最后一页" ELSE Response.Write "最后一页" END IF Response.Write " |
END SUB
Function GetValidPageNo(PageCount,CurPage)
Dim iPage
iPage=CurPage
IF cInt(CurPage)<1 THEN
iPage= 1
END IF
IF cInt(iPage) > cInt(PageCount) THEN
iPage= PageCount
END IF
GetValidPageNo=iPage
END Function
%>
下面是使用这个函数的例子,文件名称是showinfo.asp
<%
SET objConn=Server.CreateObject("ADODB.CONNECTION")
SET objRst=Server.CreateObject("ADODB.RECORDSET")
objConn.Open APPLICATION("dsn")
strSQL="SELECT * FROM ********"
''这里是你要使用的查询
objRst.Open strSQL,objConn,adOpenStatic
’打开数据记录
objRst.PageSize=50
’设置单页的数据记录数
iPageCount=objRst.PageCount
’定义了一个页码数量的变量
If Len(Request.QueryString("Page"))=0 Then
CurPage=1
Else
CurPage=CInt(Request.Querystring("Page"))
End If
’得到当前的页码
objRst.AbsolutePage=CurPage
’设置记录集中的当前页
’开始调用显示翻页的函数
''显示页数栏
''函数原型:ShowPageBar(TotalPage,CurPage,strUrl)
strUrl="showinfo.asp"
''定义连接的URL,这里完全可以用自己的页面地址,只用一页就可以完成翻页的功能了!
ShowPageBar iPageCount,CurPage,strUrl
''调用完成
************************
这里显示自己的内容
************************
objConn.Close
SET objRst=NOTHING
SET objConn=NOTHING
%>
欢迎大家使用,如果有建议或者意见请同我联系,大家一起讨论。

