DDR爱好者之家 Design By 杰米
复制代码 代码如下:
<SCRIPT language=VBSCRIPT RUNAT=SERVER>
'//---- COCOON_自定义类_翻页优化代码 ----//'
Class cc_db_Pager
'--------------------------------
' COCOON Db_Pager 类 (Ver: 1.02)
' 作者: Sunrise_Chen (sunrise_chen@msn.com)
' 请保留此信息,谢谢。
'
' 2003/06 修正一个错误,描述:如果ID不唯一,将产生多条重复记录的错误。
' 2003.5
'--------------------------------
'//-------------------- 定义变量 --------------------//'
Private sTableName '//表名
Private sSqlString '//自定义Sql语句
Private aCondition() '//查询条件(数组)
Private sCondition '//查询条件(字符串)
Private iPage '//当前页码
Private iPageSize '//每页记录数
Private iPageCount '//总页数
Private iRecCount '//当前查询条件下的记录数
Private iTotalRecCount '//总记录数
Private sFields '//输出的字段名
Private sOrderBy '//排序字符串
Private sSql '//当前的查询语句
Private sPkey '//主键
Private oConn '//连接对象
Private iDefPageSize '//默认每页显示的记录数
Private sProjectName '/项目名
Private sVersion '/版本号
Private bShowError '//是否显示错误信息
'//-------------------- 事件、方法 --------------------//'
'//类初始化事件
Private Sub Class_Initialize()
ReDim aCondition(-1)
iPage = 1
iRecCount = Null
iTotalRecCount = Null
iPageCount = Null
bShowError = True
iPageSize = 10
sFields = "*"
sPkey = "ID"
sCondition = ""
sOrderBy = ""
sSqlString = ""
sProjectName = "COCOON 类系列 数据库翻页优化"
sVersion = "1.02"
End Sub
'//类结束事件
Private Sub Class_Terminate()
Set oConn = Nothing
End Sub
'//错误处理
Public Sub doError(s)
Dim sTmp
sTmp = CLng(Rnd() * 100)
Response.write( "<DIV STYLE='WIDTH:760;font-size:9pt;cursor:hand'>" )
Response.write( "<LABEL ONCLICK='ERRORDIV"&sTmp&".style.display=(ERRORDIV"&sTmp&".style.display==""""?""none"":"""")'>" )
Response.write( "<SPAN STYLE='BACKGROUND-COLOR:#CCCC00;COLOR:WHITE;'>〖 CC_db_Pager 提示信息 〗</SPAN><BR></LABEL>" )
Response.write( "<DIV ID='ERRORDIV"&sTmp&"' STYLE='DISPLAY:NONE;WIDTH:100%;" )
Response.write( "BORDER: 1PX SOLID #CCCC00;PADDING:5;overflow:hidden;text-overflow:ellipsis;'><NOBR>" )
Response.write( "<SPAN STYLE='COLOR:RED'>Description</SPAN>: " & s & "<BR>" )
Response.write( "<SPAN STYLE='COLOR:RED'>Provider</SPAN>: " & sProjectName )
Response.write( " <SPAN STYLE='COLOR:RED'>Version</SPAN>: " & sVersion & "<BR>" )
Response.write( "</NOBR></DIV></DIV><BR>" )
End Sub
'//产生分页的SQL语句
Public Function getSql()
Dim iStart, iEnd
Call makeCondition()
iStart = ( iPage - 1 ) * iPageSize
iEnd = iStart + iPageSize
getSql = " SELECT DISTINCT " & sFields & " FROM ["&sTableName&"] " _
& " WHERE ["&sPKey&"] NOT IN ( " _
& " SELECT TOP "&iStart&" ["&sPKey&"] FROM ["&sTableName&"] " & sCondition & " " & sOrderBy & " " _
& " )" _
& " AND ["&sPKey&"] IN ( " _
& " SELECT TOP "&iEnd&" ["&sPKey&"] FROM ["&sTableName&"] " & sCondition & " " & sOrderBy & " " _
& " )" _
& " " & sOrderBy & " "
End Function
'//产生条件字符串
Private Sub makeCondition()
If UBound(aCondition)>=0 Then
sCondition = " WHERE " & Join(aCondition, " AND ")
End If
End Sub
'//计算总记录数(带条件)
Private Sub CaculateRecCount()
On Error Resume Next
Dim oRs
Call makeCondition()
Set oRs = oConn.Execute( "SELECT COUNT(["&sPKey&"]) FROM [" & sTableName & "]" & sCondition )
If Err Then
doError Err.Description
Response.End()
End If
iRecCount = oRs.Fields.Item(0).Value
Set oRs = Nothing
End Sub
'//计算总记录数(不带条件)
Private Sub CaculateTotalRecCount()
On Error Resume Next
Dim oRs
Set oRs = oConn.Execute( "SELECT COUNT(["&sPKey&"]) FROM [" & sTableName & "]" )
If Err Then
doError Err.Description
Response.End()
End If
iTotalRecCount = oRs.Fields.Item(0).Value
Set oRs = Nothing
End Sub
'//计算页数
Private Sub CaculatePageCount()
If isNull(iRecCount) Then CaculateRecCount()
If iRecCount = 0 Then iPageCount = 0 : Exit Sub
iPageCount = Abs( Int( 0 - (iRecCount / iPageSize) ) )
End Sub
'//增加条件
Public Sub AddCondition(s)
If Len(s)<0 Then Exit Sub
ReDim Preserve aCondition(UBound(aCondition)+1)
aCondition(UBound(aCondition)) = s
End Sub
'//版本信息
Public Function Information()
doError "Coding by <A HREF='MAILTO:sunrise_chen@msn.com'>Sunrise_Chen</A> @ <A HREF='http://www.ccopus.com'>http://www.ccopus.com</A> ."
End Function
'//-------------------- 输入属性 --------------------//'
'//定义连接对象
Public Property Set ActiveConnection(o)
Set oConn = o
End Property
'//定义查询表名
Public Property Let TableName(s)
sTableName = s
End Property
'//定义需要输出的字段名
Public Property Let Fields(s)
sFields = s
End Property
'//定义主键
Public Property Let Pkey(s)
sPkey = s
End Property
'//定义排序规则
Public Property Let OrderBy(s)
sOrderBy = " ORDER BY " & s & " "
End Property
'//定义每页的记录条数
Public Property Let PageSize(s)
iPageSize = s
If Not isNumeric(iPageSize) Then iPageSize = iDefaultPageSize
If CLng(iPageSize)<1 Then iPageSize = iDefaultPageSize
End Property
'//定义当前页码
Public Property Let Page(s)
iPage = s
If Not isNumeric(iPage) Then iPage = 1
If CLng(iPage)<1 Then iPage = 1
Call CaculatePageCount()
If CLng(iPage)>CLng(iPageCount) And iPageCount>0 Then iPage = iPageCount
End Property
'//自定义查询语句
Public Property Let Sql(s)
sSqlString = s
End Property
'//-------------------- 输出属性 --------------------//'
'//取得当前条件下的记录数
Public Property Get RecordCount
If isNull(iRecCount) Then CaculateRecCount()
RecordCount = iRecCount
End Property
'//取得当前页码
Public Property Get Page
Page = iPage
End Property
'//取得当前页码
Public Property Get AbsolutePage
AbsolutePage = iPage
End Property
'//取得当前查询的条件
Public Property Get Condition
If Len(sCondition)<1 Then makeCondition()
Condition = sCondition
End Property
'//取得总的记录数
Public Property Get TotalRecordCount
If isNull(iTotalRecCount) Then CaculateTotalRecCount()
TotalRecordCount = iTotalRecCount
End Property
'//取得总页数
Public Property Get PageCount
If isNull(iPageCount) Then CaculatePageCount()
PageCount = iPageCount
End Property
'//得到分页后的记录集
Public Property Get Recordset
On Error Resume Next
sSql = getSql()
Set Recordset = oConn.Execute( sSql )
If Err Then
If bShowError Then doError Err.Description
If Len(sSqlString)>0 Then
Set Recordset = oConn.Execute( sSqlString )
If Err Then
doError Err.Description
Response.End()
End If
Else
doError Err.Description
End If
End If
Err.Clear()
End Property
'//版本信息
Public Property Get Version
Version = sVersion
End Property
End Class
</SCRIPT>
12下一页阅读全文
<SCRIPT language=VBSCRIPT RUNAT=SERVER>
'//---- COCOON_自定义类_翻页优化代码 ----//'
Class cc_db_Pager
'--------------------------------
' COCOON Db_Pager 类 (Ver: 1.02)
' 作者: Sunrise_Chen (sunrise_chen@msn.com)
' 请保留此信息,谢谢。
'
' 2003/06 修正一个错误,描述:如果ID不唯一,将产生多条重复记录的错误。
' 2003.5
'--------------------------------
'//-------------------- 定义变量 --------------------//'
Private sTableName '//表名
Private sSqlString '//自定义Sql语句
Private aCondition() '//查询条件(数组)
Private sCondition '//查询条件(字符串)
Private iPage '//当前页码
Private iPageSize '//每页记录数
Private iPageCount '//总页数
Private iRecCount '//当前查询条件下的记录数
Private iTotalRecCount '//总记录数
Private sFields '//输出的字段名
Private sOrderBy '//排序字符串
Private sSql '//当前的查询语句
Private sPkey '//主键
Private oConn '//连接对象
Private iDefPageSize '//默认每页显示的记录数
Private sProjectName '/项目名
Private sVersion '/版本号
Private bShowError '//是否显示错误信息
'//-------------------- 事件、方法 --------------------//'
'//类初始化事件
Private Sub Class_Initialize()
ReDim aCondition(-1)
iPage = 1
iRecCount = Null
iTotalRecCount = Null
iPageCount = Null
bShowError = True
iPageSize = 10
sFields = "*"
sPkey = "ID"
sCondition = ""
sOrderBy = ""
sSqlString = ""
sProjectName = "COCOON 类系列 数据库翻页优化"
sVersion = "1.02"
End Sub
'//类结束事件
Private Sub Class_Terminate()
Set oConn = Nothing
End Sub
'//错误处理
Public Sub doError(s)
Dim sTmp
sTmp = CLng(Rnd() * 100)
Response.write( "<DIV STYLE='WIDTH:760;font-size:9pt;cursor:hand'>" )
Response.write( "<LABEL ONCLICK='ERRORDIV"&sTmp&".style.display=(ERRORDIV"&sTmp&".style.display==""""?""none"":"""")'>" )
Response.write( "<SPAN STYLE='BACKGROUND-COLOR:#CCCC00;COLOR:WHITE;'>〖 CC_db_Pager 提示信息 〗</SPAN><BR></LABEL>" )
Response.write( "<DIV ID='ERRORDIV"&sTmp&"' STYLE='DISPLAY:NONE;WIDTH:100%;" )
Response.write( "BORDER: 1PX SOLID #CCCC00;PADDING:5;overflow:hidden;text-overflow:ellipsis;'><NOBR>" )
Response.write( "<SPAN STYLE='COLOR:RED'>Description</SPAN>: " & s & "<BR>" )
Response.write( "<SPAN STYLE='COLOR:RED'>Provider</SPAN>: " & sProjectName )
Response.write( " <SPAN STYLE='COLOR:RED'>Version</SPAN>: " & sVersion & "<BR>" )
Response.write( "</NOBR></DIV></DIV><BR>" )
End Sub
'//产生分页的SQL语句
Public Function getSql()
Dim iStart, iEnd
Call makeCondition()
iStart = ( iPage - 1 ) * iPageSize
iEnd = iStart + iPageSize
getSql = " SELECT DISTINCT " & sFields & " FROM ["&sTableName&"] " _
& " WHERE ["&sPKey&"] NOT IN ( " _
& " SELECT TOP "&iStart&" ["&sPKey&"] FROM ["&sTableName&"] " & sCondition & " " & sOrderBy & " " _
& " )" _
& " AND ["&sPKey&"] IN ( " _
& " SELECT TOP "&iEnd&" ["&sPKey&"] FROM ["&sTableName&"] " & sCondition & " " & sOrderBy & " " _
& " )" _
& " " & sOrderBy & " "
End Function
'//产生条件字符串
Private Sub makeCondition()
If UBound(aCondition)>=0 Then
sCondition = " WHERE " & Join(aCondition, " AND ")
End If
End Sub
'//计算总记录数(带条件)
Private Sub CaculateRecCount()
On Error Resume Next
Dim oRs
Call makeCondition()
Set oRs = oConn.Execute( "SELECT COUNT(["&sPKey&"]) FROM [" & sTableName & "]" & sCondition )
If Err Then
doError Err.Description
Response.End()
End If
iRecCount = oRs.Fields.Item(0).Value
Set oRs = Nothing
End Sub
'//计算总记录数(不带条件)
Private Sub CaculateTotalRecCount()
On Error Resume Next
Dim oRs
Set oRs = oConn.Execute( "SELECT COUNT(["&sPKey&"]) FROM [" & sTableName & "]" )
If Err Then
doError Err.Description
Response.End()
End If
iTotalRecCount = oRs.Fields.Item(0).Value
Set oRs = Nothing
End Sub
'//计算页数
Private Sub CaculatePageCount()
If isNull(iRecCount) Then CaculateRecCount()
If iRecCount = 0 Then iPageCount = 0 : Exit Sub
iPageCount = Abs( Int( 0 - (iRecCount / iPageSize) ) )
End Sub
'//增加条件
Public Sub AddCondition(s)
If Len(s)<0 Then Exit Sub
ReDim Preserve aCondition(UBound(aCondition)+1)
aCondition(UBound(aCondition)) = s
End Sub
'//版本信息
Public Function Information()
doError "Coding by <A HREF='MAILTO:sunrise_chen@msn.com'>Sunrise_Chen</A> @ <A HREF='http://www.ccopus.com'>http://www.ccopus.com</A> ."
End Function
'//-------------------- 输入属性 --------------------//'
'//定义连接对象
Public Property Set ActiveConnection(o)
Set oConn = o
End Property
'//定义查询表名
Public Property Let TableName(s)
sTableName = s
End Property
'//定义需要输出的字段名
Public Property Let Fields(s)
sFields = s
End Property
'//定义主键
Public Property Let Pkey(s)
sPkey = s
End Property
'//定义排序规则
Public Property Let OrderBy(s)
sOrderBy = " ORDER BY " & s & " "
End Property
'//定义每页的记录条数
Public Property Let PageSize(s)
iPageSize = s
If Not isNumeric(iPageSize) Then iPageSize = iDefaultPageSize
If CLng(iPageSize)<1 Then iPageSize = iDefaultPageSize
End Property
'//定义当前页码
Public Property Let Page(s)
iPage = s
If Not isNumeric(iPage) Then iPage = 1
If CLng(iPage)<1 Then iPage = 1
Call CaculatePageCount()
If CLng(iPage)>CLng(iPageCount) And iPageCount>0 Then iPage = iPageCount
End Property
'//自定义查询语句
Public Property Let Sql(s)
sSqlString = s
End Property
'//-------------------- 输出属性 --------------------//'
'//取得当前条件下的记录数
Public Property Get RecordCount
If isNull(iRecCount) Then CaculateRecCount()
RecordCount = iRecCount
End Property
'//取得当前页码
Public Property Get Page
Page = iPage
End Property
'//取得当前页码
Public Property Get AbsolutePage
AbsolutePage = iPage
End Property
'//取得当前查询的条件
Public Property Get Condition
If Len(sCondition)<1 Then makeCondition()
Condition = sCondition
End Property
'//取得总的记录数
Public Property Get TotalRecordCount
If isNull(iTotalRecCount) Then CaculateTotalRecCount()
TotalRecordCount = iTotalRecCount
End Property
'//取得总页数
Public Property Get PageCount
If isNull(iPageCount) Then CaculatePageCount()
PageCount = iPageCount
End Property
'//得到分页后的记录集
Public Property Get Recordset
On Error Resume Next
sSql = getSql()
Set Recordset = oConn.Execute( sSql )
If Err Then
If bShowError Then doError Err.Description
If Len(sSqlString)>0 Then
Set Recordset = oConn.Execute( sSqlString )
If Err Then
doError Err.Description
Response.End()
End If
Else
doError Err.Description
End If
End If
Err.Clear()
End Property
'//版本信息
Public Property Get Version
Version = sVersion
End Property
End Class
</SCRIPT>
12下一页阅读全文
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
2024年11月24日
2024年11月24日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]