您的位置:首页 > 编程语言 > ASP

ASP实现长文章自动分页的函数代码

2009-05-12 09:12 796 查看
以下是引用片段:

  Function c2u(myText)

  Dim i

  c2u = ""

  For i = 1 to Len(myText)

  c2u = c2u & "&#x" & Hex(AscW(Mid(myText, i, 1))) & ";"

  Next

  End Function

以下是引用片段:

  Function cutStr(str,strlen)

  '去掉所有HTML标记

  Dim re

  Set re=new RegExp

  re.IgnoreCase =True

  re.Global=True

  re.Pattern="<(.[^>]*)>"

  str=re.Replace(str,"")

  set re=Nothing

  Dim l,t,c,i

  l=Len(str)

  t=0

  For i=1 to l

  c=Abs(Asc(Mid(str,i,1)))

  If c>255 Then

  t=t+2

  Else

  t=t+1

  End If

  If t>=strlen Then

  cutStr=left(str,i)&"..."

  Exit For

  Else

  cutStr=str

  End If

  Next

  cutStr=Replace(cutStr,chr(10),"")

  cutStr=Replace(cutStr,chr(13),"")

  End Function

以下是引用片段:

  Function converttowide(str)

  Dim strlen

  Dim position

  Dim convertstr

  if isnull(str) then

  converttowide=str

  else

  position=1

  strlen=Len(str)

  For i=1 To strlen

  convertstr=convertstr+"&#x"+Hex(AscW(Mid(str,position,1)))+";"

  position=position+1

  Next

  converttowide=convertstr

  end if

  End Function

以下是引用片段:

  dim topicx,usernamex,addtimex,logtextx,ispassword

  '获取ID号

  articleid=request("articleid")

  '写执行语句

  strSQL = "select * from article where articleid="&articleid&""

  '接上面函数

  logtextx=cutStr(rs("content"),5000)

  '开始分页

  dim page,PageLength,CLength,PageCount,wen,a

  if Request("Page")<>"" then Page = CLng(Request("Page"))

  PageLength = 80

  CLength = Len(logtextx)

  PageCount = Int(Clength/PageLength) + 1

  if Page < 1 or IsNull(Page) Then Page = 1

  if Page > PageCount Then Page = PageCount

  if page=1 then

  a=1

  elseif page>1 then

  a=(Page-1)*PageLength

  end if

  wen=Mid(logtextx,a,PageLength)

  '判断

  if page="" or page=1 then

  '开始显示内容

  Response.write (c2u("内容:"))'www.w3sky.com

  end if

  Response.write (converttowide(wen))

  Response.write "<br/>"

  'Response.write (converttowide("本文字数:")) & CLength &"<br/>"

  Response.write (c2u("本文被分为")) & PageCount & (converttowide("页"))&" "&c2u("当前为"&Page&"页")&"<br/>"

  if PageCount >1 and page <> 1 then'www.w3sky.com

  Response.write "1 "

  end if

  dim j

  For j=Page+1 To Page+10

  if j <= PageCount-1 then

  Response.write ""&j&" "

  end if

  next

  if PageCount >1 and Page <> PageCount then

  Response.write "<a href="/"showarticle.asp?articleid="&articleid&"&Page="&PageCount&""">"&PageCount&"</a><br/>"

  End if

  '结束
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: