找回密码
 注册会员
查看: 726|回复: 0

最新asp列表源代码

[复制链接]
发表于 2010-8-7 12:13:14 | 显示全部楼层 |阅读模式
<p>最新asp列表源代码</p>
<p><img src="http://img.baidu.com/img/iknow/icn_point.gif"> 悬赏分:0 -</p>
<p>解决时间:2010-8-7 12:13</p>
<p>最新asp列表源代码</p>
<p>提问者: paquestion - 一级</p>
<p>最佳答案</p>
<p>SecondDomainInc.asp</p>
<p><!--#include file="../session.asp"--></p>
<p><!--/#include file="../../myfunction.asp"--></p>
<p><%</p>
<p>\'==================================================================================</p>
<p>\'dim i \'i循环变量</p>
<p>\'dim o\' \'o实例化查询类</p>
<p>\'使用</p>
<p>\'    dim o\' \'o实例化查询类</p>
<p>\' set o=New DBInfoList</p>
<p>\' dim oRs \'oRs循环变量</p>
<p>\' o.Sql = " select xuhao,xingming from zuozhe "</p>
<p>\' o.PageNum = 10</p>
<p>\' for each oRs in o.RsList() \'i循环变量\' % ></p>
<p>\'  <tr></p>
<p>\'   <td><a href=test.asp?id=< %=oRs(0)% >>< %=oRs(1)% ></a></td></p>
<p>\'  </tr></p>
<p>\'  <% next% ></p>
<p>\'  <tr></p>
<p>\'   <td></p>
<p>\'    < %o.PageList% ></p>
<p>\'   </td></p>
<p>\'  </tr></p>
<p>\' </table></p>
<p>\'==================================================================================</p>
<p>Class DBInfoList</p>
<p>Private GFSql     \'sql语句</p>
<p>Private page_size    \'每页显示记录数</p>
<p>Private ListNum     \'显示的页数数字个数</p>
<p>Private page     \'当前页</p>
<p>Private listStyle      \'列表样式编号(分页可设置多种样式)</p>
<p>Private name_first    \'第一页</p>
<p>Private name_Previous    \'前一页</p>
<p>Private name_next    \'后一页</p>
<p>Private name_last    \'最后一页</p>
<p>Private cutepageStyle   \'分页列表的样式表</p>
<p>Private noneStr     \'无记录时的提示信息</p>
<p>Private totalPage    \'所有记录的总页数</p>
<p>Private totalRecordNumber  \'所有记录的总条数</p>
<p>Private theDBInfoList    \'取出记录后存入的数组</p>
<p>Private theRsCount    \'所有当前页取出的记录的总条数</p>
<p>Private lineMax                 \'记录行数</p>
<p>Private volMax                  \'记录列数,字段数</p>
<p>Private startTime</p>
<p>Private endTime</p>
<p>\'/*-----初始化类-----*/</p>
<p>Private Sub Class_Initialize()</p>
<p>GFSql = ""</p>
<p>page_size = 10</p>
<p>ListNum=5</p>
<p>name_first = "首页"</p>
<p>name_Previous = "前页"</p>
<p>name_next = "后页"</p>
<p>name_last = "末页"</p>
<p>cutepageStyle = "div_trunPage"</p>
<p>noneStr = "暂无记录!"</p>
<p>theRsCount=0</p>
<p>End Sub</p>
<p>\'/*---设置SQL语句----*/</p>
<p>Public Property Let Sql (ByVal sqlStr)</p>
<p>GFSql = sqlStr</p>
<p>End Property</p>
<p>\'/*---设置每页显示的条数----*/</p>
<p>Public Property Let PageNum (ByVal thePN)</p>
<p>page_size = thePN</p>
<p>End Property</p>
<p>\'/*---显示的页数数字个数----*/</p>
<p>Public Property Let SetListNum (ByVal theLN)</p>
<p>ListNum = theLN</p>
<p>End Property</p>
<p>\'/*---列表样式编号(分页可设置多种样式)----*/</p>
<p>Public Property Let SetListStyle (ByVal thePN)</p>
<p>listStyle = thePN</p>
<p>End Property</p>
<p>\'/*---分页列表的样式表----*/</p>
<p>Public Property Let SetCutepageStyle (ByVal thePN)</p>
<p>cutepageStyle = thePN</p>
<p>End Property</p>
<p>\'/*---无记录时的提示信息----*/</p>
<p>Public Property Let SetNoneStr (ByVal thePN)</p>
<p>noneStr = thePN</p>
<p>End Property</p>
<p>\'/*---取得记录数组----*/</p>
<p>Private Sub SetTheDBInfoList ()</p>
<p>startTime=timer()</p>
<p>Dim thisRs</p>
<p>Dim thePageSize</p>
<p>thePageSize=page_size</p>
<p>Set thisRs=Server.CreateObject("ADODB.RecordSet")</p>
<p>thisRs.Open GFSql , CONN , 1 , 1 \'----------------------------------------------conn</p>
<p>If not ( thisRs.EOF or thisRs.BOF ) Then</p>
<p>totalRecordNumber = thisRs.RecordCount  \'计算总记录条数</p>
<p>if thePageSize=0 then thePageSize=totalRecordNumber end if</p>
<p>totalPage = INT(totalRecordNumber / thePageSize * -1) * -1  \'计算总页数</p>
<p>thisRs.pagesize=thePageSize \'设置数据库,每页显示的记录条数</p>
<p>page = Request.QueryString("page")</p>
<p>\'/*---翻页函数----*/</p>
<p>dim actionURL,all_para,pageValue</p>
<p>\'采用GET方式,行地址参数</p>
<p>all_para=request.ServerVariables("QUERY_STRING") \'取参数部分</p>
<p>actionURL=request.ServerVariables("url")</p>
<p>pageValue="page="&request.QueryString("page")</p>
<p>if left(all_para,len(pageValue))=pageValue then</p>
<p>all_para=replace(all_para,pageValue&"&","")</p>
<p>end if</p>
<p>all_para=replace(all_para,"&"&pageValue,"")</p>
<p>all_para=replace(all_para,pageValue,"")</p>
<p>if all_para="" then</p>
<p>actionURL=actionURL&"?page="</p>
<p>else</p>
<p>actionURL=actionURL&"?"&all_para&"&page="</p>
<p>end if</p>
<p>actionURL=replace(actionURL,"\'","\\'")</p>
<p>actionURL=replace(actionURL,"""","\""")</p>
<p>response.Write "<script language=\'javascript\'>"&_</p>
<p>" function doTurnPage(num){"&_</p>
<p>"        document.location.href="""&actionURL&"""+num;"&_</p>
<p>" }"&_</p>
<p>"</script>"</p>
<p>\'/*---如果没有选择第几页,则默认显示第一页;---*/</p>
<p>If page = "" then</p>
<p>page = 1</p>
<p>Else</p>
<p>On Error Resume Next</p>
<p>Dim Sky_TempPageNo</p>
<p>Sky_TempPageNo=cint(page)</p>
<p>If Err then</p>
<p>page = 1</p>
<p>End If</p>
<p>Err.Clear</p>
<p>End If</p>
<p>\'/*---如果所选当前页大于总页数,刚显示最后一页----*/</p>
<p>If cint(page)>totalPage Then</p>
<p>page=totalPage</p>
<p>End If</p>
<p>\'/*---如果数据库中有记录,则按刚才设置的页面大小取出第N页的记录----*/</p>
<p>If totalRecordNumber <> 0 then</p>
<p>thisRs.AbsolutePage = page</p>
<p>End If</p>
<p>theDBInfoList=thisRs.GetRows( thePageSize )  \'取出本页的记录放入数组中</p>
<p>End If</p>
<p>thisRs.Close</p>
<p>Set thisRs = NOTHING</p>
<p>endTime=timer()</p>
<p>End Sub</p>
<p>\'/*---取得到的最大记录数----*/</p>
<p>Private Sub  GetRsMax</p>
<p>SetTheDBInfoList</p>
<p>If isArray( theDBInfoList ) Then</p>
<p>lineMax = cint(ubound( theDBInfoList , 2 ))</p>
<p>volMax = ubound( theDBInfoList , 1 )</p>
<p>theRsCount=lineMax+1 \'lineMax从0开始</p>
<p>Else</p>
<p>lineMax = -1</p>
<p>volMax = -1</p>
<p>End If</p>
<p>End Sub</p>
<p>\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'</p>
<p>\'/*---得到的当前页取得的记录的条数----*/</p>
<p>Public Property Get RsCounct</p>
<p>RsCounct=theRsCount</p>
<p>End Property</p>
<p>\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'</p>
<p>\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'</p>
<p>\'/*---取得到的记录的数组----*/</p>
<p>Public Property Get RsList</p>
<p>GetRsMax</p>
<p>dim i,j</p>
<p>redim tempRsList(lineMax)</p>
<p>redim tempRsFiledsList(volMax)</p>
<p>for i=0 to lineMax</p>
<p>for j=0 to volMax</p>
<p>tempRsFiledsList(j)=theDBInfoList(j,i)</p>
<p>next</p>
<p>tempRsList(i)=tempRsFiledsList</p>
<p>next</p>
<p>RsList=tempRsList</p>
<p>End Property</p>
<p>\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'</p>
<p>\'/*----取得记录(字段值)----*/</p>
<p>Function Rs(n,i)</p>
<p>Rs = theDBInfoList( n , i )</p>
<p>End Function</p>
<p>\'/*----得到页数列表----*/</p>
<p>Public Property Get PageList</p>
<p>Dim Sky_first</p>
<p>Dim Sky_Previous</p>
<p>Dim Sky_next</p>
<p>Dim Sky_last</p>
<p>Dim Sky_mid</p>
<p>Dim Sky_input</p>
<p>dim overStr</p>
<p>If page_size > totalRecordNumber Then</p>
<p>page_size = totalRecordNumber</p>
<p>End If</p>
<p>If totalRecordNumber = 0 or totalPage = 1 Then  \'如果只有一页,或者没有记录则 不显示连接</p>
<p>Sky_first = name_first</p>
<p>Sky_Previous = name_Previous</p>
<p>Sky_next = name_next</p>
<p>Sky_last = name_last</p>
<p>Else</p>
<p>If page = 1 Then     \'如果当前为第一页则不显示连接</p>
<p>Sky_first = name_first</p>
<p>Sky_Previous = name_Previous</p>
<p>Else</p>
<p>Sky_first="<a href=javascript:doTurnPage(\'1\');>" & name_first & "</a>"</p>
<p>Sky_Previous="<a href=javascript:doTurnPage(\'"&page-1&"\');>" & name_Previous & "</a>"</p>
<p>End If</p>
<p>\'数字页列表形式</p>
<p>Dim ForI , Sky_Page_Begin , Sky_Page_End</p>
<p>On Error Resume Next</p>
<p>Dim TListNum</p>
<p>TListNum = Cint( ListNum )</p>
<p>If Err Then</p>
<p>TListNum = 3</p>
<p>ListNum = 0</p>
<p>End If</p>
<p>If TListNum >= 3 Then</p>
<p>Sky_Page_Begin = page - Int( ListNum / 2 )</p>
<p>Sky_Page_End = page + ( ListNum - Int( ListNum / 2 ) - 1 )</p>
<p>If Sky_Page_Begin <= 0 Then</p>
<p>Sky_Page_Begin = 1</p>
<p>Sky_Page_End = ListNum</p>
<p>End If</p>
<p>If Sky_Page_End > totalPage Then</p>
<p>Sky_Page_Begin = totalPage - ListNum + 1</p>
<p>Sky_Page_End = totalPage</p>
<p>End If</p>
<p>If Sky_Page_Begin <= 0 Then</p>
<p>Sky_Page_Begin = 1</p>
<p>End If</p>
<p>For ForI = Sky_Page_Begin to Sky_Page_End</p>
<p>IF ForI=cint(page) Then</p>
<p>Sky_mid = Sky_mid&" "&ForI & "  &#73; "</p>
<p>Else</p>
<p>Sky_mid = Sky_mid & " <a href=javascript:doTurnPage(\'" & ForI & "\');>" & ForI & "</a>  &#73; "</p>
<p>End If</p>
<p>Next</p>
<p>End If</p>
<p>\'数字页列表形式</p>
<p>If page+1 > totalPage Then</p>
<p>Sky_next = name_next</p>
<p>Sky_last = name_last</p>
<p>Else</p>
<p>Sky_next = "<a href=javascript:doTurnPage(\'" & page + 1 & "\');>" & name_next & "</a>"</p>
<p>Sky_last = "<a href=javascript:doTurnPage(\'" & totalPage & "\');>" & name_last & "</a>"</p>
<p>End If</p>
<p>End If</p>
<p>If totalPage > 1 Then</p>
<p>Sky_input = "<input type=\'text\' name=\'page\' size=\'3\' value=\'"&page&"\' _title=\'请输入页号,然后回车\' style=\'cursor:default; font-size:9pt; color:#FF8000;height:15px;width:20px;text-align:center;border:0px;border-bottom:1px solid #dddddd;\' onkeydown=\'if(event.keyCode==13){doTurnPage( this.value );return false;}\'>"</p>
<p>Else</p>
<p>Sky_input = "<input type=\'text\' name=\'page\' size=\'3\' value=\'"&page&"\' _title=\'请输入页号,然后回车\' style=\'cursor:default; font-size:9pt; color:#FF8000;height:15px;width:20px; text-align:center;border:0px;border-bottom:1px solid #dddddd;\' onkeydown=\'if(event.keyCode==13){doTurnPage( this.value );return false;}\' >"</p>
<p>End If</p>
<p>If ListNum <> 0 Then</p>
<p>Sky_mid = Sky_mid</p>
<p>Else</p>
<p>Sky_mid = ""</p>
<p>End If</p>
<p>Dim TheTableStyle,TheTdStyle</p>
<p>Select Case listStyle</p>
<p>\'这是可以修改的地方,样式部分------开</p>
<p>Case "en"</p>
<p>Sky_first = replace(Sky_first,"首页","First")</p>
<p>Sky_Previous = replace(Sky_Previous,"前页","Previous")</p>
<p>Sky_next = replace(Sky_next,"后页","Next")</p>
<p>Sky_last =replace(Sky_last,"末页","Last")</p>
<p>overStr=overStr & "<div class=\'" & cutepageStyle & "\' "&_</p>
<p>"title=\'start="&startTime&",end="&endtime&".use="&endTime-startTime&"\'>"&_</p>
<p>"<span class=\'span\'>"&_</p>
<p>"Current <span style=\'color:#ff3333\'>" & cint( page ) & "</span>/ "&_</p>
<p>"Total <span style=\'color:#ff3333\'>" & totalPage & "</span> " &_</p>
<p>"</span>" &_</p>
<p>"<span class=\'span\'>"&_</p>
<p>"<span style=\'color:#ff3333\'>" & page_size & "</span>/"&_</p>
<p>"<span style=\'color:#ff3333\'>" & totalRecordNumber & "</span> " &_</p>
<p>"</span>" &_</p>
<p>"<span class=\'span\'>"&_</p>
<p>Sky_first & " &#73; " & Sky_Previous & " &#73; " &_</p>
<p>Sky_mid & " " & Sky_next & " &#73; " & Sky_last & " " &_</p>
<p>"</span>" &_</p>
<p>"<span class=\'span\'>"&_</p>
<p>Sky_input & " " &_</p>
<p>"</span>" &_</p>
<p>"</div>"</p>
<p>Case Else</p>
<p>overStr=overStr & "<div class=\'" & cutepageStyle & "\' "&_</p>
<p>"title=\'start="&startTime&",end="&endtime&".use="&endTime-startTime&"\'>"&_</p>
<p>"<span class=\'span\'>"&_</p>
<p>"共<span style=\'color:#ff3333\'>" & totalRecordNumber & "</span>条信息 " &_</p>
<p>"每页<span style=\'color:#ff3333\'>" & page_size & "</span>条 "&_</p>
<p>"</span>" &_</p>
<p>"<span class=\'span\'>"&_</p>
<p>"共<span style=\'color:#ff3333\'>" & totalPage & "</span>页 " &_</p>
<p>"当前<span style=\'color:#ff3333\'>" & cint( page ) & "</span>页 "&_</p>
<p>"</span>" &_</p>
<p>"<span class=\'span\'>"&_</p>
<p>Sky_first & " &#73; " & Sky_Previous & " &#73; " &_</p>
<p>Sky_mid & " " & Sky_next & " &#73; " & Sky_last & " " &_</p>
<p>"</span>" &_</p>
<p>"<span class=\'span\'>"&_</p>
<p>Sky_input & " " &_</p>
<p>"</span>" &_</p>
<p>"</div>"</p>
<p>\'这是可以修改的地方,样式部分------结束</p>
<p>End Select</p>
<p>If page_size<>0 then</p>
<p>If totalRecordNumber = 0 then</p>
<p>response.Write( noneStr )</p>
<p>else</p>
<p>response.Write( overStr&"" )</p>
<p>end if</p>
<p>End If</p>
<p>End Property</p>
<p>\'类 卸载</p>
<p>Private Sub Class_Terminate()</p>
<p>GFSql = ""</p>
<p>page_size = 10</p>
<p>page = 1</p>
<p>End Sub</p>
<p>End Class</p>
<p>\'//连接数据库===============================================</p>
<p>\'dim conStr,conn</p>
<p>\'set conn=Server.CreateObject("ADODB.Connection")</p>
<p>\'conStr = "Provider = Sqloledb; User ID = sa; Password = sa;Initial Catalog = PartTimeJobTest; Data Source = 127.0.0.1;"</p>
<p>\'conn.open conStr</p>
<p>\'//=======================================================</p>
<p>\'//公用函数</p>
<p>dim o\' \'o实例化查询类</p>
<p>set o=New DBInfoList</p>
<p>dim oRs \'oRs循环变量</p>
<p>Function Filtrate(str)</p>
<p>Dim finalStr</p>
<p>finalStr = str</p>
<p>finalStr = replace(finalStr,"&","&")</p>
<p>finalStr = Replace(finalStr, """,Chr(34))</p>
<p>finalStr = replace(finalStr,"<","<")</p>
<p>finalStr = replace(finalStr,">",">")</p>
<p>finalStr = replace(finalStr,"\'","\'\'")</p>
<p>Filtrate = finalStr</p>
<p>End function</p>
<p>Function RequestGet(str)</p>
<p>RequestGet = Filtrate(request.QueryString(str))</p>
<p>End function</p>
<p>Function RequestPost(str)</p>
<p>RequestPost = Filtrate(request.Form(str))</p>
<p>End function</p>
<p>\'//==================</p>
<p>Function GetBigClassDownList(id)</p>
<p>Dim sql,rs,str</p>
<p>sql = "select id,BigClassName from BigClass order by id"</p>
<p>call insert_hacker(sql,GetUrl20081222)</p>
<p>set rs=conn.execute(sql)</p>
<p>do while not (rs.bof or rs.eof)</p>
<p>str = str & "<option value=\'"&rs(0)&"\' "</p>
<p>if id&"" = rs(0)&"" then</p>
<p>str = str & " selected "</p>
<p>end if</p>
<p>str = str & " >"&rs(1)&"</option>"</p>
<p>rs.movenext</p>
<p>loop</p>
<p>rs.close</p>
<p>set rs=nothing</p>
<p>str="<select name=\'BigClassId\'><option value=\'\' >请选择分类</option>"&str&"</select>"</p>
<p>GetBigClassDownList = str</p>
<p>End Function</p>
<p>%></p>
<p>0</p>
<p>回答者:</p>
<p>blueskyofsnow - 四级   2010-8-5 07:55</p>
<p>我来评论>></p>
<p>提问者对于答案的评价:</p>
<p>谢谢!</p>
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|文字版|手机版|小黑屋|襄阳城

GMT+8, 2025-5-13 14:57

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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