ASP 生成 HTML 静态页面 2009-06-01 14:06ASP 网站做了几个, 内容比较多的一直都用伪静态 HTML,这样只是达到了
搜索引擎方便抓取的效果,真正的并没有降低服务器负载。 ASP 生成 HTML 并不难,关键是要建立好模版,模版一般保存与数据库中,有的也支持存在 文件中。同样的在生成文件的命名,文件夹的建立。 1,文件夹的建立一般是当前年月命名,这就存在一个文件,如果文件夹存在则会报错,所 以需要判断文件夹是否存在: 代码: <% Set fso = Server.CreateObject("Scripting.FileSystemObject") if (fso.FolderExists(Server.MapPath(folder))) then '判断如果存在就不做处理 else '判断如果不存在则建立新文件夹 fso.CreateFolder(Server.MapPath(folder)) end if %> 2,文件名的生成,代码如下: <% function makefilename(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" end function %> 引用函数则: <%fname = makefilename(now())%> 3,要生成静态 HTML,则需先建立模版,现把模版代码存于数据库中,操作如下: 1) ,建立新数据库 asp2html.mdb
2) ,设计新数据库表 c_moban 字段 m_id(自动编号,主关键字) ;字段 m_html(备注类型) 。 并将下列完整的代码拷贝至 m_html 字段 代码:
$cntop{LogContent}lt;/td> |
$cnleft{LogContent}lt;/td> | $cnright{LogContent}lt;/td> |
4,
设计新闻信息表 设计新数据库表 c_news 字段 c_id:自动编号,主关键字 字段 c_title:文本类型,保存文章标题 字段 c_content:备注类型,保存文章内容 字段 c_filepath:文本类型,保持生成文件的路径地址 字段 c_time:日期/时间类型,默认值:Now() 5,功能函数页 lib.asp 代码如下: <% '生成文件名的函数 function makefilename(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 &; ".shtml" end function '保持数据格式不变的函数 function
HTMLEncode(fString) fString = replace(fString, ">", "&;gt;") fString = replace(fString, "<", "&;lt;") fString = Replace(
fString, CHR(32), "&;nbsp;") fString = Replace(fString, CHR(13), "") fString = Replace(fString, CHR(10) &; CHR(10), "
") fString = Replace(fString, CHR(10), "
") HTMLEncode = fString end function %> 6,数据库连接页 conn.asp 代码如下: <% set conn = Server.CreateObject("ADODB.Connection") connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&;Server.MapPath("asp2html.mdb") conn.Open connstr %> 7,信息输入表单 add.html 页代码:
8,数据提交处理页 addit.asp 代码如下: <%'容错处理 On Error Resume Next %> <%'接受传递值 c_title=request.form("c_title")
c_content=request.form("c_c