ASP 教程.docx
《ASP 教程.docx》由会员分享,可在线阅读,更多相关《ASP 教程.docx(40页珍藏版)》请在冰豆网上搜索。
![ASP 教程.docx](https://file1.bdocx.com/fileroot1/2023-3/31/f269bddb-5446-4612-867e-28264982ea6b/f269bddb-5446-4612-867e-28264982ea6b1.gif)
ASP教程
ASP教程
∙NextPage
在我们的ASP教程中,您将学到ASP的相关知识,以及如何在服务器端执行脚本。
您会发现,ASP是一种生成动态交互性网页的强有力工具。
开始学习ASP!
ASP参考手册
在W3School,我们为您提供完整的ASP参考手册,其中包括内建对象和组件,以及它们的属性和方法。
ASP参考手册
ASP实例
通过实例来学习!
因为ASP脚本只能在服务器端执行,所以你无法在浏览器中查看ASP代码,你能看到的仅仅是由ASP输出的纯粹的HTML代码。
在W3School,每个实例均可显示出以往被隐藏的ASP代码。
这样,您就可以更容易理解它们的工作原理。
ASP实例
ASP测验
在W3School测试你的ASP技能!
开始ASP测验!
ASP简介
∙PreviousPage
∙NextPage
ASP文件可包含文本、HTML标签和脚本。
ASP文件中的脚本可在服务器上执行。
在学习之前,应具备的知识:
在继续学习之前,您需要对以下知识有基本的了解:
∙HTML/XHTML
∙诸如JavaScript或者VBScript的脚本语言
如果希望学习上面的项目,请在我们的首页访问这些教程。
ASP是什么?
∙ASP指ActiveServerPages(动态服务器页面)
∙ASP是运行于ISS之中的程序
∙IIS指InternetInformationServices(因特网信息服务)
∙IIS是Windows2000及Windows2003的免费组件
∙IIS同时也是WindowsNT4.0的可选组件
∙此可选组件可通过因特网下载
∙PWS的体积更小-不过拥有IIS的完整功能
∙PWS可在Windows95/98的安装CD中找到
ASP兼容性
∙ASP是微软公司推出的一种技术
∙运行IIS,需要WindowsNT4.0或更高的版本。
∙运行PWS,需要Windows95或者更高的版本。
∙ChiliASP是一种在非Windows操作系统上运行ASP的技术
∙InstantASP是另一种在非Windows操作系统上运行ASP的技术
ASP文件是什么?
∙ASP文件和HTML文件类似
∙ASP文件可包含文本、HTML、XML和脚本
∙ASP文件中的脚本可在服务器上执行。
∙ASP文件的扩展名是".asp"
ASP和HTML有何不同?
∙当浏览器请求某个HTML文件时,服务器会返回这个文件
∙而当浏览器请求某个ASP文件时,IIS将这个请求传递至ASP引擎。
ASP引擎会逐行地读取这个文件,并执行文件中的脚本。
最后,ASP文件将以纯HTML的形式返回到浏览器。
ASP能为你做什么?
∙动态地编辑、改变或者添加页面的任何内容
∙对由用户从HTML表单提交的查询或者数据作出响应
∙访问数据或者数据库,并向浏览器返回结果
∙为不同的用户定制网页,提高这些页面的可用性
∙用ASP替代CGI和Perl的优势在于它的简易性和速度
∙由于ASP代码无法从来浏览器端察看,ASP确保了站点的安全性。
∙优秀的ASP编程可将网络负载降至最低
重要事项:
由于ASP运行于服务器,那些显示ASP文件的浏览器无需支持脚本的运行!
在您的PC上运行ASP
∙PreviousPage
∙NextPage
如果没有一个外部的服务器,你可以在自己的PC上运行ASP。
要做点这一点,你就必须安装微软的PWS或者IIS。
如何在自己的PC上运行ASP
如果没有一个外部的服务器,你可以在自己的PC上运行ASP。
要做点这一点,你就必须安装微软的PWS(PersonalWebServer)或者IIS(InternetInformationServices)。
假如你希望很好地学习ASP的话,我们推荐你至少要使用Windows98的第二版。
如果有可能的,Windows2000或者更高的版本是最好的选择(包括WindowsXPProfessional、WindowsServer2003或者windowsvista操作系统)。
如何在Windows2000上安装IIS并运行ASP
1.开始按钮-设置-控制面板
2.在控制面板中选择添加/删除程序
3.在添加/删除程序中选择添加/删除Windows组件
4.在向导窗口中选中Internet信息服务,然后点击确定
5.Inetpub文件夹会在硬盘中被创建
6.打开Inetpub文件夹,找到名为wwwroot的文件夹
7.在wwwroot下创建一个新文件夹,比如"MyWeb"
8.使用文本编辑器编写几行ASP代码,将这个文件取名为"test1.asp"保存在"MyWeb"文件夹。
9.确保你的服务器正在运行-安装程序会在系统托盘创建一个IIS的图标。
点击这个图标,然后在出现的新窗口中按开始按钮。
10.打开浏览器,在地址栏键入"http:
//localhost/MyWeb/test1.asp",就可以看到你的第一个ASP页面了。
如何在WindowsXPProfessional上安装IIS并运行ASP
1.在CD-Rom驱动器中插入WindowsXPProfessionalCD-Rom
2.开始菜单,设置,控制面板
3.在控制面板选择添加/删除程序
4.在添加/删除程序中选择添加/删除Windows组件
5.在向导窗口中选中InternetInformationServices,然后点击确定
6.Inetpub文件夹会在硬盘中创建
7.打开Inetpub文件夹,找到名为wwwroot的文件夹
8.在wwwroot下创建一个新文件夹,比如"MyWeb"
9.使用文本编辑器编写几行ASP代码,将这个文件取名为"test1.asp"保存在"MyWeb"文件夹。
10.确保你的服务器正在运行,使用下面的方法确认它的运行状态:
进入控制面板,然后是管理工具,然后双击“IIS管理器”图标。
11.打开浏览器,在地址栏键入"http:
//localhost/MyWeb/test1.asp",就可以看到你的第一个ASP页面了。
提示:
WindowsXPHomeEdition无法运行ASP。
如何在WindowsServer2003上安装IIS并运行ASP
1.当你启动WindowsServer2003后,会看到服务器管理向导
2.如果向导没有显示,可以打开管理工具,然后选择“配置您的服务器向导”
3.出现提示后,点击下一步
4.随后会出现一个“预备步骤”的提示,点击下一步,随后系统自动搜索已在本机安装了的系统服务组件
5.在随后出现的服务器角色窗口中选择应用程序服务器,然后点击下一步
6.选中启用ASP.NET
7.随后向导会提示这个组件的大概安装过程,请点击下一步
8.现在,向导会请求Server2003CD。
请插入CD后继续运行向导。
9.最后,向导会提示“此服务器目前是一台应用程序服务器”。
10.点击完成后,你会发现“应用程序服务器”已在管理你的服务器角色窗口中出现
11.点击“管理此应用程序服务器”会打在应用程序服务器管理控制台(MMC)
12.展开Internet信息服务(IIS)管理器,然后展开你的服务器,然后是站点文件夹。
13.你会看到默认的网站,并且它的状态应该是运行中。
14.在Internet信息服务(IIS)管理器中点击“Web服务扩展”,你会看到ActiveServerPages是被禁止的。
15.选中ActiveServerPages,然后点击允许按钮,这样ASP就被激活了!
如何在老版本的Windows操作系统中运行ASP
如何在Windows95上安装PWS并运行ASP
Windows95不包含PWS!
!
要想在Windows95上运行ASP,就必须从微软的站点下载“WindowsNT4.0OptionPack”。
下载"WindowsNT4.0OptionPack"
如何在WindowsNT上安装PWS并运行ASP
WindowsNT同样不包含PWS!
!
要想在WindowsNT上运行ASP,就必须从微软的站点下载“WindowsNT4.0OptionPack”。
下载"WindowsNT4.0OptionPack"
如何在Windows98上安装PWS并运行ASP
1.打开Windows98CD上的Add-ons文件夹,找到PWS文件夹并运行其中的setup.exe文件。
2.安装程序会在硬盘创建一个Inetpub文件夹。
打开这个文件夹,找到wwwroot文件夹。
3.然后在wwwroot文件夹下面创建一个新的文件夹,比如"MyWeb"。
4.使用文本编辑器编写几行ASP代码,将这个文件取名为"test1.asp"保存在"MyWeb"文件夹。
5.确保你的服务器正在运行-安装程序会在系统托盘创建一个PWS的图标。
点击这个图标,然后在出现的新窗口中按开始按钮。
6.打开浏览器,在地址栏键入"http:
//localhost/MyWeb/test1.asp",就可以看到你的第一个ASP页面了。
如何在WindowsME上安装PWS并运行ASP
WindowsME同样不包含PWS!
!
阅读微软站点的信息
来自BillJames的安装方法。
ASP语法
∙PreviousPage
∙NextPage
在浏览器中通过查看源代码的方式是无法看到ASP源代码的,你只能看到由ASP文件输出的结果,而那些只是纯粹的HTML而已。
这是因为,在结果被送回浏览器前,脚本已经在服务器上执行了。
在我们的ASP教程中,每个例子都提供隐藏的ASP代码。
这样会使您更容易理解它们的工作原理。
实例:
用ASP写文本
如果使用ASP生成文本。
向文本添加HTML
如果同时生成HTML标签和纯文本。
基本的ASP语法规则
通常情况下,ASP文件包含着HTML标签,类似HTML文件。
不过,ASP文件也可包含服务器端脚本,这些脚本被<%和%>包围起来。
服务器脚本在服务器端执行,可包含合法的表达式、语句、或者运算符。
向浏览器写输出
response.write命令用来向浏览器写输出。
下面的例子向浏览器传送了一段文本:
"HelloWorld"。
<%
response.write("HelloWorld!
")
%>
还有一种response.write命令的简写方法。
下面的例子和上面的例子是等效的:
<%="HelloWorld!
"%>
VBScript
你可以在ASP中使用若干种脚本语言。
不过,默认的脚本语言是VBScript:
<%
response.write("HelloWorld!
")
%>
上面的例子向文档的body部分写入了文本"HelloWorld!
"。
JavaScript
如果需要使用JavaScript作为某个特定页面的默认脚本语言,就必须在页面的顶端插入一行语言设定:
<%@language="javascript"%>
<%
Response.Write("HelloWorld!
")
%>
注意:
与VBScript不同-JavaScript对大小写敏感。
所以你需要根据JavaScript的需要使用不同的大小写字母编写ASP代码。
其他的脚本语言
ASP与VBScript和JScript的配合是原生性的。
如果你需要使用其他语言编写脚本,比如PERL、REXX或者Python,那就必须安装相应的脚步引擎。
重要事项:
因为脚本在服务器端执行,所以显示ASP文件的浏览器根本无需支持脚本。
ASP变量
∙PreviousPage
∙NextPage
变量用于存储信息。
假如在子程序之外声明变量,那么这个变量可被ASP文件中的任何脚本改变。
假如在子程序中声明变量,那么当子程序每次执行时,它才会被创建和撤销
实例:
声明变量
变量用于存储信息。
本例演示如何声明变量,为变量赋值,并在程序中使用这个变量
声明数组
数组用于存储一系列相关的数据项目。
本例演示如何声明一个存储名字的数组。
循环生成HTML标题
如何循环生成6个不同的HTML标题。
使用Vbscript制作基于时间的问候语
本例将根据服务器时间向用户显示不同的消息。
使用JavaScript制作基于时间的问候语
本例同上,只是语法不同而已。
变量的生存期
在子程序外声明的变量可被ASP文件中的任何脚本访问和修改。
在子程序中声明的变量只有当子程序每次执行时才会被创建和撤销。
子程序外的脚本无法访问和修改该变量。
如需声明供多个ASP文件使用的变量,请将变量声明为session变量或者application变量。
Session变量
Session变量用于存储单一用户的信息,并且对一个应用程序中的所有页面均有效。
存储于session中的典型数据是名称、id或参数。
Application变量
Application变量同样对一个应用程序中的所有页面均有效。
Application变量用于存储一个特定的应用程序中所有用户的信息。
ASP子程序
∙PreviousPage
∙NextPage
在ASP中,你可通过VBScript和其他方式调用自程序。
实例:
调用使用VBScript的子程序
如何从ASP调用以VBScript编写的子程序。
调用使用JavaScript的子程序
如何从ASP调用以JavaScript编写的子程序。
调用使用VBScript和JavaScript的子程序
如何在一个ASP文件中调用以VBScript和JavaScript编写的子程序。
子程序
ASP源代码可包含子程序和函数:
<%
subvbproc(num1,num2)
response.write(num1*num2)
endsub
%>
Result:
<%callvbproc(3,4)%>
将<%@language="language"%>这一行写到标签的上面,就可以使用另外一种脚本语言来编写子程序或者函数:
<%@language="javascript"%>
<%
functionjsproc(num1,num2)
{
Response.Write(num1*num2)
}
%>
Result:
<%jsproc(3,4)%>
VBScript与JavaScript之间的差异
当从一个用VBScript编写的ASP文件中调用VBScript或者JavaScript子程序时,可以使用关键词"call",后面跟着子程序名称。
假如子程序需要参数,当使用关键词"call"时必须使用括号包围参数。
假如省略"call",参数则不必由括号包围。
假如子程序没有参数,那么括号则是可选项。
当从一个用JavaScript编写的ASP文件中调用VBScript或者JavaScript子程序时,必须在子程序名后使用括号。
ASP表单和用户输入
∙PreviousPage
∙NextPage
在ASP中,你可通过VBScript和其他方式调用自程序。
实例:
使用method="get"的表单
如何使用Request.QueryString命令与用户进行交互。
使用method="post"的表单
如何使用Request.Form命令与用户进行交互。
使用单选按钮的表单
如何使用Request.Form通过单选按钮与用户进行交互。
用户输入
Request对象可用于从表单取回用户信息。
表单实例:
FirstName:
LastName:
用户输入的信息可通过两种方式取回:
Request.QueryString或Request.Form。
Request.QueryString
Request.QueryString命令用于搜集使用method="get"的表单中的值。
使用GET方法从表单传送的信息对所有的用户都是可见的(出现在浏览器的地址栏),并且对所发送信息的量也有限制。
如果某用户在上面的表单实例中输入"Bill"和"Gates",发送至服务器的URL会类似这样:
假设ASP文件"simpleform.asp"包含下面的代码:
Welcome
<%
response.write(request.querystring("fname"))
response.write(""&request.querystring("lname"))
%>
浏览器将显示如下:
WelcomeBillGates
Request.Form
Request.Form命令用于搜集使用"post"方法的表单中的值。
使用POST方法从表单传送的信息对用户是不可见的,并且对所发送信息的量也没有限制。
如果某用户在上面的表单实例中输入"Bill"和"Gates",发送至服务器的URL会类似这样:
假设ASP文件"simpleform.asp"包含下面的代码:
Welcome
<%
response.write(request.form("fname"))
response.write(""&request.form("lname"))
%>
浏览器将显示如下:
WelcomeBillGates
表单验证
只要有可能,就应该对用户输入的数据进行验证(通过客户端的脚本)。
浏览器端的验证速度更快,并可以减少服务器的负载。
如果用户数据会输入到数据库中,那么你应该考虑使用服务器端的验证。
有一种在服务器端验证表单的好的方式,就是将(验证过的)表单传回(post)表单页面,而不是转至不同的页面。
用户随后就可以在同一个页面中得到错误的信息。
这样做的话,用户就更容易发现错误了。
ASPCookie
∙PreviousPage
∙NextPage
cookie常用来对用户进行识别。
实例:
Welcomecookie
如何创建欢迎cookie。
什么是Cookie?
cookie常用来对用户进行识别。
cookie是一种服务器留在用户电脑中的小文件。
每当同一台电脑通过浏览器请求页面时,这台电脑就会发送cookie。
通过ASP,您可以做到创建并取回cookie的值。
如何创建cookie?
"Response.Cookies"命令用于创建cookie。
注意:
Response.Cookies命令必须位于标签之前。
在下面的例子中,我们会创建一个名为"firstname"的cookie,并向其赋值"Alex":
<%
Response.Cookies("firstname")="Alex"
%>
向cookie分配属性也是可以的,比如设置cookie的过期时间:
<%
Response.Cookies("firstname")="Alex"
Response.Cookies("firstname").Expires=#May10,2002#
%>
如何取回cookie的值?
"Request.Cookies"命令用户取回cookie的值。
在下面的例子中,我们取回了名为"firstname"的cookie的值,并把值显示到了页面上:
<%
fname=Request.Cookies("firstname")
response.write("Firstname="&fname)
%>
输出:
Firstname=Alex
带有键的cookie
如果某个cookie包含一系列多重的值,我们就可以说cookie拥有键(Keys)。
在下面的例子中,我们会创建一个名为"user"的cookie集。
"user"cookie拥有包含用户信息的键:
<%
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Smith"
Response.Cookies("user")("country")="Norway"
Response.Cookies("user")("age")="25"
%>
读取所有的cookie
请阅读下面的代码:
<%
Response.Cookies("firstname")="Alex"
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Smith"
Response.Cookies("user")("country")="Norway"
Response.Cookies("user")("age")="25"
%>
假设您的服务器将所有的这些cookie传给了某个用户。
现在,我们需要读取这些cookie。
下面的例子向您展示如何做到这一点(请注意,下面的代码会使用HasKeys检查cookie是否拥有键):
<%
dimx,y
foreachxinRequest.Cookies
response.write("
")
ifRequest.Cookies(x).HasKeys