|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
使用filesystemobject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等。有ado的支持,asp对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。代码分别index.asp
-----------------------------------------------------------------------
<!--#includefile="templateclass.asp"-->
<%
Thisisthecodeusedtoloadanddisplaythetemplate.
Seehowcleanitis!!!:)
subgo()
dimoTemplate
setoTemplate=newtemplate
withoTemplate
.usetemplate("message.tpl")
.tag("date")=Date()
.tag("self")="<divstyle=background:#dddddd>"&.gettemplate("message.tpl",true)&"</div>"
.tag("aspcode")=.gettemplate("index.asp",false)
.tag("howtouse")=.gettemplate("howtouse.tpl",false)
.display()
endwith
setoTemplate=nothing
endsub
go()
%>
templateclass.asp
------------------------------------------------------------------------
<%
Thisisthetemplateobject.Itallowsthecreation,reading
andeditingoftemplatesontheserver.
CREATEDBY:ChristopherBrown-Floyd
DATE:November3,1999
classtemplate
Thisvariablestoresthetemplate
privatemytemplateasstring
Thismethodgetsatemplatefromtheserverandreturns
thewholefileasastring.
publicfunctiongettemplate(pathfilename,encodetohtml)asstring
dimoFSOasobject
dimoTemplateasobject
dimtemptemplateasstring
Opentypeforthetemplate(read-only)
constforreading=1,boolcreatefile=false
ifIsNull(encodetohtml)orencodetohtml=""orencodetohtml=falsethen
encodetohtml=false
else
encodetohtml=true
endif
onerrorresumenext
Createfilesystemobject
setoFSO=server.createobject("scripting.filesystemobject")
Createtemplateobject
setoTemplate=oFSO.opentextfile(server.mappath(pathfilename),forreading,boolcreatefile)
iferr0then
err.clear
exitfunction
endif
Getthewholefileasastring
temptemplate=oTemplate.readall
EncodetemplatetoHTML?
ifencodetohtmlthen
gettemplate=tohtml(temptemplate)
else
gettemplate=temptemplate
endif
Closethetemplate
oTemplate.close
Freetheserverresources
setoTemplate=nothing
setoFSO=nothing
endfunction
Thisproceduregetsandstoresatemplate
publicsubusetemplate(pathfilename)
thistemplate=gettemplate(pathfilename,false)
endsub
Thispropertyreplacestagswiththeuserstemplate
publicpropertylettag(tagname,userstring)
dimld,rdasstring
dimtemptagasstring
dimtagstart,tagendasinteger
ld="<!--"
rd="-->"
tagstart=1
dowhiletagstart>0andtagstart<len(thistemplate)
tagstart=instr(tagstart,thistemplate,ld)
iftagstart>0then
tagend=instr(tagstart,thistemplate,rd)
iftagend>(tagstart+3)then
temptag=mid(thistemplate,tagstart+4,tagend-(tagstart+4))
if(trim(temptag)=tagname)or(temptag=tagname)then
ifIsNull(userstring)then
thistemplate=replace(thistemplate,ld&temptag&rd,"")
else
thistemplate=replace(thistemplate,ld&temptag&rd,userstring)
endif
exitdo
else
tagstart=tagstart+4
endif
endif
endif
loop
endproperty
publicsubremoveTags()
dimld,rdasstring
dimtemptagasstring
dimtagstart,tagendasinteger
ld="<!--"
rd="-->"
tagstart=1
dowhiletagstart>0andtagstart<len(thistemplate)
tagstart=instr(tagstart,thistemplate,ld)
iftagstart>0then
tagend=instr(tagstart,thistemplate,rd)
iftagend>(tagstart+3)then
temptag=mid(thistemplate,tagstart+4,tagend-(tagstart+4))
thistemplate=replace(thistemplate,ld&temptag&rd,"")
tagstart=tagend
endif
endif
loop
endsub
Thispropertyallowstheusertoassignthecurrenttemplate
publicpropertyletthistemplate(template_as_string)
ifvartype(template_as_string)=vbstring_
orvartype(template_as_string)=vbnullthen
mytemplate=template_as_string
endif
endproperty
</p>对用户来说可预见费用、节约费用,可以做到花少钱办大事。由于省去了购买软件和硬件等的前期费用,用户可以租用较高级的应用软件。ASP的收费是根据软件的类型、客制化程度、用户数量、服务期限来定的,对客户来说这笔费用是可以预见的。方便于客户应用软件的升级。 |
|