ASP生成静态页面原理

     我们这里讨论下,新闻发布系统中ASP动态生成HTML的机理:用模板生成,这可能只是动态生成HTML的技术之一。

    首先我们要有一个模板template.htm,它是一个普通的HTML页面,用来显示你要生成的新闻页面,其基本内容除了基本的框架,具体要替换的内容,比如新闻标题,新闻内容,新闻发布时间、发布人等可以用特殊字符替换,以便ASP程序可以分辨出该部分。这里我们用{newsTitle},{newsContent},{newsTime}等来代替。

    然后在新闻生成的时候,我们的程序如下:

  strTitle  =   trim (ChkString(Request.Form( " title " ), " save " ))       ' 获取新闻标题
   strContent  =   trim (ChkString(Request.Form( " content " ), " save " ))     ' 获取新闻内容

   
Set  fso  =   CreateObject ( " Scripting.FileSystemObject " )       ' 创建文件流对象
   .....   
   
Set  objStream  =  fso.OpenTextFile(folderPath  &   " newstemplate emplate.htm " )   ' 读入模板文件
   
   
while   not  objStream.AtEndOfStream
   newscontent
=  newscontent & objStream.ReadLine
   newscontent
= replace (newscontent, " {newstitle} " ,strTitle)         ' 替换标题
   newscontent = replace (newscontent, " {newscontent} " ,strContent)    ' 替换新闻内容
   ...
   
wend
   objStream.close
   htmlfilename
= DateToFilename( Now ())

   
Set  objHtml  =  fso.CreateTextFile(folderPath  &   " newshtml "   &  htmlfilename)   ' 生成以时间为名字的html文件
   objHtml.WriteLine newscontent
   objHtml.close
   
set  fso = nothing
   ....

     考虑到在生成新闻时的并发性,我们可以在以时间为名字的文件名后面添加一个随机数,写进数据库中新闻表的文件名字段。以后在前台显示的时候,就直接在特定目录下找到该文件了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值