asp基础实用教程(DOC格式)-第1部分
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
目 录
一、关于ASP
二、ASP的新功能
三、创建ASP页
四、使用脚本语言
五、使用变量和常量
六、使用集合
七、ASP内建对象
八、向浏览器发送内容
九、包含文件
十、访问数据库
十一、调试ASP脚本
十二、维护ASP应用程序的安全
一、关于ASP
Active Server Pages(ASP)是服务器端脚本编写环境,使用它可以创建和运行动态、交互的Web服务器应用程序。使用ASP可以组合HTML页、脚本命令和ActiveX组件以创建交互的Web页和基于Web的功能强大的应用程序。ASP应用程序很容易开发和修改。
HTML编写人员
如果您是位HTML编写人员,您将发现ASP脚本提供了创建交互页的简便方法。如果您曾想从HTML表格中收集数据,或用顾客的姓名个人化HTML文件,或根据浏览器的不同使用不同的特性,您会发现ASP提供了一个出色的解决方案。以前,要想从HTML表格中收集数据,就不得不学习一门编程语言来创建一个CGI应用程序。现在,您只要将一些简单的指令嵌入到您的HTML文件中,就可以从表格中收集数据并进行分析。您再不必学习完整的编程语言或者单独编译程序来创建交互页。
随着不断掌握使用ASP和脚本语言的技巧,您可以创建更复杂的脚本。对于ASP,您可以便捷地使用ActiveX组件来执行复杂的任务,比如连接数据库以存储和检索信息。
对ASP脚本的逐步介绍,请参阅ASP教程。然后您可以再回到这些主题中了解关于编写ASP脚本的详细信息。
有经验的脚本编写人员
如果您已经掌握一门脚本语言,如 VBScript、JavaScript或PERL,而且您已经了解使用ASP的方法。只要安装了符合ActiveX脚本标准的相应脚本引擎,就可以在ASP页中使用任何一种脚本语言。ASP带有Microsoft Visual Basic Scripting Edition(VBScript)和Microsoft JScript的脚本引擎,这样您可以立即开始编辑脚本。PERL、REXX和Python 的ActiveX脚本引擎可以从第三方开发人员处获得。Web开发人员如果您已经掌握了一门编程语言,如Visual Basic,您将发现ASP是快速创建Web应用程序的一个非常灵活的方法。通过向HTML中添加脚本命令,您能够创建应用程序的HTML接口。通过创建自己的ActiveX组件,可以将应用程序中的商业逻辑封装到能够从脚本、其他组件或从其他程序中调用的模块。
使用ASP进行计算的Web可转化为有形的利益,它使Web供应商能够提供交互的商业应用而不仅仅是发布内容。例如,旅行社能够比公布航空时刻表做得更多;用ASP脚本可以让客户察看现有的航班、比较费用并预定座位。
包含在Windows NT Option pack中的Microsoft Transaction Server(MTS)可以降低在服务器上构造程序的复杂性和费用。MTS可以解决开发那些保密性强的、可分级的以及可靠的Web应用程序的复杂性问题。
Active Server Pages模型
浏览器从Web服务器上请求。asp文件时,ASP脚本开始运行。然后Web服务器调用ASP,ASP全面读取请求的文件,执行所有脚本命令,并将Web页传送给浏览器。
由于脚本在服务器上而不是在客户端运行,传送到浏览器上的Web页是在Web服务器上生成的。所以不必担心浏览器能否处理脚本:Web服务器已经完成了所有脚本的处理,并将标准的HTML传输到浏览器。由于只有脚本的结果返回到浏览器,所以服务器端脚本不易复制。用户看不到创建他们正在浏览的页的脚本命令。
二、ASP的新功能
ActiveServerPages在功能方面有所增强,更易于开发应用程序。
Microsoft脚本调试程序。您可以使用脚本调试程序调试。asp文件。请参阅调试ASP脚本。
事务性脚本。ASP页和页中使用的对象可以运行于事务环境之下。在页上的全部工作只有两种结果:提交或终止。事务可以保护应用程序免于因失败而导致数据丢失。请参阅创建事务性脚本。
管理工具。许多应用程序设置可在Internet服务管理器上进行,这是Internet Information Server和Personal Web Server(在WindowsNT Workstation上)的管理工具。请参阅配置ASP应用程序。
隔离ASP应用程序。您可以隔离ASP应用程序以便它们能在Web服务器上独立的内存空间内运行。万一某个应用程序失败时,可以保护其他应用程序和Web服务器。它也使您可以在不停止Web服务器的情况下,停止一个应用程序或从内存中卸载其组件。请参阅隔离应用程序。
文件上载。浏览器可以通过Posting Acceptor应用程序将文件上载到Web服务器。可以编写ASP脚本来发送带有从Posting Acceptor传来的信息的email,如每一个上载文件的位置和名称。请参阅Posting Accepter文档(在Microsoft Site Server Express的目录表中)。
新的ASP组件。ASP提供了新的基础组件。有关概述请参阅ActiveX组件。
应用程序根目录的改变。ASP应用程序的根目录在您的Web站点上可以是物理目录。以前,根目录必须映射为虚拟目录。现在可以用Internet服务管理器指示ASP应用程序的根目录。请参阅创建应用程序。必须将。asp文件置于应用程序树中,Web服务器才能检测文件的改变并且自动重装它们。
支持Internet Explorer4。0通道和Web预测。当ASP要发送包含通道定义命令的文件时,它会自动告诉Internet Explorer4。0。使用ASP很容易就能生成通道定义(。cdf)文件。
支持HTTP1。1协议。Internet Information Server和Personal Web Server支持HTTP1。1协议。在响应支持HTTP1。1的浏览器(例如Internet Explorer4。0)时,这一支持可使ASP利用新协议的高效率。例如,当向浏览器返回页的时候,ASP使用大块转换编码以提高网络效率。
三、创建ASP页
Active Server Pages(ASP)文件是以。asp为扩展名的文本文件,这个文本文件可以包括下列部分的任意组合:
文本
HTML标记
ASP脚本命令
创建。asp文件非常容易。如果要在HTML文件中添加脚本,只需将该文件的扩展名。htm或。html替换为。asp就可以了。要使。asp文件可用于Web用户,请将这个新文件保存在Web站点上的目录中(请确定启用了该目录的脚本和执行权限)。使用浏览器查看该文件时,可以看到ASP处理并返回了HTML页。现在可以在。asp文件中添加脚本命令了。
注意因为。asp文件需要额外的处理,请不要将所有的HTML页都转换为ASP页。应该只将包含脚本命令的文件转换为。asp文件。。asp和。htm文件可以放置在相同的目录中。
使用任何的文本编辑器都可以创建。asp文件。使用那些带有ASP增强支持的编辑器将更能提高效率,如Microsoft Visual InterDev。如果您从未使用过HTML,请考虑先使用Microsoft FrontPage。使用FrontPage创建文档和格式化文本就象使用文字处理工具一样简单。接下来还可以使用Insert Script命令在FrontPage创建的HTML页中加入简单的ASP命令。
加入Script命令
脚本是一系列的命令和指令。与HTML标签不同,script命令指示Web服务器执行操作,而HTML标签只是简单地格式化文本或读取图形、视频及音频文件。Script 命令可以在变量中存储用户名,在返回到浏览器的页中显示用户名或将用户名存储在数据库中。
脚本命令通过定界符与文本区别开来。定界符是字符或一串字符,它标志单元开始或结束。HTML使用定界符棗小于号()括入HTML标签。 ASP使用定界符 括入脚本命令。您可以在定界符中括入任何命令,只要这些命令对正在使用的脚本语言有效。下面的例子展示了包含脚本命令的简单的HTML页:
This page was last refreshed on 。
VBScript函数Now返回当前的日期和时间。Web服务器处理该页时,会使用当前的日期和时间替换并且将该页返回到浏览器:
This page was last refreshed on 8/1/97 2:20:00 PM。
定界符括入的命令被称为主脚本命令。这些命令被主脚本语言处理。在脚本定界符中使用的任何命令都必须对主脚本语言有效。默认情况下,主脚本语言是VBScript。要设置另一种语言。请参阅使用脚本语言。
如果您已经熟悉了客户端脚本编写(编写在浏览器上运行的脚本),请注意不要用HTML元素括入表达式。在编写服务器端脚本时,只用元素在主脚本语言外的其他语言中定义过程。关于详细信息,请参阅使用脚本语言。
合成HTML和脚本命令
在ASP定界符中可以包含任何在主脚本语言中合法的语句、表达式、过程或操作符。在 VBScript 和其他脚本语言中,语句是语法完整的单元,该单元表达某项活动、声明或定义。下面的条件语句 If。。。Then。。。Else 是一条常见的
VBScript语句。
= #12:00:00 AM# And Time 《 #12:00:00 PM# Then
Greeting = 〃Good Morning!〃
Else
Greeting = 〃Hello!〃
End If
%》
这条语句将值〃Good Morning!〃或值〃Hello!〃存储在变量greeting中。命令将当前的变量值发送到浏览器中。
这样,在(Web服务器所在时区的)正午12点前浏览该脚本的用户将看到:Good Morning!
在正午12点或以后浏览此脚本的用户将看到:Hello!
在语句的不同部分之间可以加入HTML文本。例如,下面的脚本在If。。。Then。。。Else语句中加入了HTML,产生了与上面脚本同样的结果:
= #12:00:00 AM# And Time 《 #12:00:00 PM# Then %》
Good Morning!
Hello!
如果条件为真,也就是说,如果时间为午夜、午夜以后或者中午以前,那么Web服务器将跟随条件(〃Good Morning〃)的HTML发送到浏览器;否则,将跟随Else的HTML(〃Hello〃)发送到浏览器。这种混合HTML和脚本命令的方式可以方便地将 If。。。Then。。。Else语句变换为几行HTML文本。如果要在Web
页上显示多处问候,前一个例子更为有用。只需要设置一次变量,就可以重复显示。
最好从脚本命令中将HTML文本返回到浏览器,而不用脚本命令散布HTML文本。要将文本返回到浏览器,请使用ASP的内建对象Response。下面的例子可以产生与前一个脚本同样的结果:
= #12:00:00 AM# And Time 《 #12:00:00 PM# Then
Response。Write 〃Good Morning!〃
Else
Response。Write 〃Hello!〃
End If
%》
Response。Write将跟随的文本发送到浏览器。要动态构造返回浏览器的文本,请在语句中使用Response。Write。例如,可能要构造包含一些变量值的字符串。
在使用组件和对象以及向浏览器传送内容中将了解到更多有关Response对象和一般对象的信息。现在,先了解将脚本命令插入到HTML页中的几种方法。
在ASP定界符中可以包含用默认主脚本语言编写的过程。详细信息,请参阅使用脚本语言。
如果正在使用JScript命令,可以插入花括号指示语句块直接进入ASP命令,而不用考虑它是否夹杂着HTML标签和文本。例如:
This is the text version of a page。
This is the multimedia version of a page。
使用ASP指令
ASP提供了您使用的脚本语言以外的指令。这是一些输出指令和处理指令。
ASP的输出指令显示表达式的值。这个输出指令等同于使用Response。Write显示信息。例如,输出表达式 将文字climbing(变量当前的值)传送到浏览器。
ASP处理指令 为ASP提供处理 。asp 文件所需的信息。例如,下面的指令将VBScript设为该页的主脚本语言:
处理指令必须出现在。asp文件的第一行。不要将处理指令放在包含#include语句的文件中。必须在at标记(@)和关键字之间加入一个空格。处理指令有下列关键字:
* LANGUAGE 关键字设置页的脚本语言;请参阅使用脚本语言。
* CODEPAGE 关键字设置页的代码页(字符编码);请参阅使用国际站点。
* LCID 关键字设置页的现场标识符;请参阅使用国际站点。
* TRANSACTION 关键字指定将在事务处理环境下运行的页;请参阅创建事务处理脚本。
* ENABLESESSIONSTATE 关键字指定ASP页是否使用会话状态;请参阅管理会话。
可以在单个指令中包含多个关键字;关键字/值对之间必须由空格分开。不要在等号(=)左右加入空格。下面的例子中设置了脚本语言和代码页:
在脚本中的空白字符
如果您的主脚本语言是VBScript或者JScript,ASP从指令中删除空白字符。使用其他脚本语言时,ASP保留空白字符,这样那些需要使用位置和缩进的语言,如Python就可以被正确解释了。空白字符包括空格、制表符、回车和换行符。
使用VBScript和JScript时,在打开定界符之后和关闭定界符之前使用空白字符更容易阅读命令。下面的命令都是合法的:
ASP将一个语句的关闭定界符与下一个语句的打开定界符之间的空白字符删除。要保留两个语句间的空白字符,比如在句子中显示变量值的时候,请使用HTML不间断空符( ;)。例如: