ASP生成静态页面原理

    技术2022-05-11  68

         我们这里讨论下,新闻发布系统中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)