当前位置: 移动技术网 > IT编程>开发语言>Asp > 查询翻页优化第1/2页

查询翻页优化第1/2页

2017年12月12日  | 移动技术网IT编程  | 我要评论
复制代码 代码如下:<script language=vbscript runat=server> '//---- cocoon_

使用说明
复制代码 代码如下:

class cc_db_pager
    public property let connectionstring    '//设置连接字符串
    public property set activeconnection(o)    '//设置连接对象(与connectionstring属性二者取一)
    public property let tablename(s)    '//设置查询表名或视图名
    public property let fields(s)        '//设置输出字段名(可省略,默认为"*",即所有字段)
    public property let pkey(s)        '//设置主键(可省略,默认为"id")
    public property let orderby(s)        '//排序规则(可省略,省略则按默认规则排序)
    public property let page(s)        '//设置当前页码
    public property let pagesize(s)        '//设置每页记录数
    public property let sql(s)        '//容错的sql语句(此功能有待进完善,暂保留)

    puvlic property get sql        '//返回已翻页的sql语句
    public property get recordcount        '//返回当前记录数
    public property get totalrecordcoun    '//返回总记录数
    public property get condition        '//保留
    public property get pagecount        '//返回总页数
    public property get recordset        '//返回已分页的记录集(核心)
    public property get version        '//返回本段代码的版本信息
    public property get page        '//返回当前页码
    public property get absolutepage    '//返回当前页(同上)

    public function information()
    private function getsql()
    private sub makecondition()
    private sub caculatereccount()
    private sub caculatetotalreccount()
    private sub caculatepagecount()
    private sub addcondition(s)
    private sub class_initialize()
    private sub class_terminate()
end class

使用方法演示
复制代码 代码如下:

<script language="javascript">
    function dopage(n){
        location.href=location.pathname+'?page='+n+'&其他条件...';
    }
</script>

<%
    dim odbpager
    ipagesize = defaultpagesize
    set odbpager = new cc_db_pager
    set odbpager.activeconnection = oconn
    odbpager.tablename = "t_company"
    odbpager.fields = "id,company,website,mainproduct,userlevel, status, phone, fax"
    odbpager.pkey = "id"
    odbpager.orderby = "userlevel desc, status desc, charindex('中国',country) desc, id desc"
    odbpager.pagesize = ipagesize
    odbpager.addcondition "status>0"
    if not isempty(request.querystring("auth1")) then
        odbpager.addcondition "auth1>0"
    end if
    odbpager.page = request.querystring("page")
    icurrpage = odbpager.page
    ireccount = odbpager.recordcount
    ipagecount = odbpager.pagecount
    spageinfo = "当前页为 "&icurrpage&" 共计 "&ipagecount&" 个页面 共有 "&ireccount&" 条信息"
    spager  = "" &  vbcrlf _
        & "[<a "&iif(cint(icurrpage)<=1,"disabled href='javascript:void(0);'","href='javascript:dopage(1);'")&">首页</a>]" & vbcrlf _
        & "[<a "&iif(cint(icurrpage)<=1,"disabled href='javascript:void(0);'","href='javascript:dopage("&(icurrpage-1)&");'")&">前页</a>]" & vbcrlf _
        & "[<a "&iif(cint(icurrpage)>=cint(ipagecount),"disabled href='javascript:void(0);'","href='javascript:dopage("&(icurrpage+1)&");'")&">后页</a>]" & vbcrlf _
        & "[<a "&iif(cint(icurrpage)>=cint(ipagecount),"disabled href='javascript:void(0);'","href='javascript:dopage("&ipagecount&");'")&">末页</a>]"
%>
...
<%
    set ors = odbpager.recordset
    do while not ors.eof
        '// ...
        ors.movenext()
    loop
%>
...
<%=spageinfo%>
...
<%=spager%>


2

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网