仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1809|回复: 18
打印 上一主题 下一主题

[学习教程] ASP网站制作之函数型显示翻页毗连

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:43:02 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。翻页|函数|显示|翻页|函数   这个法式将显示翻页毗连功效独自抽出,而不触及其它操作,可内置翻页后果,便利天真。

pagehanshu.asp
<%
'设置页码及URL
'value1 翻页地址
'value2 page的值
'value3 地址标签 eg:第一页、下一页
'value4 依据vaule1而定
'假如 value1 = "page.asp" 时,value4 = 1; value1 = "page.asp?id=1" 时,value4 = 0;

function page_url(value1,value2,value3,value4)
dim result
dim val
if value4 = 1 then
val = "?"
else
val = "&"
end if
result = "<a href=" & value1 & val & "page=" & value2 & ">" & value3 & "</a>"
page_url = result
end function



'获得翻页的page参数 即为以后页
function page_request()
dim page

page = request("page")
if ( page <> "" and IsNumeric(page) = false ) or page = "" then
page = 1
end if
page_request = page
end function



'设置最经常使用的翻页形式,恣意添加和修正
'第一种后果 写的有点繁琐
'n为总页数
function pagemode1(value1,value2)
dim out

val1 = value1
val4 = value2
page = page_request()
page = CInt(page)

val2_1 = 1
val2_2 = page - 1
val2_3 = page + 1
val2_4 = n

val3_1 = "第一页"
val3_2 = "上一页"
val3_3 = "下一页"
val3_4 = "最初页"

if page = 1 then
out1 = val3_1
out2 = val3_2
else
out1 = page_url(val1,val2_1,val3_1,val4)
out2 = page_url(val1,val2_2,val3_2,val4)
end if

if page = n then
out3 = val3_3
out4 = val3_4
else
out3 = page_url(val1,val2_3,val3_3,val4)
out4 = page_url(val1,val2_4,val3_4,val4)
end if

out = out1 & "  " & out2 & "  " & out3 & "  " & out4

pagemode1 = out
end function


'第二种后果
'n 为总页数
function pagemode2(value1,value2)
dim out
val1 = value1
val4 = value2

for i = 1 to n
val2 = i
val3 = "第" & i & "页"
out = out & page_url(val1,val2,val3,val4) & "  "
next

pagemode2 = out
end function
%>



利用举例(借用一下SunLine伴侣的法式)

<%

sql="……………………"
rs.open sql,conn,1,1 '毗连表
rs.pagesize=10 '这是每页显示几笔记录10代表是10条
n = rs.pagecount '获得总页数

page=page_request() '获得页码值
rs.AbsolutePage=page
%>


接上去将上面的代码放到需求的地位,用于显示翻页链接:
<%
out = pagemode1("page.asp",1)
'or
out = pagemode1("page.asp?id=1",0)
'or
out = pagemode2("page.asp",1)

response.write out
%>



呵呵,这个法式没有甚么新器材,也没经由任何运算速度测试和功能优化,地道是为了用起来便利,请人人多提定见,让我改善。
</p>  由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。
小女巫 该用户已被删除
沙发
 楼主| 发表于 2015-3-12 20:45:40 | 显示全部楼层
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-6-12 21:42

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表