ASP教程之实例:ASP完成长文章主动分页的函数代码...
ASP在国内异常流行,因为国内大多使用的是盗版的Windows和盗版的SQLServer,而ASP+COM+SQLServer实际上也是一种不错的搭配,其性能也不输于PHP+MYSQL,特别是Windows系统和SQLServer都有图形界面,比APACHE和MYSQL易于维护,因此对于不重视知识产权的国家来说也是一种不错的选择。分页|函数 Functionc2u(myText)Dimi
c2u=""
Fori=1toLen(myText)
c2u=c2u&"&#x"&Hex(AscW(Mid(myText,i,1)))&";"
Next
EndFunction<P> FunctioncutStr(str,strlen)
往失落一切HTML标志
Dimre
Setre=newRegExp
re.IgnoreCase=True
re.Global=True
re.Pattern="<(.[^>]*)>"
str=re.Replace(str,"")
setre=Nothing
Diml,t,c,i
l=Len(str)
t=0
Fori=1tol
c=Abs(Asc(Mid(str,i,1)))
Ifc>255Then
t=t+2
Else
t=t+1
EndIf
Ift>=strlenThen
cutStr=left(str,i)&"..."
ExitFor
Else
cutStr=str
EndIf
Next
cutStr=Replace(cutStr,chr(10),"")
cutStr=Replace(cutStr,chr(13),"")
EndFunction
<P> Functionconverttowide(str)
Dimstrlen
Dimposition
Dimconvertstr
ifisnull(str)then
converttowide=str
else
position=1
strlen=Len(str)
Fori=1Tostrlen
convertstr=convertstr+"&#x"+Hex(AscW(Mid(str,position,1)))+";"
position=position+1
Next
converttowide=convertstr
endif
EndFunction
<P> dimtopicx,usernamex,addtimex,logtextx,ispassword
猎取ID号
articleid=request("articleid")
写实行语句
strSQL="select*fromarticlewherearticleid="&articleid&""
接下面函数
logtextx=cutStr(rs("content"),5000)
入手下手分页
dimpage,PageLength,CLength,PageCount,wen,a
ifRequest("Page")""thenPage=CLng(Request("Page"))
PageLength=80
CLength=Len(logtextx)
PageCount=Int(Clength/PageLength)+1
ifPage<1orIsNull(Page)ThenPage=1
ifPage>PageCountThenPage=PageCount
ifpage=1then
a=1
elseifpage>1then
a=(Page-1)*PageLength
endif
wen=Mid(logtextx,a,PageLength)
判别
ifpage=""orpage=1then
入手下手显现内容
Response.write(c2u("内容:"))www.w3sky.com
endif
Response.write(converttowide(wen))
Response.write"<br/>"
Response.write(converttowide("本笔墨数:"))&CLength&"<br/>"
Response.write(c2u("本文被分为"))&PageCount&(converttowide("页"))&""&c2u("以后为"&Page&"页")&"<br/>"
ifPageCount>1andpage1thenwww.w3sky.com
Response.write"1"
endif
dimj
Forj=Page+1ToPage+10
ifj<=PageCount-1then
Response.write""&j&""
endif
next
ifPageCount>1andPagePageCountthen
Response.write"<ahref="/"showarticle.asp?articleid="&articleid&"&Page="&PageCount&""">"&PageCount&"</a><br/>"
Endif
停止
以上代码在WIN2000+IIS5、WIN2003+IIS6上实行经由过程
因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。SQLServer还有更多的扩展,可以用存储过程,数据库大小无极限限制。 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件 在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。 接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。 下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。 不能只是将它停留在纸上谈兵的程度上。 Session:这个存储跟客户端会话过程的数据,默认20分钟失效 用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。 掌握asp的特性而且一定要知道为什么。
页:
[1]