当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP实现长文章自动分页的函数代码

ASP
制作我们自己的Ebay(拍卖系统)(3)
制作我们自己的Ebay(拍卖系统)(4)
制作我们自己的Ebay(拍卖系统)(5)
制作我们自己的Ebay(拍卖系统)(6)
制作我们自己的Ebay(拍卖系统)(8)
制作我们自己的Ebay(拍卖系统)(9)
制作我们自己的Ebay(拍卖系统)(7)
作一个可以直接和浏览器进行交互的组件
用ASP+实现一个简单的计算器(适合入门者)
用多种方法制作WEB页面的计数器
asp+的论坛列表程序---代码部分
asp+的论坛列表程序---页面部分
asp+版本简单的留言板的制作(一)
asp+版本简单的留言板的制作(二)
asp+版本简单的留言板的制作(三)
一个功能完善的专栏管理的程序->这是asp.net的第二个应用(一)
一个功能完善的专栏管理的程序->这是asp.net的第二个应用(二)
一个功能完善的专栏管理的程序->这是asp.net的第二个应用(三)
一个功能完善的专栏管理的程序->这是asp.net的第二个应用(四)
一个功能完善的专栏管理的程序->这是asp.net的第二个应用(五)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 104 ::
收藏到网摘: n/a

以下是引用片段:
  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
  '结束

  以上代码在WIN2000+IIS5、WIN2003+IIS6 上执行通过