返回列表 回复 发帖

ASP 十 步 进 阶

ASP 十 步 进 阶

ASP 与 HTML 相 比 的 优 点
ASP 与HTML 相 比, 其 最 大 的 优 势 在 于 三 个 方 面:
在 创 建 动 态、 交 互 式 站 点 方 面,ASP 功 能 强 大、 处 理 方 式 灵 活;
由 于ASP 脚 本 语 言 是 由 服 务 器 端 来 解 释 和 运 行, 动 态 生 成 普 通 的HTML 页 面, 然 后 再 传 送 到 客 户 端 供 浏 览, 因 而 对 客 户 端 浏 览 器 要 求 相 对 较 低, 并 不 要 求 其 必 须 支 持 特 定 的 某 些 脚 本 语 言 如JavaScript、JScript、VBScript、Perl 等 等;
由 于 传 送 到 客 户 端 的 只 是 解 释 后 的HTML 页 面, 因 而 有 效 地 保 护 了 页 面 开 发 者 的 知 识 产 权。
 
建 立 自 己 的 简 单ASP 页 面
所谓ASP页面就是在普通的HTML页面文件中插入一些特殊的脚本语言并以扩展名asp保存后的页面,所以 可以很容易地建立一个自己的简单ASP页面,体会一下ASP的入门感觉,同时获得成功的快感以便保持继学 习下去的兴趣。
首 先 来 学 习 一 下ASP 脚 本 语 言 的 简 单 语 法。 最 基 本 的 是, 在 与HTML 语 言 混 合 使 用 时ASP 语 句 是 以"< %" 为 开 始, 以" %>" 为 结 束 的, 而 且 必 须 成 对 出 现。 另 外, 由 于ASP 默 认 的 脚 本 语 言 是VBScript( 设 置 其 他 脚 本 语 言 稍 后 再 谈), 你 还 应 该 熟 悉VBScript 的 基 本 语 法。 有 了 这 些, 建 立 一 个 简 单 的ASP 页 面 应 该 是 没 有 问 题 了。
看 看 下 面 的 一 个 页 面 文 件( test1.asp ):
< % rem test1.asp % >
< html >
< head >
< title > 一 个 简 单 的ASP 页 面< /title >
< /head >
< body >
< p >
< h1 > 下 面 应 出 现4 行 语 句,
字 体 大 小 从4 到7< /h1 >
< % for i = 4 to 7 % >
< br >< font size = < % =i % >>
这 行 语 句 的 字 体 大 小 为
< % =i % >< /font >
< % next % >
< /p >
< /body >
< /html >
其 中, 语 句 < % =i %> 是 将 变 量 i 的 值 输 出 到HTML 文 件 中。ASP 用"< %= 变 量 名 %>" 将 指 定 变 量 的 内 容 输 出 到 其 生 成 的HTML 页 面 中。
由 上 可 见, 可 以 先 制 作 一 个 普 通 的HTML 页 面 文 件, 然 后 在 需 要 的 地 方 插 入ASP 脚 本 语 言 即 可。 关 键 是 熟 练 应 用ASP 脚 本 语 句。
这 个 页 面 虽 然 简 单, 却 可 以 帮 助 熟 悉 和 理 解ASP 语 法。 可 以 用 浏 览 器 查 看 运 行 效 果, 再 用 查 看 源 代 码 的 功 能 看 一 下 源 代 码, 可 以 看 对ASP 页 面 解 释 后 的HTML 文 件。 注 意 必 须 用http 的 方 式 访 问ASP 页 面, 不 能 像HTML 页 面 文 件 那 样 双 击 文 件 名 以 文 件 方 式 浏 览。
利用Request对象制作简单的交互页面
ASP 的 内 建 对 象Request 中 包 含 了 访 问 者 的 一 些 申 请 信 息。 可 以 将 这 些 信 息 作 为 某 些 应 用( 如 商 业 订 单 信 息) 对 申 请 者 的 申 请 要 求 作 出 反 馈。
在 我 们 的 这 个 例 子 中, 读 者 会 员 资 格 注 册 申 请 页 面 要 求 申 请 者 填 写 其 姓 名 全 称、 身 份 证 号 码、Email 地 址, 在 收 到 读 者 申 请 后 通 知 其 注 册 成 功。
先 制 作 一 个 读 者 会 员 资 格 注 册 申 请 的 页 面, 可 以 是HTML 页 面 或ASP 页 面, 这 应 该 不 成 问 题。
< ! - - apply.htm - - >
< html >
< head >
< title > 读 者 会 员 资 格 注 册 申 请< /title >
< /head >
< body >
< H2 > 读 者 会 员 资 格 注 册 申 请< /H2 >
< form method="post" action="result.asp" >
< p >
姓 名 全 称:
< input name="FullName" SIZE="20" value=" 姓 名 全 称" >
< p >
身 份 证 号 码:
< input name="UniversalID" SIZE="15"
value="888888888888888" >
< p >
电 子 邮 箱:
< input name="Email" value=mailbox@yourcompany.com >
< p >< input type=submit value=" 提 交 申 请" >
< input type=reset value=" 重 新 填 写" >
< /form >
< /body >
< /html >
在 申 请 页 面 中, 所 有 的 申 请 数 据 均 填 写 在Form 元 素 中, 并 且 在Form 的Action 中 指 定 处 理 申 请 的 页 面 为result.asp。 当 收 到 申 请 时, 对 应 项 目 的 数 据 可 以 由Request.Form(" 项 目 名 称") 来 获 得, 其 中" 项 目 名 称" 为Form 元 素 的 名 称, 如" 姓 名 全 称" 对 应"FullName" ," 身 份 证 号 码" 对 应"UniversalID"。 现 在 利 用 这 些 信 息 来 制 作 一 个 注 册 成 功 的 通 知 页 面Result.asp。
< % rem result.asp % >
< html >
< head >
< title > 读 者 会 员 资 格 注 册 申 请 成 功< /title >
< /head >
< body >
< p align="center" >< H2 >< font color="green" >
读 者 会 员 资 格 注 册 申 请 成 功< /font >< /H2 >
 < p > 亲 爱 的< %=Request.Form("FullName") % >
读 者:< br >
我 们 已 经 收 到 你 的 申 请, 并 接 受 你 的 申 请,
你 已 经 成 为 我 部 正 式 读 者 会 员。< br >
你 的 读 者 号 为CN< %=Request.Form("UniversalID") % > .
我 们 将 通 过 你 的 电 子 信 箱
< %=Request.Form("Email") % >< br >
来 正 式 通 知 你, 此 后 我 部 举 行 读 者 沙 龙 活 动 的
时 间 和 地 点 也 将 通 过 该 信 箱 通 知 你。
< /body >
< /html >
现 在 用 浏 览 器 打 开 申 请 页 面, 填 入 对 应 数 据 后 提 交 申 请, 查 看 反 馈 效 果, 再 用 浏 览 器 的 查 看 源 代 码 的 功 能 看 一 下 源 代 码, 可 以 看 对ASP 页 面 解 释 后 的HTML 文 件。
通过内建对象Request获取用户申请信息
可 以 从 ASP 的 内 建 对 象 Request 获 取 用 户 通 过HTTP 传 送 过 来 的 申 请 信 息, 如 客 户 认 证、Cookies 数 据、Post 信 息、 查 询 参 数、 服 务 器 环 境 信 息 等。 这 些 可 以 分 别 从 对 象 Request 的 集 合 属 性ClientCertificate、Cookies、Form、
QueryString、ServerVariables 中 获 取, 获 取 方 式 为 Request.CollectionName( ItemString ), 其 中CollectionName 为 集 合 属 性 名 称 即ClientCertificate、
Form、QueryString、ServerVariables 中 的 一 个,ItemString 为 要 获 取 的 项 目 的 名 称。 如 果 可 以 确 定 没 有 重 复 的 项 目 名 称, 也 可 以 直 接 以Request( ItemString ) 来 获 取 用 户 信 息, 而 不 用 指 明 集 合 属 性 名 称。 例 如 请 求 页 面 中 有 一 个Form 元 素CustomerID, 且 没 有 其 他 元 素 名 称 为CustomerID, 则 用Request.Form( "CustomerID" ) 与 用Request.("CustomerID" ) 具 有 同 样 的 效 果。
1. 用Request.Form 获 取 表 格 信 息
ASP 页 面 可 以 从 一 个HTML 中 获 取 表 格 信 息, 只 要 将 该 表 格 的Action 指 定 为 对 应 的ASP 页 面 即 可。 可 以 参 见 前 面 列 举 的 读 者 会 员 资 格 申 请 的 例 子, 在 该 例 子 中,result.asp 从 一 个HTML 中 获 取 表 格 信 息 并 提 供 反 馈 信 息。
2. 用Request.QueryString 获 取 用 户 查 询 参 数 信 息
当 用 户 以 xxxxx.asp?Paraname = ParaValue 的 方 式 发 出 查 询 请 求 时,xxxxx.asp 可 以 从Request. Query String("araname") 中 获 取 用 户 提 交 的 查 询 参 数Paraname 的 信 息ParaValue, 还 可 以 从Request. QueryString("araname").count 中 得 知 同 一 个 参 数 被 赋 值 的 次 数 并 进 行 相 应 的 处 理。
当 用 户 以 query.asp?CustomerID=7777 的 方 式 发 出 查 询 请 求 时,query.asp 可 以 从Request.QueryString("CustomerID") 中 取 得 查 询 参 数 CustomerID 的 值 为 7777,Request.QueryString("araname").count 为 1。
当 用 户 以 query.asp?CustomerID=7777 &Password=DogIsDog 的 方 式 发 出 查 询 请 求 时,query.asp 可 以 从Request.QueryString
("CustomerID") 中 取 得 查 询 参 数 CustomerID 的 值 为7777, 从Request.QueryString("Password")中
取 得 查 询 参 数 Password 的 值 为 DogIsDog ,Request.QueryString("CustomerID").count 为 1,Request.QueryString
("Password").count 为 1。
3.用Request.ServerVariables获取服务器环境信息
Request.ServerVariables 包 含 了 请 求HTTP 服 务 的 服 务 器 的 环 境 变 量 信 息。 由 于 应 用 较 少, 现 列 出 常 用 的 两 个:
Request.ServerVariables( "SERVER_PORT" ) : HTTP 服 务 端 口 号, 一 般 为 80;
Request.ServerVariables( "HTTP_ACCEPT_ LanGUAGE" ) : 服 务 器 采 用 的 语 言,"en" 表 示 英 文,"zh cn" 表 示 简 体 中 文。
4. 用Request.Cookies 获 取 用 户 的Cookies 信 息
Cookies 可 以 在 服 务 器 和 客 户 端 之 间 双 向 传 递, 它 记 录 了 特 定 用 户 的 某 些 信 息。 利 用Request. Cookies 可 以 获 取 用 户 的Cookies 信 息。
例 如 请 求 用 户 的Cookies 为 Product=Floppy, 则Request.Cookies("Product") 的 值 为"Floppy"。
通过内建对象Response向用户发送信息
可 以 利 用 ASP 的 内 建 对 象 Response 很 灵 活 地 控 制 向 客 户 端 发 送 信 息 的 内 容 和 方 式。 例 如 可 以 自 动 转 向 另 一 个URL 页 面, 可 以 改 变 页 面 脚 本 的 解 释 方 法, 可 以 设 置 客 户 的Cookie 等 等。
1. 利用Response.Write控制发送的信息内容
方 法 Response.Write 可 以 向 发 往 客 户 端 浏 览 器 的HTML 文 件 中 直 接 输 出 内 容。 这 一 点 与 利 用 主 脚 本 的< % = 变 量 名 %> 功 能 基 本 相 同, 但Response.Write 的 使 用 更 为 灵 活, 这 体 现 在 它 作 为 一 个 方 法 函 数, 可 以 在 非 主 要 脚 本 的 函 数 中 直 接 使 用, 即 可 以 出 现 在 之 间 向 客 户 输 出 内 容, 这 一 点 是< % = 变 量 名 %> 无 法 做 到 的。
在 下 面 的 例 子 中,selecolr.asp 要 求 用 户 输 入 一 个 颜 色 名 称, 用 户 确 认 后 将 用 户 申 请 发 往 同 一 个 页 面selecolr.asp, 然 后 用 用 户 指 定 的 颜 色 将 颜 色 名 称 显 示 出 来。
< % rem selecolr.asp % >
< html >
< head >
< title > 选 择 颜 色< /title >
< /head >
< body >
< %
if isEmpty( Request.Form( "ColorName" ) ) then
Response.write "< H4 > 你 只 需 选 择 颜 色 名 称,
我 来 显 示< /H4 >"
else
Response.write "< H2 > 你 选 择 的 颜 色 是
< font color =" &Request.Form( "ColorName" ) &" >
" &Request.Form( "ColorName" ) &"< /font >< /H2 >"
end if
% >
< form method="post" action="selecolr.asp" >
< p >
颜 色 名 称: < input name="ColorName" value="black" >
< p >< input type=submit value=" 显 示 吧" >
< input type=reset value=" 想 重 选" >
< /form >
< /body >
< /html >
2.利用Response.redirect进行URL页面重新定位
假 如 由 于 业 务 上 的 原 因, 你 的 站 点 的 域 名 或IP 地 址 发 生 了 变 化, 老 顾 客 在 用 原 来 的 域 名 访 问 时, 可 以 用 Response.redirect 直 接 将 其 引 导 到 新 的 站 点 上 去。 另 外, 假 如 要 求 用 户 在 访 问 某 页 面 前 必 须 先 访 问 另 外 一 个 页 面, 也 可 用 Response.redirect 直 接 将 其 引 导 到 应 该 去 的 页 面 上 去, 而 不 是 发 出 用 户 无 权 访 问 该 页 面 的 信 息。
值 得 注 意 的 是, 必 须 在 向 客 户 端 发 送 任 何 信 息 之 前 使 用 redirect, 否 则 会 引 起 错 误。
在 下 面 的 例 子 中, 如 果 用 户 调 用 本 页 面, 则 将 其 引 导 到 另 一 个 页 面 selecolr.asp。
< % rem redirect.asp % >
< %Response.redirect "selecolr.asp" % >
< html >
< head >
< title > 重 新 定 向< /title >
< /head >
< body >
< p > 你 不 可 能 进 入 到 本 页 面,
否 则 就 是 我 的 失 败。
< /body >
< /html >
3.利用Response.ContentType页面内容解释方法
在HTML 页 面 代 码 中, 经 常 会 看 见 下 面 一 个 句 子:
它 用 于 指 定HTML 页 面 被 浏 览 器 解 释 的 方 式。 当 content="text/html" 时, 浏 览 器 将 代 码 解 释 为 普 通HTML 页 面 并 显 示 给 用 户; 当 content="text/plain" 时, 浏 览 器 将 代 码 不 加 任 何 解 释 地 显 示 给 用 户。 当 未 指 定 时,ContentType 默 认 为 "text/html"。
在ASP 页 面 中,Response.ContentType 的 作 用 与 普 通HTML 相 同, 只 不 过 它 针 对 的 对 象 是 客 户 端 浏 览 器 而 不 是 用 户。
4.利用Response.Cookies设置客户端Cookies
通 过 设 置Response.Cookies 可 以 增 加 或 修 改 客 户 端 的Cookies, 其 设 置 方 法 与 取 得 对 应Cookie 值 的 方 法 相 同。
在 下 面 的 例 子 中,cookie.asp 用 来 设 置 一 个 名 称 为 wfj 的Cookie 的 值, 调 用 时 将 显 示 上 次 设 置 的Cookie(wfj) 的 值。 由 于 设 置Cookie 值 要 在 发 送 内 容 之 前, 所 以 这 里 将Response.Buffer 设 置 为 true( 其 原 因 见 后 面 Response.Buffer 的 说 明 )。
< %rem cookie.asp % >
< %Response.Buffer = true % >
< html >
< head >
< title >Cookie 设 置< /title >
< /head >
< body >
< %
Response.Write "< p > 原 来 的Cookie(wfj) =
" &Request.Cookies( "wfj" )
if not isEmpty( Request.Form( "CookieValue" ) ) then
Response.Cookies("wfj") =
Request.Form( "CookieValue" )
Response.Write "< p >Cookie(wfj)
已 经 设 置 为 " &Request.Form( "CookieValue" )
Response.Write "< p >
下 次 调 用 时 你 会 看 到 的"
end if
Response.write "< p >< hr >
< H4 > 你 只 需 设 置Cookie,
我 来 显 示< /H4 >"
% >
< form method="post" action="cookie.asp" >
< p >
Cookie 设 置:
< input name="CookieValue" value="wangfajun" >
< p >< input type=submit value=" 设 置 吧" >
< input type=reset value=" 想 重 选" >
< /form >
< /body >
< /html >
5.利用Response.Buffer控制页面发送进度
Response.Buffer 的 默 认 值 为 False, 在 这 种 情 况 下, 服 务 器 在 处 理 对ASP 页 面 的 请 求 时, 采 用 边 处 理 边 发 送 反 馈 的 方 式, 即 在 处 理 完 一 部 分 脚 本 后 即 向 客 户 端 发 送 反 馈, 这 样 在 处 理 耗 时 较 长 的ASP 页 面 时, 用 户 不 用 等 待 很 长 时 间 就 可 以 得 到 反 馈, 在 用 户 浏 览 的 同 时 服 务 器 继 续 处 理 和 发 送 反 馈 信 息。 当Response.Buffer 为 True 时, 服 务 器 在 处 理 对ASP 页 面 的 请 求 时 使 用 缓 冲 技 术, 在 页 面 所 有 的 脚 本 处 理 结 束 后 才 将 处 理 结 果 传 送 给 客 户 端, 这 样 在 处 理 耗 时 较 长 的ASP 页 面 时, 用 户 需 要 等 待 较 长 的 时 间, 而 服 务 器 端 则 可 减 少 与 客 户 端 连 接 的 次 数 而 提 高 整 体 响 应 速 度, 并 可 以 在 满 足 某 种 条 件 时 撤 消 已 经 处 理 的 结 果 而 不 会 出 现 响 应 完 成 一 部 分 就 停 止 的 状 况。
多 种 脚 本 语 言 混 合 编 程
在 同 一 个ASP 页 面 中, 可 以 同 时 使 用 多 种 脚 本 语 言, 充 分 利 用 各 个 脚 本 语 言 的 功 能 优 势。 但 必 须 指 定 一 个 主 要 脚 本 语 言, 若 没 有 指 定 则 默 认 为 VBScript。 要 在 一 个ASP 页 面 中 指 定 其 他 脚 本 语 言 为 主 要 脚 本 语 言, 必 须 在 该 页 面 的 第 一 行 指 定, 方 法 如 下:
< %@ Language = LanguageName % >
例 如 要 将JScript 指 定 为 某 页 面 的 主 要 脚 本 语 言, 则 须 在 该 页 面 第 一 行 加 入:
< %@ Language = JScript % > 若 没 有 指 定, 则 相 当 于:
< %@ Language = VBScript % >
除 了 主 要 脚 本 语 言 外, 还 可 在 页 面 的 局 部 采 用 其 他 脚 本 语 言 来 实 现 特 定 的 功 能。 此 时 要 用< Script > 来 实 现, 具 体 方 法 如 下:
< Script Language = LanguageName RunAt = Server >
....
功 能 实 现 部 分
....
< /Script >
其 中,LanguageName 为 脚 本 语 言 名 称, 可 以 是VBScript、JScript、Perl 等 服 务 器 上 已 安 装 了 解 释 引 擎 的 脚 本 语 言;Runat = Server 指 定 该 段 脚 本 在 服 务 器 运 行, 以 区 别 在 客 户 端 浏 览 器 运 行, 因 为 默 认 是 在 客 户 端 浏 览 器 运 行, 所 以 该 设 置 不 能 省 略, 否 则 对 应 的 脚 本 将 发 送 到 客 户 端 让 浏 览 器 解 释 运 行。
在ASP 页 面 中, 一 般 每 种 脚 本 完 成 一 个 完 整 的 功 能, 然 后 用 主 要 脚 本 语 言 进 行 调 用, 调 用 方 法 为< %Call Function % >。
用< Script > 方 式 编 写 服 务 器 端 脚 本 时 应 注 意:
脚 本 语 句 必 须 作 为 某 个 函 数 的 一 部 分 出 现, 而 不 能 单 独 出 现 在 函 数 体 之 外;
不 能 使 用 输 出 语 句, 如< % = 变 量 名 % > 向 生 成 的HTML 页 面 输 出;
编 写 函 数 时 不 可 再 用< ! - - - - > 来 屏 蔽, 因 为 服 务 器 必 须 能 解 释 脚 本, 否 则 会 引 起 错 误。
多 种 脚 本 语 言 混 合 使 用 时 应 注 意, 要 使 用 某 种 脚 本 语 言, 必 须 首 先 在 服 务 器 上 安 装 对 应 的 脚 本 语 言 解 释 器。 在 ASP 中 已 经 内 置 了VBScript 和JScript 两 种 脚 本 语 言 解 释 器, 但 其 他 脚 本 语 言 则 必 须 安 装 后 才 能 使 用。
下 面 是 一 个VBScript 和JScript 两 种 脚 本 混 合 使 用 的 例 子。
< html >
< head >
< title > 用 户 账 号< /title >
< /head >
< Script Language = VBScript RunAt = Server >
Sub VBSQuery
for i = 1 to Request.QueryString("CustomerID").count
Response.Write "< p > 第" &i &" 个 用 户 账 号:
" &Request.QueryString("CustomerID")( i )
next
End Sub
< /Script >
< SCRIPT LanGUAGE=JScript RUNAT=Server >
function JSQuery()
{
var i;
for ( i =1; i < = Request.QueryString
("CustomerID").count; i + + )
Response.Write("< p > 第" + i + " 个 用 户 账 号:
" + Request.QueryString("CustomerID")( i ));
}
< /Script >
< body >
< H2 >VBScript : 您 指 定 的 客 户 账 号 如 下< /H2 >
< % Call VBSQuery % >
< H2 >JScript : 您 指 定 的 客 户 账 号 如 下< /H2 >
< % Call JSQuery % >
< H2 > 主 脚 本 : 您 指 定 的 客 户 账 号 如 下< /H2 >
< %for i = 1 to Request.QueryString("CustomerID").count % >
< p > 第< % = i % > 个 用 户 账 号:
< % = Request.QueryString("CustomerID")( i ) % >
< %next % >
< /body >
< /html >
 
服务器端脚本和客户端脚本混合编程
当 使 用< script >< /script > 编 写 一 段 脚 本 程 序 时, 如 果 没 有 指 定 Runat = Server, 则 认 为 其 中 的 脚 本 程 序 在 客 户 端 执 行, 此 时 可 以 在 程 序 中 混 合 使 用 服 务 器 端 主 要 脚 本 和 客 户 端 脚 本, 这 样 就 可 以 根 据 客 户 端 的 请 求 灵 活 地 控 制 客 户 端 脚 本 的 执 行, 使 对 客 户 的 反 馈 更 具 有 个 性 化。 在 混 合 使 用 时, 服 务 器 端 脚 本 要 以< % % > 的 形 式 嵌 入, 以 示 区 别。
增加注释
在 编 程 时 添 加 注 释 是 一 个 好 的 习 惯。ASP 允 许 在 页 面 代 码 中 添 加 注 释。 具 体 的 注 释 方 法 可 参 见 各 脚 本 语 言 的 规 则 规 定, 如VBScript 的 注 释 符 号 为 Rem 或 单 引 号" ' ",JScript 的 注 释 符 号 为 双 斜 杠"//"。 有 一 点 要 注 意, 就 是 在HTML 输 出 语 句 中 不 能 添 加 注 释, 如< p > 当 前 时 间 为< % =now ' 在HTML 输 出 当 前 时 间 % > 即 是 无 效 的。
利用Include来实现功能模块化
可 以 将 常 用 的 功 能 函 数 存 于 一 个ASP 文 件, 在 其 他ASP 页 中 要 用 到 其 中 的 功 能 时, 将 包 含 函 数 的ASP 文 件 包 含 在 调 用 函 数 的ASP 文 件 中, 这 时 可 使 用 Include 语 句。 具 体 语 法 为:
< ! - - #include file=" AspFileName " - - > 或< ! - - #include Virtual=" AspFileName " - - >。
使 用 时 应 该 注 意:
< ! - - include file > 用 于 被 包 含 的ASP 文 件 的 文 件 名 为 普 通 文 件 名, 其 中 文 件 所 在 的 目 录 为 实 际 目 录; 而< ! - - include virtual > 用 于 被 包 含 的ASP 文 件 的 文 件 名 为 虚 拟 文 件 名, 其 中 文 件 所 在 的 目 录 为 虚 拟 目 录。
被 包 含 文 件 的 文 件 名 称 不 能 使 用ASP 脚 本 变 量, 因 为 包 含 语 句 是 先 于 脚 本 语 句 被 解 释 和 执 行 的。 如 下 面 语 句 即 为 无 效 的:
   < % for i = 1 to 4
AspFileName = "\aspsamp\Asp" &i &".asp"
% >
< ! - - include file=AspFileName - - >
   < % next % >
应 避 免 自 包 含, 即 File1 包 含 File1。 在 多 个 文 件 中 有 包 含 语 句 时, 应 避 免 间 接 自 包 含 即 循 环 包 含, 如File1 包 含File2,File2 包 含File3,File3 包 含File1。
被 包 含 的 脚 本 语 言 的 类 型 必 须 是 默 认 语 言 类 型, 即 必 须 是 主 文 件< %@ language % > 语 句 中 指 定 的 脚 本 语 言 类 型, 被 包 含 文 件 中 不 能 使 用< %@ language % > 语 句。
可 以 使 用 " ../ " 来 表 示 相 对 路 径。 此 时 应 保 证 服 务 器 端 EnableParentPaths 设 置 为 1, 当 然 在Win98 上 无 法 设 置 了。
以 上 是 学 习 和 使 用ASP 创 建 动 态、 交 互 式 站 点 的 一 些 入 门 知 识, 有 了 这 些 基 础 知 识, 就 可 以 发 挥 以 前 自 己 积 累 的 编 程 经 验, 自 己 动 手 学 习 和 探 索 用ASP 创 建 动 态、 交 互 式 站 点 的 高 级 应 用 了。
返回列表