青海網站建設、網絡推廣最好的公司--您身邊的網站建設專家,馬上拿起電話,聯系我們:0971-8235355   
青海西寧網站建設、網站制作公司-西寧威勢電子信息服務有限公司 首頁 |  公司簡介 |  網站建設 |  網絡推廣 |  空間租用 |  域名注冊 |  企業郵局 |  網絡安全 |  網站編程 |  客服中心 |  聯系我們 |  人才招聘
 
西寧威勢最新網站制做案例展示
Lastest Project
 
西寧網站建設  
當前位置為:首頁 >> ASP編程 >> 正文  
ASP內容頁分頁程序

文章來源: 西寧威勢電子信息服務有限公司     發布時間:2010-5-8    瀏覽次數:4859   

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<%
response.Charset="utf-8"

%>
<%
dim conn,db
dim connstr
db="Databases/111.mdb" '數據庫文件位置
on error resume next
connstr="DBQ="+server.mappath(""&db&"")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
if err then
err.clear
else
conn.open connstr
end if
sub CloseConn()
 conn.close
 set conn=nothing
end sub
%>
<body>
<%
Const maxPagesize=3000     '設置分頁字數
Function InsertPageBreak(strText)   '插入分頁字符
Dim strPagebreak,s,ss
Dim i,IsCount,c,iCount,strTemp,Temp_String,Temp_Array
strPagebreak="[hiweb_break]"
s=strText
If Len(s)<maxPagesize Then
   InsertPageBreak=s
End If
s=Replace(s, strPagebreak, "")
s=Replace(s, "&nbsp;", "<&nbsp;>")
s=Replace(s, "&gt;", "<&gt;>")
s=Replace(s, "&lt;", "<&lt;>")
s=Replace(s, "&quot;", "<&quot;>")
s=Replace(s, "&#39;", "<&#39;>")
If s<>"" and maxPagesize<>0 and InStr(1,s,strPagebreak)=0 then
   IsCount=True
   Temp_String=""
   For i= 1 To Len(s)
    c=Mid(s,i,1)
    If c="<" Then
     IsCount=False
    ElseIf c=">" Then
     IsCount=True
    Else
     If IsCount=True Then
      If Abs(Asc(c))>255 Then
       iCount=iCount+2
      Else
       iCount=iCount+1
      End If
      If iCount>=maxPagesize And i<Len(s) Then
       strTemp=Left(s,i)
       If CheckPagination(strTemp,"table|a|b>|i>|strong|div|span") then
        Temp_String=Temp_String & Trim(CStr(i)) & ","
        iCount=0
       End If
      End If
     End If
    End If
   Next
   If Len(Temp_String)>1 Then Temp_String=Left(Temp_String,Len(Temp_String)-1)
   Temp_Array=Split(Temp_String,",")
   For i = UBound(Temp_Array) To LBound(Temp_Array) Step -1
    ss = Mid(s,Temp_Array(i)+1)
    If Len(ss) > 380 Then
     s=Left(s,Temp_Array(i)) & strPagebreak & ss
    Else
     s=Left(s,Temp_Array(i)) & ss
    End If
   Next
End If
s=Replace(s, "<&nbsp;>", "&nbsp;")
s=Replace(s, "<&gt;>", "&gt;")
s=Replace(s, "<&lt;>", "&lt;")
s=Replace(s, "<&quot;>", "&quot;")
s=Replace(s, "<&#39;>", "&#39;")
InsertPageBreak=s
End Function
Function CheckPagination(strTemp,strFind)   '檢測有沒包含table|a|b>|i>|strong|div|span等字符,避免分頁時出錯
Dim i,n,m_ingBeginNum,m_intEndNum
Dim m_strBegin,m_strEnd,FindArray
strTemp=LCase(strTemp)
strFind=LCase(strFind)
If strTemp<>"" and strFind<>"" then
   FindArray=split(strFind,"|")
   For i = 0 to Ubound(FindArray)
    m_strBegin="<"&FindArray(i)
    m_strEnd   ="</"&FindArray(i)
    n=0
    do while instr(n+1,strTemp,m_strBegin)<>0
     n=instr(n+1,strTemp,m_strBegin)
     m_ingBeginNum=m_ingBeginNum+1
    Loop
    n=0
    do while instr(n+1,strTemp,m_strEnd)<>0
     n=instr(n+1,strTemp,m_strEnd)
     m_intEndNum=m_intEndNum+1
    Loop
    If m_intEndNum=m_ingBeginNum then
     CheckPagination=True
    Else
     CheckPagination=False
     Exit Function
    End If
   Next
Else
   CheckPagination=False
End If
End Function
Function ContentPagination(hiwebstr)   '內容分頁
Dim ContentLen, maxperpage, Paginate
Dim arrContent, strContent, i
Dim m_strFileUrl,m_strFileExt,ArticleID
ArticleID=Request.QueryString("ID")
strContent = InsertPageBreak(hiwebstr)
ContentLen = Len(strContent)
CurrentPage=Request.QueryString("Page")
If CurrentPage="" Then CurrentPage=0
If InStr(strContent, "[hiweb_break]") <= 0 Then
   ArticleContent = "<div id=""NewsContentLabel"" class=""NewsContent"">" & strContent & "</div><div id=""Message"" class=""Message""></div>"
Else
   arrContent = Split(strContent, "[hiweb_break]")
   Paginate = UBound(arrContent) + 1
   If CurrentPage = 0 Then
    CurrentPage = 1
   Else
    CurrentPage = CLng(CurrentPage)
   End If
   If CurrentPage < 1 Then CurrentPage = 1
   If CurrentPage > Paginate Then CurrentPage = Paginate
   strContent = "<div id=""NewsContentLabel"" class=""NewsContent"">"& arrContent(CurrentPage - 1)
   ArticleContent = ArticleContent & strContent&"</div><br/><br/><p><b>"
    m_strFileExt = ""
    m_strFileUrl = "?id=" & ArticleID & "&Page="
  ' End If
   If CurrentPage > 1 Then
     ArticleContent = ArticleContent & "<a href="""& m_strFileUrl & CurrentPage - 1 & m_strFileExt & """>上一頁</a>&nbsp;&nbsp;"
   End If
   For i = 1 To Paginate
    If i = CurrentPage Then
     ArticleContent = ArticleContent & "<font color=""red"">[" & CStr(i) & "]</font>&nbsp;"
    Else
      ArticleContent = ArticleContent & "<a href="""& m_strFileUrl & i & m_strFileExt & """>[" & i & "]</a>&nbsp;"
     End If
   Next
   If CurrentPage < Paginate Then
    ArticleContent = ArticleContent & "&nbsp;<a href="""& m_strFileUrl & CurrentPage + 1 & m_strFileExt & """>下一頁</a>"
   End If
   ArticleContent = ArticleContent & "</b></p>"
End If
Response.Write(ArticleContent)
End Function
%>
<%
set rs_news=server.createobject("adodb.recordset")
'sqltext4="select * from news where ArticleID=458 "
id=request("id")
sqltext4="select * from news where ArticleID="&id
rs_news.open sqltext4,conn,1,1

%>
<%
'response.Write(rs_news("Content"))
dim content
content=rs_news("Content")
'response.Write("yuanlai"&content)
%>
<%call ContentPagination(content)%>
<%
'response.Write( content)
%>
</body>
</html>


上一篇:VBScript TypeName 函數
下一篇:Dreamweaver CS4 SN以及序列號注冊機,激活碼和完美激活破解方法
評論列表
正在加載評論……
  
評論   
呢  稱:
驗證碼: 若看不清請點擊更換!
內  容:
 
 
  在線洽談咨詢:
點擊這里,在線洽談   點擊這里,在線洽談   點擊這里,在線洽談
與我交談  與我交談 與我交談
乘車路線    匯款方式   加盟合作  人才招聘  
公司地址:青海省西寧市西關大街73號(三二四部隊招行所四樓)     青ICP備13000578號-1 公安機關備案號:63010402000123    
QQ:147399120    mail:[email protected]    電話: 13897410341    郵編:810000
© Copyright( 2008-2009) QhWins.Com All Rights Reserved    版權所有:西寧威勢電子信息服務有限公司 未經書面制授權,請勿隨意轉載!
業務:青海網站制做、青海網站建設、青海網頁設計、西寧網站制做、西寧網站建設、青海域名注冊、青海網絡推廣、青海網站推廣、青?臻g租用、青海軟件開發、網站安全、網絡安全

七天赚钱术