asp使用模板生成静态页面方法详解

作者:cnbruce 来源:蓝色理想 时间:2007-09-24 12:29:00 

 我希望大家看到该标题就能让想象到它的功能:

      1、WITH TEMPLET意思是,生成的页面架构将采用某个已设定的模板,在此之前我的一篇教程中介绍过,希望各位在看本教程之前对ASP采用模板应熟悉下。
  
    2、ASP转变为HTML。不要我再说ASP转变成HTML的好处了吧,其中最值得知道的就是:静态HTML页和动态页对服务器的要求承受能力小得多,同样,静态HTML搜索几率远比动态页面的多得多。
  
    那么,我现在需要处理的技术问题就是:
  
    1、如何实现模板技术?
  
    2、如何实现2HTML技术?
  
    3、如何让模板技术与2HTML技术结合?
 

一、先进行技术原理分析
  
    1、模板技术参看
  
    2、如何使得ASP页面转变为HTML?一般都会想到FSO组件,因为该组件能新建任何文件格式。
  
    那么其整个运行过程是怎么样的呢?
  
    a、提供信息输入页面进行信息收集;
  
    b、接受信息值先保存数据库,再FSO生成文件;
  
    c、技术性完成任务,显示刚被创建的HTML文件的路径地址。 该技术的实现过程中有如下几个难点:
  
    i、FSO生成的文件是直接放在一个大文件夹下,还是单独放在某个每日更新的子文件夹中?可能表述不准确,这样理解吧:相信通过FSO生成的文件随着时间的推移,文件会越来越多,管理也会越来越乱……通常你可能看到一些地址诸如 www.xxx.com/a/2004-5-20/200405201111.html 可以分析得出应该是建立了当前日期的文件夹。这样,一天就是一个文件夹的页面内容,查看管理也就显得比较合理。
  
    ii、我在试图通过以上方法建立文件夹的时候,又发现了第二个问题。第一次通过FSO建立以当前日期命名的文件夹,没有问题。当我有新的文件需要生成时,因为是同一个程序,所以,其又将会执行建立同样的文件夹。此时,FSO组件会发现该路径已存在……卡壳-_-! 继续处理,在首行添加代码:
On Error Resume Next

 达到自欺欺人、掩耳盗铃的效果。
  
    当然规矩的用法是判断文件夹的有无


<% 
  Set fso = Server.CreateObject("Scripting.FileSystemObject") 
  if (fso.FolderExists(Server.MapPath(folder))) then 
  ’判断如果存在就不做处理 
  else 
  ’判断如果不存在则建立新文件夹 
  fso.CreateFolder(Server.MapPath(folder)) 
  end if 
  %> 


 iii、文件夹是建立了,文件该如何建立呢?主要也就是文件名的生成。当然这个就需要自己来写个函数,功能就是如何生成文件名:


<% 
  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())%>

 


其实嘛,就是以年月日时分秒命名的文件。
  
    iv、最后,生成的文件该如何查看到?当然需要把生成文件的路径保存的数据库中,并且添加到相对应的记录集中了。当然,这在下面的数据库设计时会提及到。
  
    3、模板技术和2HTML技术的结合:将模板 * 殊代码的值替换为从表单接受过来的值,完成模板功能;将最终替换过的所有模板代码生成HTML文件。需要注意的是:替换应能将输入数据的格式或者支持UBB的代码彻底改变。 

标签:静态,模板
0
投稿

猜你喜欢

  • ASP程序代码执行时间统计类

    2007-10-15 12:45:00
  • 在HTML中,常见的URL有多种表示方式:

    2009-07-28 12:18:00
  • ASP小偷(远程数据获取)程序的入门教程

    2007-09-21 12:48:00
  • 网站设计配色方案教程

    2007-10-10 19:38:00
  • 在MySQL中获得更好的全文搜索结果

    2008-05-09 10:38:00
  • asp日期转换成汉字格式程序

    2008-07-08 18:19:00
  • 页面制作的重要性

    2007-10-30 13:14:00
  • 设计之外随谈

    2009-06-16 14:38:00
  • 再说淘宝的评价和信用机制

    2008-07-10 12:43:00
  • 谈谈设计师的发展

    2009-03-17 18:20:00
  • Microsoft JET Database Engine 错误 '80040e21' 所有记录中均未找到搜索关键字

    2009-08-30 13:07:00
  • 脆弱的用户体验

    2010-01-28 12:34:00
  • ASP中Request对象获取客户端数据的顺序

    2007-09-22 10:36:00
  • 教你快速掌握更改表中列顺序的好方法

    2008-11-27 17:14:00
  • 在ASP中连接使用数据库

    2007-09-22 10:46:00
  • SQL语句练习实例之三——平均销售等待时间

    2011-10-24 20:11:47
  • ASP(JScript)构建SQL语句“类”

    2008-04-30 07:12:00
  • VS 2010 Ultimate架构代码探索

    2010-05-02 20:38:00
  • ASP 调用dll及封装dll实例

    2011-03-17 10:47:00
  • suggest项目总结-用户体验篇

    2008-01-30 20:04:00
  • asp之家 网络编程 m.aspxhome.com