欢迎光临
我们一直在努力

包含其他文件,ASP中InClude的介绍

建站超值云服务器,限时71元/月

包含其他文件
    利用服务端的include命令可以很容易的在active server pages中包含其他文件。这种服务端include命令不需要在脚本中实现,它完全可以作为html代码的一部分。
<html>
<head><title>欢迎</title></head>
<body>
<!–#include virtual=“mybanner.inc” –>
欢迎进入!
</body>
</html>
在这个例子中。文件mybanner.inc将被插入到这个asp文件<body>标记下面,当这个asp文件执行时,在mybanner.inc中的html代码以及脚本也将在相应位置执行或出现。(其实和子程序差不多,只不过没有参数传递)
这种文件包含有两种途径,虚拟路径或者物理真实路径。下面是后者的示例:
<html>
<head><title>欢迎</title></head>
<body>
<!–#include file=“mybanner.inc” –>
欢迎进入!
</body>
</html>
    如果你使用file命令来指定物理路径,那么文件必须在当前目录或者子目录下面。本例子中,文件在当前目录下,这样限制就比较多,因此,一般你应当使用虚拟路径命令。
    这种文件包容对于任何拓展名都是有效的,一般来说,习惯上用.inc的后缀,但是只要你高兴 .asp、.htm、.html或者任何其他的后缀都是可以的。
    注:当你改变了包含的文件时,并不一定马上就看到效果,那是因为iis的缓存,iis在对正常文件变动的响应要迅捷于对包含文件变动的响应。
    在这种场合下,有两种方法处理,一方面是在internet service manager中重新启动一下server。或者,将包含其他文件的母文件也做一下改动,例如添加一个无意义的空格,那么iis就会意识到这种变动并且作出正确响应,不过,如果包含变动文件的母文件较多,显然这就成了耗时耗力的工作。
     在两种场合下一般需要包含其他文件,一种是有一些十分通用的常用程序段或者脚本,不需要每个asp文件都写一遍,那么完全可以在每个需要的asp文件中进行包含就行了(可省了不少劲儿:p)。
    另外一种是进行判断后根据条件重定向的场合,例如上面小节的例子,完全也可以利用include语句实现。例如看下面这段例子:
<%
if request.form(“username”)=“” then
%>
<!–#include virtual=“regester.asp”>
<%
response.end
end if
%>
<html>
<head><title>注册结果</title></head>
<body>
谢谢您、<%=request.form(“username”)%>的注册!
</body>
</html>
    这个例子说明它可以和response.redirect方法具有同样的作用,当用户没有填写姓名时,会被引导回注册主页,不过,由于这个语句的执行完全在服务端完成,因此基本上不存在浏览器的兼容性问题。
    还有很重要的一点必须注意的是,在iis中对include语句的执行是优先于脚本执行的,也就是说,如果把include语句放在脚本外面并等待脚本结果来传递参数那么将是行不通的。例如下面这个例子:
<%
if request.form(“username”)=“” then
  myinlcude=“register.asp”
else
  myinclude=“homepage.asp”
end if
%>
<!–#include virtual=“<%=myinclude%>“ –>
    这个脚本就是错误的,因为在iis中先执行include语句而后才是vb脚本的执行。这样,文件”<%=myinclude%>“自然找不到.

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 包含其他文件,ASP中InClude的介绍
分享到: 更多 (0)