记录集用GetRows返回数组时的分页

记录集用GetRows返回数组时的分页

'''''''''''''''''''''''''''''''''''''''''''
'函数名: ShowPageLink()
'参数 : 无
'作用 : 显示分页连接
'返回值:无
'''''''''''''''''''''''''''''''''''''''''''
Sub ShowPageLink()
Response.Write "<div align='center'>"

Response.Write "共<font color='red'>"&count+1&"</font>条纪录&nbsp;"
Response.Write "分<font color='red'>"&myint((count+1)/10)&"</font>页/每页"&size&"条&nbsp;"
Response.Write "当前第<font color='red'>"&Cint(page)+1&"</font>页&nbsp;"

'如何显示上一页
if flag <> 2 and flag<> 3 then
Response.Write "<a href=""?page="&Cint(page)-1&""">"
else
Response.Write "<a>"
end if
Response.Write "上一页</a>&nbsp;&nbsp;"

'如何显示下一页
if flag <> 1 and flag<> 3 then
Response.Write "<a href=""?page="&Cint(page)+1&""">"
else
Response.Write "<a>"
end if
'Response.Write flag
Response.Write "下一页</a></div>"
End Sub
'-------------------------------sub end---------------------------------------------------


'''''''''''''''''''''''''''''''''''''''''''
'函数名: SetPageCount(pagesize)
'参数 : pagesize - 每页显示最多记录数
'作用 : 1.计算并返回此页循环上限
'       2.控制控制状态:
'  flag = 1   是最后一页  
'  flag = 2   是第一页
'  flag = 3   既是第一页,又是最后一页        
'返回值: 此页循环上限
'''''''''''''''''''''''''''''''''''''''''''
Function SetPageCount(Pagesize)

dim n,s

page = Request.QueryString("page")
size = Pagesize
StartPageCount=page*pagesize    

if page = "" then
 page =0
end if

count = ubound(RsMsg,2)

'当到了这页的时候已经显示了多少条记录?
'还有多少条?
s = count-page* pagesize  '剩余的记录条数

'如何循环?
if page = 0 and s <=pagesize  then'  既是第一页,又是最后一页
 flag = 3
 n = count
else
 if s <=pagesize then   '最后一页了
  n = count
  flag = 1
 else         '第一页
  n = (page+1)*pagesize
  flag = 2
 end if
end if

EndPageCount = n
End Function
'----------------end function--------------------------------------------------


'''''''''''''''''''''''''''''''''
'函数名: myint(avalue)
'作用 :  1.1 return 2 , 1 return 1
'返回值: 无 
''''''''''''''''''''''''''''''''
function myint(avalue)
dim rvalue
 if avalue>int(avalue) then
 rvalue=int(avalue)+1
 else
 rvalue=int(avalue)
 end if
myint = rvalue
end function
'----------------------end------------------------

 


'例:

'RsMsg = Rs.GetRows
'count 纪录总条数
'page  当前页数
'StartPageCount 此页循环开始值
'EndPageCount   此页循环结束值
'flag   状态控制   
'size   分页大小

dim count,page,StartPageCount,EndPageCount,flag,size,RsMsg

'得到RsMsg数组
'CreateRs
'OpenDBConn()
'call GetRsMsg(RsMsg)
'Set Rs = Nothing
'CloseDBConn

if not isarray(RsMsg) then
 Response.Write "无纪录"
else

 call SetPageCount(10)

 for i = StartPageCount to EndPageCount
 '显示纪录的代码
 next

call ShowPageLink()
end if


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kingapex1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值