关于#i nclude的说明
我昨天在我们这里和一位朋友谈到路径时候使用了 include ,使我记起了以前谈论过关于这方面的事情,现在想将它重新写在这里供大家参考,希望能有更多的朋友也来讨论这个问题。
============================
include在网页制作中的使用既简单又灵活,它不但能减少页面的繁琐,也会使管理变得更有序和有效,许多朋友都在问是否能动态的使用include?在这里我再强调一下,
是绝对行不通的,要是使用
<%if xxx = "yyy" then%>
<%else%>
<%end if%>
这无形中会下载没有必要的档案,影响载入网页的速度。如何解决这个问题呢?我所知道的有以下方法:
<% 1) If xxx = "yyy" Then Server.Execute("file1.asp") Else Server.Execute("file2.asp") End If 2) If xxx = "yyy" Then Server.transfer("file1.asp") Else Server.transfer("file2.asp") End If 3) if xxx = "yyy" then filespec = "file2.asp" else filespec = "file2.asp" end if filespec = server.mapPath(filespec) scr = "scripting.fileSystemObject" set fs = server.createobject(scr) set f = fs.openTextFile(filespec) content = f.readall set f = nothing set fs = nothing response.write(content) %>
我要说明的就是,如果使用以上方法来实现include功能的时候,必须注意的地方。
我们可以将中被包含的网页file.asp看成是包含了file.asp的网页的有机组成部分,只是将本来属于该网页的内容以另一个档案形式保存罢了,可以这样说他们本来就是一个网页,所以,被包含的网页file.asp继承了包含了file.asp的网页的所有的参数设定,包括Session 但是,其他的方法并非如此,在html语法部分可以和主网页共享,asp部分却是独立的,特别的Session在一般情况下是不能从主网页中传递到被包含的网页file.asp来,这点很重要,使用时要注意。