ASP生成静态页面的方法ASP教程ASP应用.docx
《ASP生成静态页面的方法ASP教程ASP应用.docx》由会员分享,可在线阅读,更多相关《ASP生成静态页面的方法ASP教程ASP应用.docx(12页珍藏版)》请在冰豆网上搜索。
ASP生成静态页面的方法ASP教程ASP应用
∙asp2htmlwithtemplet
我希望大家看到该标题就能让想象到他的功能:
1,withtemplet意思是,生成的页面架构将采用某个已设定的模板,在此之前我的一篇教程中介绍过,希望各位在看本教程之前对asp采用模板应熟悉下。
(当然,不看也没有问题,本教程同样会提及精华部分的:
)具体参考:
2,asp2html。
不要我再说asp转变成html的好处了吧,呵呵,其中最值得知道的就是:
静态html页和动态页对服务器的需求承受能力小得多,同样,静态html搜索几率远比动态页面的多得多。
那么,我目前需要处理的技术问题就是:
1,怎么实现模板技术?
(先参看下上篇文章吧)
2,怎么实现2html技术?
3,怎么让模板技术和2html技术结合?
一、先进行技术原理分析
1,模板技术参看
2,2html技术又该怎么实现呢?
怎么使得asp页面转变为html?
一般都会想到fso组件,因为该组件能新建所有文件格式。
那么其整个运行过程是怎么样的呢?
a,提供信息输入页面进行信息收集;
b,接受信息值先保存数据库,再fso生成文件;
c,技术性完成任务,显示刚被创建的html文件的路径地址。
该技术的实现过程中有如下几个难点:
i,fso生成的文件是直接放在一个大目录下,还是独立放在某个每日更新的子目录中?
可能表述不准确,这样理解吧:
相信通过fso生成的文件随着时间的推移,文件会越来越多,管理也会越来越乱……通常你可能看到一些地址诸如能分析得出应该是建立了当前日期的目录。
这样,一天就是个目录的页面内容,查看管理也就显得比较合理。
ii,我在试图通过以上方法建立目录的时候,又发现了第二个问题。
第一次通过fso建立以当前日期命名的目录,没有问题。
当我有新的文件需要生成时,因为是同一个程式,所以,其又将会执行建立同样的目录。
此时,fso组件会发现该路径已存在……卡壳-_-!
继续处理,在首行添加代码:
引用:
onerrorresumenext
嘿嘿,达到自欺欺人、掩耳盗铃的效果。
当然规矩的用法是判断目录的有无
引用:
<%
setfso=server.createobject("scripting.filesystemobject")
if(fso.folderexists(server.mappath(folder)))then
判断如果存在就不做处理
else
判断如果不存在则建立新目录
fso.createfolder(server.mappath(folder))
endif
%>
iii,目录是建立了,文件该怎么建立呢?
主要也就是文件名的生成。
当然这个就需要自己来写个函数,功能就是怎么生成文件名:
)
引用:
<%
functionmakefilename(fname)
fname=fname前fname为变量,后fname为函数参数引用
fname=replace(fname,"-","")
fname=replace(fname,"","")
fname=replace(fname,":
","")
fname=replace(fname,"pm","")
fname=replace(fname,"am","")
fname=replace(fname,"上午","")
fname=replace(fname,"下午","")
makefilename=fname&".html"
endfunction
%>
引用函数则:
<%fname=makefilename(now())%>
其实嘛,就是以年月日时分秒命名的文件。
iv,最后,生成的文件该怎么查看到?
当然需要把生成文件的路径保存的数据库中,并且添加到相对应的记录集中了。
当然,这在下面的数据库设计时会提及到。
3,模板技术和2html技术的结合:
将模板中特别代码的值替换为从表单接受过来的值,完成模板功能;将最终替换过的所有模板代码生成html文件。
需要注意的是:
替换应能将输入数据的格式或支持ubb的代码完全改动。
二,再进行数据库设计
目前数据库的设计需要两个表:
一个是存放模板数据的;一个是存放信息内容的。
1,建立新数据库asp2html.mdb
2,设计新数据库表c_moban
字段m_id(自动编号,主关键字);字段m_html(备注类型)。
并将下列完整的代码拷贝至m_html字段
引用:
|asp2htmltest
$cntop{logcontent}lt;/td>
$cnleft{logcontent}lt;/td>
$cnright{logcontent}lt;/td>