asp常用函数集合,非常不错以后研究第1/4页
asp常用函数集合,非常不错以后研究第1/4页
发布时间:2016-12-29 来源:查字典编辑
摘要:0thengetattribute=split(matches(0).value,"""")(1)elsegetattribute=""en...

<%

functionloadtempletfile(byvalpath)

onerrorresumenext

dimobjstream

setobjstream=server.createobject("adodb.stream")

withobjstream

.type=2

.mode=3

.open

.loadfromfileserver.mappath(path)

iferr.number<>0then

err.clear

response.write("预加载的模板["&path&"]不存在!")

response.end()

endif

.charset=""&chrset&""

.position=2

loadtempletfile=.readtext

.close

endwith

setobjstream=nothing

endfunction

functionmovefiles(sFolder,dFolder)

onerrorresumenext

dimfso

setfso=server.createobject("scripting.filesystemobject")

iffso.folderexists(server.mappath(sFolder))andfso.folderexists(server.mappath(dFolder))then

fso.copyfolderserver.mappath(sFolder),server.mappath(dFolder)

movefiles=true

else

movefiles=false

setfso=nothing

callalertbox("系统没有找到指定的路径["&sFolder&"]!",2)

endif

setfso=nothing

endfunction

functionrenamefolder(sFolder,dFolder)

onerrorresumenext

dimfso

setfso=server.createobject("scripting.filesystemobject")

iffso.folderexists(server.mappath(sFolder))then

fso.movefolderserver.mappath(sFolder),server.mappath(dFolder)

renamefolder=true

else

renamefolder=false

setfso=nothing

callalertbox("系统没有找到指定的路径["&sFolder&"]!",2)

endif

setfso=nothing

endfunction

functioncheckfolder(sPATH)

onerrorresumenext

dimfso

setfso=server.createobject("scripting.filesystemobject")

iffso.folderexists(server.mappath(sPATH))then

checkfolder=true

else

checkfolder=false

endif

setfso=nothing

endfunction

functioncheckfile(sPATH)

onerrorresumenext

dimfso

setfso=server.createobject("scripting.filesystemobject")

iffso.fileexists(server.mappath(sPATH))then

checkfile=true

else

checkfile=false

endif

setfso=nothing

endfunction

functioncreatedir(sPATH)

dimfso,pathArr,i,path_Level,pathTmp,cPATH

onerrorresumenext

sPATH=replace(sPATH,"","/")

setfso=server.createobject("scripting.filesystemobject")

pathArr=split(sPATH,"/")

path_Level=ubound(pathArr)

fori=0topath_Level

ifi=0thenpathTmp=pathArr(0)&"/"elsepathTmp=pathTmp&pathArr(i)&"/"

cPATH=left(pathTmp,len(pathTmp)-1)

ifnotfso.folderexists(cPATH)thenfso.createfolder(cPATH)

next

setfso=nothing

iferr.number<>0then

err.clear

createdir=false

else

createdir=true

endif

endfunction

functiondelclassfolder(sPATH)

onerrorresumenext

dimfso

setfso=server.createobject("scripting.filesystemobject")

iffso.folderexists(server.mappath(sPATH))then

fso.deletefolder(server.mappath(sPATH))

endif

setfso=nothing

endfunction

functiondelnewsfile(sPATH,filename)

onerrorresumenext

dimfso,tempArr,cPATH,ePATH,i:i=0

setfso=server.createobject("scripting.filesystemobject")

sPATH=sPATH&filename&site_extname

iffso.fileexists(server.mappath(sPATH))then

fso.deletefile(server.mappath(sPATH))

while(i<>-1)

i=i+1

ePATH=replace(sPATH,filename&".",filename&"_"&i+1&".")

iffso.fileexists(server.mappath(ePATH))then

fso.deletefile(server.mappath(ePATH))

else

i=-1

endif

wend

endif

endfunction

classstringclass

publicfunctiongetstr(strhtml)

dimPatrnStr

PatrnStr="<.*?>"

dimobjRegEx

setobjRegEx=newRegExp

objRegEx.pattern=PatrnStr

objRegEx.ignorecase=true

objRegEx.global=true

getstr=objRegEx.replace(strhtml,"")

setobjRegEx=nothing

endfunction

publicfunctionreplacestr(patrn,mstr,replstr)

dimobjRegEx

setobjRegEx=newRegExp

objRegEx.pattern=patrn

objRegEx.ignorecase=true

objRegEx.global=true

replacestr=objRegEx.replace(mstr,replstr)

setobjRegEx=nothing

endfunction

publicfunctionclasscustomtag(byvalpatrn,byvalmstr,byvalclassid,byvalindexid,byvalpagestr)

dimobjRegEx,match,matches

setobjRegEx=newRegExp

objRegEx.pattern=patrn

objRegEx.ignorecase=true

objRegEx.global=true

setmatches=objRegEx.execute(mstr)

foreachmatchinmatches

mstr=replace(mstr,match.value,parseclasstag(match.value,classid,indexid,pagestr))

next

setmatches=nothing

setobjRegEx=nothing

classcustomtag=mstr

endfunction

publicfunctionnewscustomtag(byvalpatrn,byvalmstr,byvalclassid,byvalnewsid,byvalkeywords)

dimobjRegEx,match,matches

setobjRegEx=newRegExp

objRegEx.pattern=patrn

objRegEx.ignorecase=true

objRegEx.global=true

setmatches=objRegEx.execute(mstr)

foreachmatchinmatches

mstr=replace(mstr,match.value,parsenewstag(match.value,classid,newsid,keywords))

next

setmatches=nothing

setobjRegEx=nothing

newscustomtag=mstr

endfunction

endclass

functionprocesscustomtag(byvalscontent)

dimobjRegEx,match,matches

setobjRegEx=newRegExp

objRegEx.pattern="{ncms:[^<>]+?/}"

objRegEx.ignorecase=true

objRegEx.global=true

setmatches=objRegEx.execute(scontent)

foreachmatchinmatches

scontent=replace(scontent,match.value,parsetag(match.value))

next

setmatches=nothing

setobjRegEx=nothing

processcustomtag=scontent

endfunction

functionX_processcustomtag(byvalscontent)

dimobjRegEx,match,matches

setobjRegEx=newRegExp

objRegEx.pattern="([ncms:).+?(])(.|n)+?([/ncms])"

objRegEx.ignorecase=true

objRegEx.global=true

setmatches=objRegEx.execute(scontent)

foreachmatchinmatches

scontent=replace(scontent,match.value,parsetag(match.value))

next

setmatches=nothing

setobjRegEx=nothing

X_processcustomtag=scontent

endfunction

functiongetattribute(byvalstrattribute,byvalstrtag)

dimobjRegEx,matches

setobjRegEx=newRegExp

objRegEx.pattern=lcase(strattribute)&"=""[0-9a-zA-Z]*"""

objRegEx.ignorecase=true

objRegEx.global=true

setmatches=objRegEx.execute(strtag)

ifmatches.count>0then

getattribute=split(matches(0).value,"""")(1)

else

getattribute=""

endif

setmatches=nothing

setobjRegEx=nothing

endfunction

functiongetinnerhtml(byvalstrhtml)

dimobjregex,matches,str

setobjregex=newregexp

objregex.pattern="(])(.|n)+?([/ncms])"

objregex.ignorecase=true

objregex.global=false

setmatches=objregex.execute(strhtml)

ifmatches.count>0then

str=trim(matches.item(0).value)

endif

setmatches=nothing

iflen(str)>8then

getinnerhtml=mid(str,2,len(str)-8)

endif

endfunction

functionparsetag(byvalstrtag)

dimarrresult,classname,arrattributes,objclass

iflen(strtag)=0thenexitfunction

arrresult=split(strtag,":")

classname=split(arrresult(1),"")(0)

selectcaselcase(classname)

case"news"

setobjclass=newncmsnewstag

ifnotisnumeric(getattribute("id",strtag))then

response.write("标签[ncms:news]参数错误!参数[id]必须是数字!")

response.end()

endif

objclass.id=getattribute("id",strtag)

ifnotisnumeric(getattribute("num",strtag))then

response.write("标签[ncms:news]参数错误!参数[num]必须是数字!")

response.end()

endif

objclass.num=getattribute("num",strtag)

ifnotisnumeric(getattribute("len",strtag))then

response.write("标签[ncms:news]参数错误!参数[len]必须是数字!")

response.end()

endif

objclass.len=getattribute("len",strtag)

objclass.show=getattribute("show",strtag)

ifgetattribute("lih",strtag)<>""andnotisnumeric(getattribute("lih",strtag))then

response.write("标签[ncms:news]参数错误!参数[lih]必须是数字!")

response.end()

endif

objclass.lih=getattribute("lih",strtag)

ifgetattribute("imgw",strtag)<>""andnotisnumeric(getattribute("imgw",strtag))then

response.write("标签[ncms:news]参数错误!参数[imgw]必须是数字!")

response.end()

endif

objclass.imgw=getattribute("imgw",strtag)

ifgetattribute("imgh",strtag)<>""andnotisnumeric(getattribute("imgh",strtag))then

response.write("标签[ncms:news]参数错误!参数[imgh]必须是数字!")

response.end()

endif

objclass.imgh=getattribute("imgh",strtag)

ifgetattribute("tgt",strtag)<>""andgetattribute("tgt",strtag)<>"blank"then

response.write("标签[ncms:news]参数错误!参数[tgt]必须是[<fontcolor=""red"">blank</font>]!")

response.end()

endif

objclass.tgt=getattribute("tgt",strtag)

ifgetattribute("hit",strtag)<>""andnotisnumeric(getattribute("hit",strtag))then

response.write("标签[ncms:free]参数错误!参数[hit]必须是数字!")

response.end()

endif

objclass.hit=getattribute("hit",strtag)

ifnotisnumeric(getattribute("col",strtag))then

response.write("标签[ncms:news]参数错误!参数[col]必须是数字!")

response.end()

endif

parsetag=objclass.newsshow(getattribute("ty",strtag),getattribute("col",strtag))

setobjclass=nothing

case"free"

setobjclass=newX_ncmsnewstag

ifnotisnumeric(getattribute("id",strtag))then

response.write("标签[ncms:free]参数错误!参数[id]必须是数字!")

response.end()

endif

objclass.id=getattribute("id",strtag)

ifnotisnumeric(getattribute("num",strtag))then

response.write("标签[ncms:free]参数错误!参数[num]必须是数字!")

response.end()

endif

objclass.num=getattribute("num",strtag)

ifnotisnumeric(getattribute("len",strtag))then

response.write("标签[news:free]参数错误!参数[len]必须是数字!")

response.end()

endif

objclass.len=getattribute("len",strtag)

objclass.show=getattribute("show",strtag)

ifgetattribute("lih",strtag)<>""andnotisnumeric(getattribute("lih",strtag))then

response.write("标签[ncms:free]参数错误!参数[lih]必须是数字!")

response.end()

endif

objclass.lih=getattribute("lih",strtag)

ifgetattribute("hit",strtag)<>""andnotisnumeric(getattribute("hit",strtag))then

response.write("标签[ncms:free]参数错误!参数[hit]必须是数字!")

response.end()

endif

objclass.hit=getattribute("hit",strtag)

ifnotisnumeric(getattribute("col",strtag))then

response.write("标签[ncms:free]参数错误!参数[col]必须是数字!")

response.end()

endif

parsetag=objclass.newsshow(getattribute("ty",strtag),getattribute("col",strtag),getinnerhtml(strtag))

case"menu"

setobjclass=newncmsmenutag

parsetag=objclass.menushow(getattribute("show",strtag))

setobjclass=nothing

case"info"

setobjclass=newncmsinfotag

ifnotisnumeric(getattribute("num",strtag))then

response.write("标签[ncms:info]参数错误!参数[num]必须是数字!")

response.end()

endif

objclass.num=getattribute("num",strtag)

ifnotisnumeric(getattribute("len",strtag))then

response.write("标签[ncms:info]参数错误!参数[len]必须是数字!")

response.end()

endif

objclass.len=getattribute("len",strtag)

parsetag=objclass.infoshow()

setobjclass=nothing

case"head"

setobjclass=newncmsheadtag

ifnotisnumeric(getattribute("num",strtag))then

response.write("标签[ncms:head]参数错误!参数[num]必须是数字!")

response.end()

elseifgetattribute("num",strtag)>6then

response.write("标签[ncms:head]参数错误!参数[num]在[1-6]之间!")

response.end()

endif

objclass.num=getattribute("num",strtag)

ifnotisnumeric(getattribute("len",strtag))then

response.write("标签[ncms:head]参数错误!参数[len]必须是数字!")

response.end()

endif

objclass.len=getattribute("len",strtag)

ifgetattribute("imgw",strtag)<>""andnotisnumeric(getattribute("imgw",strtag))then

response.write("标签[ncms:head]参数错误!参数[imgw]必须是数字!")

response.end()

endif

objclass.imgw=getattribute("imgw",strtag)

ifgetattribute("imgh",strtag)<>""andnotisnumeric(getattribute("imgh",strtag))then

response.write("标签[ncms:head]参数错误!参数[imgh]必须是数字!")

response.end()

endif

objclass.imgh=getattribute("imgh",strtag)

ifgetattribute("size",strtag)<>""andnotisnumeric(getattribute("size",strtag))then

response.write("标签[ncms:head]参数错误!参数[size]必须是数字!")

response.end()

endif

objclass.size=getattribute("size",strtag)

parsetag=objclass.headshow(getattribute("ty",strtag))

setobjclass=nothing

case"link"

setobjclass=newncmslinktag

ifnotisnumeric(getattribute("num",strtag))then

response.write("标签[ncms:link]参数错误!参数[num]必须是数字!")

response.end()

endif

objclass.num=getattribute("num",strtag)

ifnotisnumeric(getattribute("col",strtag))then

response.write("标签[ncms:link]参数错误!参数[col]必须是数字!")

response.end()

endif

parsetag=objclass.linkshow(getattribute("ty",strtag),getattribute("col",strtag))

setobjclass=nothing

caseelse

response.write("标签[ncms:xxx]构造错误!")

response.end()

endselect

endfunction

functionparseclasstag(byvalstrtag,byvalclassid,byvalindexid,byvalpagestr)

dimarrresult,classname,arrattributes,objclass

iflen(strtag)=0thenexitfunction

arrresult=split(strtag,":")

classname=split(arrresult(1),"")(0)

selectcaselcase(classname)

case"list"

setobjclass=newncmsclasstag

ifnotisnumeric(getattribute("len",strtag))then

response.write("标签[news:list]参数错误!参数[len]必须是数字!")

response.end()

endif

objclass.len=getattribute("len",strtag)

objclass.order=getattribute("order",strtag)

ifgetattribute("lih",strtag)<>""andnotisnumeric(getattribute("lih",strtag))then

response.write("标签[news:list]参数错误!参数[lih]必须是数字!")

response.end()

endif

objclass.lih=getattribute("lih",strtag)

ifnotisnumeric(getattribute("col",strtag))then

response.write("标签[news:list]参数错误!参数[col]必须是数字!")

response.end()

endif

parseclasstag=objclass.classshow(getattribute("ty",strtag),getattribute("col",strtag),classid,indexid,pagestr)

setobjclass=nothing

caseelse

response.write("标签[news:xxxx]构造错误!")

response.end()

endselect

endfunction

functionparsenewstag(byvalstrtag,byvalclassid,byvalnewsid,byvalkeywords)

dimarrresult,classname,arrattributes,objclass

iflen(strtag)=0thenexitfunction

arrresult=split(strtag,":")

classname=split(arrresult(1),"")(0)

selectcaselcase(classname)

case"relate"

setobjclass=newncmsrelatetag

ifnotisnumeric(getattribute("num",strtag))then

response.write("标签[news:relate]参数错误!参数[num]必须是数字!")

response.end()

endif

objclass.num=getattribute("num",strtag)

ifnotisnumeric(getattribute("len",strtag))then

response.write("标签[news:relate]参数错误!参数[len]必须是数字!")

response.end()

endif

objclass.len=getattribute("len",strtag)

ifgetattribute("lih",strtag)<>""andnotisnumeric(getattribute("lih",strtag))then

response.write("标签[news:relate]参数错误!参数[lih]必须是数字!")

response.end()

endif

objclass.lih=getattribute("lih",strtag)

ifnotisnumeric(getattribute("col",strtag))then

response.write("标签[news:relate]参数错误!参数[col]必须是数字!")

response.end()

endif

parsenewstag=objclass.relateshow(getattribute("col",strtag),classid,newsid,keywords)

setobjclass=nothing

case"page"

setobjclass=newncmspagetag

parsenewstag=objclass.pageshow(getattribute("show",strtag),classid,newsid)

setobjclass=nothing

caseelse

response.write("标签[news:xxxx]构造错误!")

response.end()

endselect

endfunction

functiongetcurclasscount(classid)

dimrs,curclasscount

setrs=conn.execute("selectcount(*)fromNCMS_newswhereclassidin("&classid&allchildclass(classid)&")")

ifinstr(rs(0)/n_listnum,".")<>0then

curclasscount=fix(rs(0)/n_listnum)+1

else

curclasscount=rs(0)/n_listnum

endif

rs.close:setrs=nothing

getcurclasscount=curclasscount

endfunction

classncmsclasstag

publicty,len,order,lih

publicfunctionclassshow(stype,scolumn,classid,indexid,pagestr)

dimTempHTM,xsql,rs,sql,databox,l,obox

TempHTM=""&chr(10)&"<tablecellpadding=""0""cellspacing=""0""width=""100%""border=""0"">"&chr(10)

TempHTM=TempHTM&"<tr>"&chr(10)

ifindexid=""orindexid=0then

indexid=1

endif

selectcasestype

case"text"

setrs=server.createobject("adodb.recordset")

iforder="desc"then

sql="selectclassid,title,click,filename,addtimefromNCMS_newswhereclassidin("&classid&allchildclass(classid)&")andcreated=1andpagetype=0orderbyiddesc"

elseiforder="asc"then

sql="selectclassid,title,click,filename,addtimefromNCMS_newswhereclassidin("&classid&allchildclass(classid)&")andcreated=1andpagetype=0orderbyidasc"

else

response.write("标签[news:list]参数[order]错误!")

response.end()

endif

rs.cursorlocation=3

rs.opensql,conn,1,3

ifrs.eofthen

rs.close:setrs=nothing

TempHTM="<li><fontcolor=""red"">暂时没有新闻!</font></li>"

classshow=TempHTM

exitfunction

endif

rs.pagesize=n_listnum

rs.absolutepage=indexid

forl=1tors.pagesize

ifrs.eofthenexitfor

TempHTM=TempHTM&"<tdheight="""&lih&"""align=""left""valign=""middle"">·<ahref="""&site_root&"/"&site_html&"/"&getclasspath(rs("classid"))&"/"&rs("filename")&site_extname&"""title="""&rs("title")&""">"&gottopic(rs("title"),len)&"</a></td>"&chr(10)

TempHTM=TempHTM&"<tdheight="""&lih&"""align=""center""valign=""middle"">"&rs("click")&"</td>"&chr(10)

TempHTM=TempHTM&"<tdheight="""&lih&"""align=""center""valign=""middle"">"&rs("addtime")&"</td>"&chr(10)

ifl=rs.pagesizethen

TempHTM=TempHTM&"</tr>"&chr(10)

else

ifcint(lmodscolumn)=0then

TempHTM=TempHTM&"</tr>"&chr(10)

TempHTM=TempHTM&"<tr>"&chr(10)

endif

endif

rs.movenext

next

rs.close:setrs=nothing

TempHTM=TempHTM&"</table>"&chr(10)

classshow=TempHTM&pagestr

case"image"

ifIsObjInstalled("persits.jpeg")=trueandjpeg_gate=0then

setrs=server.createobject("adodb.recordset")

iforder="desc"then

sql="selectclassid,title,bimg,filename,addtimefromNCMS_newswhereclassidin("&classid&allchildclass(classid)&")andisimg=1andcreated=1andpagetype=0orderbyiddesc"

elseiforder="asc"then

sql="selectclassid,title,bimg,filename,addtimefromNCMS_newswhereclassidin("&classid&allchildclass(classid)&")andisimg=1andcreated=1andpagetype=0orderbyidasc"

else

response.write("标签[news:list]参数[order]错误!")

response.end()

endif

rs.cursorlocation=3

rs.opensql,conn,1,3

ifrs.eofthen

rs.close:setrs=nothing

TempHTM="<li><fontcolor=""red"">暂时没有新闻!</font></li>"

classshow=TempHTM

exitfunction

endif

rs.pagesize=n_listnum

rs.absolutepage=indexid

forl=1tors.pagesize

ifrs.eofthenexitfor

TempHTM=TempHTM&"<td><divid=""simg""><ahref="""&site_root&"/"&site_html&"/"&getclasspath(rs("classid"))&"/"&rs("filename")&site_extname&"""><imgheight="""&jpeg_height&"""src="""&site_root&"/"&site_upload&"/"&site_simg&"/"&rs("bimg")&"""width="""&jpeg_width&"""alt="""&rs("title")&"""/></a></div></td>"&chr(10)

ifl=rs.pagesizethen

TempHTM=TempHTM&"</tr>"&chr(10)

else

ifcint(lmodscolumn)=0then

TempHTM=TempHTM&"</tr>"&chr(10)

TempHTM=TempHTM&"<tr>"&chr(10)

endif

endif

ifcheckfile(""&site_root&"/"&site_upload&"/"&site_bimg&"/"&rs("bimg")&"")=truethen

setobox=server.createobject("persits.jpeg")

obox.openserver.mappath(""&site_root&"/"&site_upload&"/"&site_bimg&"/"&rs("bimg")&"")

obox.width=jpeg_width

obox.height=jpeg_height

obox.saveserver.mappath(""&site_root&"/"&site_upload&"/"&site_simg&"/"&rs("bimg")&"")

setobox=nothing

endif

rs.movenext

next

rs.close:setrs=nothing

TempHTM=TempHTM&"</table>"&chr(10)

classshow=TempHTM&pagestr

else

setrs=server.createobject("adodb.recordset")

iforder="desc"then

sql="selectclassid,title,bimg,filename,addtimefromNCMS_newswhereclassidin("&classid&allchildclass(classid)&")andisimg=1andcreated=1andpagetype=0orderbyiddesc"

elseiforder="asc"then

sql="selectclassid,title,bimg,filename,addtimefromNCMS_newswhereclassidin("&classid&allchildclass(classid)&")andisimg=1andcreated=1andpagetype=0orderbyidasc"

else

response.write("标签[news:list]参数[order]错误!")

response.end()

endif

rs.cursorlocation=3

rs.opensql,conn,1,3

ifrs.eofthen

rs.close:setrs=nothing

TempHTM="<li><fontcolor=""red"">暂时没有新闻!</font></li>"

classshow=TempHTM

exitfunction

endif

rs.pagesize=n_listnum

rs.absolutepage=indexid

forl=1tors.pagesize

ifrs.eofthenexitfor

TempHTM=TempHTM&"<td><divid=""simg""><ahref="""&site_root&"/"&site_html&"/"&getclasspath(rs("classid"))&"/"&rs("filename")&site_extname&"""><imgheight="""&jpeg_height&"""src="""&site_root&"/"&site_upload&"/"&site_bimg&"/"&rs("bimg")&"""width="""&jpeg_width&"""alt="""&rs("title")&"""/></a></div></td>"&chr(10)

ifl=rs.pagesizethen

TempHTM=TempHTM&"</tr>"&chr(10)

else

ifcint(lmodscolumn)=0then

TempHTM=TempHTM&"</tr>"&chr(10)

TempHTM=TempHTM&"<tr>"&chr(10)

endif

endif

rs.movenext

next

rs.close:setrs=nothing

TempHTM=TempHTM&"</table>"&chr(10)

classshow=TempHTM&pagestr

endif

caseelse

response.write("标签[news:list]参数[ty]错误!")

response.end()

endselect

endfunction

endclass

当前1/4页1234下一页阅读全文

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新ASP教程学习
热门ASP教程学习
编程开发子分类