滚动新闻:
  网站首页     新闻资讯     网络安全     网页制作     办公软件     网站运营     平面设计     网络编程  
今天是,欢迎访问Ok3w新闻发布系统! 请您留言 | 免费下载 | 设为首页 | 加入收藏
您当前位置:网站首页 >> 网络编程 >> ASP教程 >> 阅读文章
站内查找:

ASP分页类


来源:Ok3w建站系统 发布时间:2008-08-21 22:45:36 查看次数:

该ASP分页类只是对ASP传统分页进行封装,使其分页操作更加简化,下面是代码: 

==========Pager.asp=================================
<% 
'-------------------------------------------------------------------- 
'名称:ASP分页类 v2009 

'作者:zhengbi(QQ:124895502 Email:zhengbi888@yahoo.com.cn) 

'仅供参考,你可以任意修改、传播;如果你对它进行了改良,希望你能给我一个 
'副本,谢谢。 
'-------------------------------------------------------------------- 
Class TurnPage 
    Dim sPageNo,sPageSize,sPageCount,sRecordCount,sAbsoluteRecord 
     
    Private Sub Class_Initialize() 
        sPageNo=Trim(Request.QueryString("PageNo")) 
        If sPageNo<>"" Then 
            sPageNo = Cdbl(sPageNo) 
            Else 
                sPageNo = 1 
        End If 
        sAbsoluteRecord = 1 
    End Sub 

    Public Sub GetRs(ByRef Conn,ByRef Rs,ByVal Sql,ByVal PageSize) 
        Rs.Open Sql,Conn,1,1 
         
        Rs.PageSize        = PageSize 
        sPageSize        = Rs.PageSize 
        sPageCount        = Rs.PageCount 
        sRecordCount    = Rs.RecordCount 
         
        If Not Rs.Eof Then Rs.AbsolutePage = sPageNo 
    End Sub 
     
    Public Function Eof() 
        If sAbsoluteRecord<=sPageSize Then 
            'sAbsoluteRecord = sAbsoluteRecord + 1 
            Eof = False 
            Else 
                Eof = True 
        End If 
    End Function 
     
    Public Sub MoveNext() 
        sAbsoluteRecord = sAbsoluteRecord + 1 
    End Sub 
     
     
    Public Sub GetPageList() 
        If sPageCount<=1 Then Exit Sub 
         
        Dim sURL,sTmp,sQUERY_STRING,p,n,i,a,b 
         
        sURL = Request.ServerVariables("URL") 
        sQUERY_STRING = Request.ServerVariables("QUERY_STRING") 
        sTmp = Split(sURL,"/") 
        sURL = sTmp(Ubound(sTmp)) 
        If sQUERY_STRING <> "" Then    sQUERY_STRING=Replace(sQUERY_STRING,"PageNo=" & sPageNo,"") 
        If sQUERY_STRING = "" Then 
            sURL = sURL & "?" 
            Else 
                sURL = sURL & "?" & sQUERY_STRING & "&" 
        End If 
        sURL = Replace(sURL,"&&","&") 
         
        p = sPageNo-1 
        n = sPageNo+1 
        If p<1 Then p = 1 
        If n>sPageCount Then n = sPageCount 
         
        a = sPageNo-5 
        b = sPageNo+5 
        If a<1 Then a = 1 
        If b>sPageCount Then b = sPageCount 
                 
        Response.Write("<div class=""page_nav"">") 
         
        If sPageNo>1 Then    Response.Write("<a href=""" & sURL & "PageNo=1"">第一页</a> <a href=""" & sURL &"PageNo=" & p & """>上一页</a>") 
         
        For i=a To b 
            If i = sPageNo Then 
                Response.Write( " " & i) 
                Else 
                Response.Write(" <a href=""" & sURL & "PageNo=" & i & """>[" & i & "]</a>") 
            End If 
        Next 
        If sPageNo < sPageCount Then    Response.Write(" <a href=""" & sURL & "PageNo=" & n & """>下一页</a> <a href=""" & sURL & "PageNo=" & sPageCount & """>最后一页</a>") 

        Response.Write("</div>") 
    End Sub 
End Class 
%>

调用示例:
=============Conn.asp=============================
Dim Conn,ConnStr,Rs
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("Db.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open ConnStr
Set Rs = Server.CreateObject("Adodb.RecordSet")

=============test.asp==============================
<!--#include file="Conn.asp"--> 
<!--#include file="Pager.asp"-->
<% 
Sql="select * from Ok3w_Article where IsPass=1 and IsDelete=0 order by IsTop desc,IsCommend desc,ID desc"
Set Page = New TurnPage 
Call Page.GetRs(Conn,Rs,Sql,10)'创建Rs记录集,此处每页显示10条 
Do While Not Rs.Eof And Not Page.Eof
 
%>
<a href="<%=Rs("ID")%>.html" target="_blank"><%=Rs("Title")%></a>
<% 
    Rs.MoveNext 
    Page.MoveNext 
Loop 
Rs.Close 
%>
<%Call Page.GetPageList()'显示分页导航%>
<% 
Set Page = Nothing 
Set Rs = Nothing 
Conn.Close
Set Conn = Nothing 
%>

比起常规分页类,操作相对要简单一点,不同之处,就是蓝色部份了。

·上一条:ASP遍历文件、文件夹
·下一条:ASP使用JMail发送邮件示例
相关文章
·广告轮播组件AdRotator使用示例 2008-08-21 22:41:49
·ASP下载文件(不需要FSO) 2008-08-21 22:40:44
·ASP遍历文件、文件夹 2008-08-21 22:48:39
·Adodb.Stream使用说明 2008-08-20 01:11:20
·ASP分页类 2008-08-21 22:45:36
·如何用ASP生成HTML静态页面 2008-08-20 01:02:31
·ASP使用JMail发送邮件示例 2008-08-21 22:44:17
·Microsoft JET Database Engine 错误 '80004005' 解决办法 2009-04-03 00:23:48
文章评论
现在有0人对本文发表评论 查看所有评论
赞助商链接
  最新更新
·Microsoft JET Database Engine 错误 '8000
·ASP遍历文件、文件夹
·ASP分页类
·ASP使用JMail发送邮件示例
·ASP生成Wrod、Excel文件示例
·广告轮播组件AdRotator使用示例
·ASP下载文件(不需要FSO)
·Adodb.Stream使用说明
·如何用ASP生成HTML静态页面
  阅读排行
·ASP遍历文件、文件夹
·如何用ASP生成HTML静态页面
·ASP分页类
·Microsoft JET Database Engine 错误 '8000
·Adodb.Stream使用说明
·ASP使用JMail发送邮件示例
·ASP下载文件(不需要FSO)
·ASP生成Wrod、Excel文件示例
·广告轮播组件AdRotator使用示例
关于我们 | 使用说明 | 联系方式 | 免责声明 | 免费下载 | 有事请留言 | 滇ICP备08101427号
联系邮箱:zhengbi888@yahoo.com.cn 在线QQ:124895502
Copyright 2019, 版权所有 www.glzy8.com.