您当前的位置: 首页 > 网站编程 > ASP教程 > asp生成静态页主要涉及三个方面

asp生成静态页主要涉及三个方面

作者:guanchaofeng 来源:不详 发布时间: 2009-09-30 08:52 点击:
asp生成静态页主要涉及三个方面:模板,参数,fso. 1,模板:这个其实就是页面的框架,以下为模板的例子: ###############################这就是一个模板############################### !DOCTYPEhtmlPUBLIC-//W3C//DTDXHTML1.0Transitional//ENhttp://www.w3.or

asp生成静态页主要涉及三个方面

  asp生成静态页主要涉及三个方面:模板,参数,fso.
  
  1,模板:这个其实就是页面的框架,以下为模板的例子:
  
  ###############################这就是一个模板###############################
  
  <!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  
  <htmlxmlns="http://www.w3.org/1999/xhtml">
  
  <head>
  
  <metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>
  
  <title>$title$</title>
  
  <linkhref="/Blog/css/style1.css"rel="stylesheet"type="text/css"/>
  
  <metaname="description"content="$desc$"/>
  
  <metaname="keywords"content="$keywords$"/>
  
  </head>
  
  <body>
  
  <!--头部-->
  
  $top$////这些就是替换参数
  
  <!--头部结束-->
  
  <tableborder="0"cellpadding="0"cellspacing="0"width="760"style="margin-top:2px;">
  
  <tr>
  
  <tdwidth="160"valign="top"bgcolor="#eeeef2"style="border-right:1px#dddsolid">
  
  $web_i$////这些就是替换参数
  
  </td>
  
  <!--右侧专题介绍-->
  
  <tdvalign="top"bgcolor="#eeeef2"style="width:265px;height:20px;border-left:1px#fffsolid;border-right:1px#cccsolid">
  
  $pic$////这些就是替换参数
  
  </td>
  
  <tdvalign="top"style="border-left:1px#fffsolid"bgcolor="#eeeef2">
  
  $rec_text$////这些就是替换参数
  
  </td>
  
  </tr>
  
  </table>
  
  <!--专栏结束-->
  
  $b_ban$////这些就是替换参数
  
  <tableborder="0"cellpadding="0"cellspacing="0">
  
  <tr>
  
  <tdwidth="540"valign="top"style="border-right:1px#cccsolid">
  
  $c_list$////这些就是替换参数
  
  </td>
  
  <tdwidth="218"valign="top"style="border-left:1px#fffsolid"bgcolor="#eeeef2">
  
  $focus_text$////这些就是替换参数
  
  </td>
  
  </tr>
  
  </table>
  
  $link$////这些就是替换参数
  
  $bottom$////这些就是替换参数
  
  </body>
  
  </html>#########################结束##################
  
  我们在制作动态页面时,也是先做好静态框架,然后把动态内容放进去,而模板就是未放进动态内容的页面,而这些动态内容都被参数替换了,就像上面的模板中:$top$,$web_i$,$pic$,$rec_text$,$c_list$,$focu_text$,$link$,$bottom$,这些参数是自己定义,你可以写成任何形式,不过最好是用字符加字母,这些参数是原本要显示动态内容的地方.
  
  如果不用模板的话,那就需要在动态页面中制作了,比如top=top"要输出的内容"&vbcrlf--(&vbcrlf,就是让代码另起一行),这样做是比较麻烦的,因为原本的静态框架也要写在里面.
  
  如果是模板生成的话,当然这些模板都是要存入数据库的,首先要从数据库中取出模板:
  
  ##############取栏目页面模板####################
  
  setrs_m=server.createobject("adodb.recordset")
  
  sql="selectcontentfrommbwhereid=2"
  
  rs_m.opensql,conn,1,1
  
  main=rs_m("content")
  
  rs_m.close
  
  setrs_m=nothing
  
  然后就是逐个替换模板中的参数,例如以下;
  
  #####################原本的动态内容#############
  
  response.write"<divclass=""badv"">"
  
  setrs_b=server.CreateObject("adodb.recordset")
  
  sql="select*fromadd_bannerwherep_column='"&column&"'andisselect='y'andp_size='760*80'"
  
  rs_b.opensql,conn,1,1
  
  ifrs_b.eofandrs_b.bofthen
  
  response.write"<imgsrc="/Blog/"images/adv3.gif""width=""760""height=""80""/>"
  
  else
  
  response.write<imgsrc="""&rs_b("picture")&"""width=""760""height=""80""/>"
  
  endif
  
  response.write"</div>"&vbcrlf
  
  ######################生成静态页定义的动态内容############
  
  b_ban="<divclass=""badv"">"
  
  setrs_b=server.CreateObject("adodb.recordset")
  
  sql="select*fromadd_bannerwherep_column='"&column&"'andisselect='y'andp_size='760*80'"
  
  rs_b.opensql,conn,1,1
  
  ifrs_b.eofandrs_b.bofthen
  
  b_ban=b_ban&"<imgsrc="/Blog/"images/adv3.gif""width=""760""height=""80""/>"
  
  else
  
  b_ban=b_ban&"<imgsrc="""&rs_b("picture")&"""width=""760""height=""80""/>"
  
  endif
  
  b_ban=b_ban&"</div>"&vbcrlf
  
  ######################################
  
  从上面可以看出,原来的response.write被替换为b_ban=b_ban&,接下来就需要replace来替换模板中的参数了,我们把模板赋给了main,在模板中我们定义的参数为$b_ban$,那么加上下面的话:
  
  main=replace(main,"$b_ban$",b_ban),b_ban就是动态内容,b_ban是可以随便定义的,你也可以定义为ban,那么main=replace(main,"$b_ban",ban),这里字义为b_ban是为了更清晰些.
  
  其它的参数替换跟这个道理是一样的.当把模板中所有的参数都替换完以后,就需要fso来生成了.
  
  fso是iis内置的组件,所以只要安装了iss,就可以使用fso,它的定义格式如下:
  
  setfso(这个也是自己定义,在这里我把它定义为fso)=server.createobject("scripting.filesystemobject")//这样就定义了fso
  
  setfout=fso.createtextfile(server.mappath("index.htm"))//这里是定义fout在当前的服务器上生成名为index.htm(后缀也是自己定义的,可以是html,sthml等静态后辍)的文件,这个文件目前是空白.
  
  fout.writemain//写入静态页面的内容,这样index.htm页面就算是完全生成了,
  
  fout.close//关闭fout
  
  setfout=nothing//清空fout
  
  setfso=nothing//清空fso
  
  这样从模板生成的静态页面就完成了.
  
  如果不使用模板的话,那就不必使用replace而是直接使用fout.wirte.
  
  例如我们在这个页面有top,body,bottom三个参数,那就是
  
  setfso(这个也是自己定义,在这里我把它定义为fso)=server.createobject("scripting.filesystemobject")//这样就定义了fso
  
  setfout=fso.createtextfile(server.mappath("index.htm"))//这里是定义fout在当前的服务器上生成名为index.htm(后缀也是自己定义的,可以是html,sthml等静态后辍)的文件,这个文件目前是空白.
  
  fout.writetop//写入静态页面的内容
  
  fout.writebody//写入静态页面的内容
  
  fout.writebottom//写入静态页面的内容
  
  fout.close//关闭fout
  
  setfout=nothing//清空fout
  
  setfso=nothing//清空fso
  
  这样直接生成静态页面就完成了.

分享到:
本文"asp生成静态页主要涉及三个方面"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4