|
<% filename="test.htm" if request("body")<>"" then set fso = Server.CreateObject("Scripting.FileSystemObject") set HTMLwrite = fso.CreateTextFile(server.mappath(""filename"")) htmlwrite.write "<html><head><title>" request.form("title") "</title></head>" htmlwrite.write "<body>输出Title内容: " request.form("title") "<br /> 输出Body内容:" request.form("body") "</body></html>" htmlwrite.close set fout=nothing set fso=nothing end if %> <form name="form" method="post" action=""> <input name="title" value="Title" size=26> <br> <textarea name="body">Body</textarea> <br> <br> <input type="submit" name="Submit" value="生成html"> </form>
2、但是按照上面的方法生成HTML文件非常不方便,第二种方法就是利用模板技术,将模板中特殊代码的值替换为从表单或是数据库字段中接受过来的值,完成模板功能;将最终替换过的所有模板代码生成HTML文件.这种技术采用得比较多,大部分的CMS都是使用这类方法.
template.htm ’ //模板文件 <HTML> <head> <title>$title$ by ASPid.cn</title> </head> <body> $body$ </body> </html>TestTemplate.asp ’// 生成Html <% Dim fso,htmlwrite Dim strTitle,strContent,strOut ’// 创建文件系统对象 Set fso=Server.CreateObject("Scripting.FileSystemObject") ’// 打开网页模板文件,读取模板内容 Set htmlwrite=fso.OpenTextFile(Server.MapPath("Template.htm")) strOut=f.ReadAll htmlwrite.close
strTitle="生成的网页标题" strContent="生成的网页内容"
’// 用真实内容替换模板中的标记 strOut=Replace(strOut,"$title$",strTitle) strOut=Replace(strOut,"$body$",strContent)
’// 创建要生成的静态页 Set HTMLwrite=fso.CreateTextFile(Server.MapPath("test.htm"),true)
’// 写入网页内容 HTMLwrite.WriteLine strOut htmlwrite.close
Response.Write "生成静态页成功!"
’// 释放文件系统对象 set HTMLwrite=Nothing set fso=Nothing %> 没有相关教程
|