分页程序

来源:互联网 发布:ios 开发传数据接口 编辑:程序博客网 时间:2024/04/29 21:06

最近在做一个aps分页程序,留空的地方,到后面才慢慢补上.

分页程式
(1)解决方法(提供解决该问题的思路):
1.获取相关参数
  if CursorBegin="" then
    CursorBegin=0
  else
    CursorBegin=request("CursorBegin")      分页里第一条记录ID
  end if
  if CursorEnd="" then
    CursorEnd=10000
  else
    CursorEnd=request("CursorEnd")         分页里最后一条记录
  end if
  if CurpageNum="" then
    CurpageNum=1
  else
    CurPageNum=request("CurpageNum")       当前的页面
  end if
  if hav="" then
     hav=next(1)
  else
     hav=request("hav")                    hav(back,next)   指针
  end if
 
  DefRecordNum     当前页面要显示的记录
2.统计总记录与总页数
  sql="select * count(ID) from Topic4 "
  '获取总记录
  TotalRecords=rs("ID")
  '获取总页面
  TotalPages=TotalRecords/abs(int(TotalRecords/DefRecordNum*(-1)))
3.根据指针的方向,取不同的SQLstr来得记录,并显示分页的记录集
  1)back(0)
     if not rs.eof then
       TempStr=rs.getrows(DefRecordNum)
       for i= 0 to ubound(TempStr,2)
         adID(i)=TempStr(0,ubound(TempStr,2) -i)
  adBoardID(i)=TempStr(1,ubound(TempStr,2) -i)
  AdTitle(i)=TempStr(2,ubound(TempStr,2) -i)
       next
      end if  
 
     '记录开始游标与结束游标
      CursorBegin =adID(0)
      CursorEnd   =adID(ubound(TempStr,2))

  2)next(1)
      SQLstr="Select Top "&DefRecordNum&" ID,BoardID,Title from Topic4 Where ID>"&CursorEnd& " & Order by ID DESE"
      set rs=openrecordset(SQLstr)
      if not rs.eof then
        TempStr=rs.getrows(DefRecordNum)
 for i=0 to ubound(TempStr,2)
          adID(i)=TempStr(0,i)
   adBoardID(i)=TempStr(1,i)
   AdTitle(i)=TempStr(2,i)
 next
      end if  
 
      '记录开始游标与结束游标
       CursorBegin =adID(0)
       CursorEnd   =adID(ubound(TempStr,2))
4.根据记录集的情况选择翻页,并给予相关参数的值
    '判断是否有页数或页数否为0
   1)if  TotalPages<>1 and TotalPages<>0 then
       '当前页是否大于1
       if CurPageNum>1 then
          '当前页是否小于总页数
          if CurPageNum<TotalPages then
             "首页,上一页,下一页,尾页"都能超链接
          else
             "首页,上一页"有超链接
          end if   
       else
             "下一页,尾页"都有超链接
       end if
     else
        "首页,上一页,下一页,尾页"都没有链接  
     end if
   2)首页的超链接参数值为CurPageNum=<% = 1%>
     尾页的超链接参数值为CurPageNum=<%= TotalPages%>&CurBegin=0&hav=0
     上一页的超链接参数值为CurPageNum=<% = CurPageNum -1 %>&CursorBegin=<%=CursorBegin%>&CursorEnd=<%=CursorEnd%>&hav=0"
     下一的超链接参数值为CurPageNum=<% = CurPageNum + 1%>&CursorBegin=<%=CursorBegin%>&CursorEnd=<%=CursorEnd%> & hav=1"
(2)解决方案(提供解决类似该问题的设计模式)

(3)从特殊到一般的过程

原创粉丝点击