ASP学习文档.docx

上传人:b****6 文档编号:6424062 上传时间:2023-01-06 格式:DOCX 页数:76 大小:50.27KB
下载 相关 举报
ASP学习文档.docx_第1页
第1页 / 共76页
ASP学习文档.docx_第2页
第2页 / 共76页
ASP学习文档.docx_第3页
第3页 / 共76页
ASP学习文档.docx_第4页
第4页 / 共76页
ASP学习文档.docx_第5页
第5页 / 共76页
点击查看更多>>
下载资源
资源描述

ASP学习文档.docx

《ASP学习文档.docx》由会员分享,可在线阅读,更多相关《ASP学习文档.docx(76页珍藏版)》请在冰豆网上搜索。

ASP学习文档.docx

ASP学习文档

ASP简介

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

如果没有一个外部的服务器,你可以在自己的PC上运行ASP。

要做点这一点,你就必须安装微软的PWS或者IIS。

ASP语法

在浏览器中通过查看源代码的方式是无法看到ASP源代码的,你只能看到由ASP文件输出的结果,而那些只是纯粹的HTML而已。

这是因为,在结果被送回浏览器前,脚本已经在服务器上执行了。

在我们的ASP教程中,每个例子都提供隐藏的ASP代码。

这样会使您更容易理解它们的工作原理。

基本的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变量

变量用于存储信息。

假如在子程序之外声明变量,那么这个变量可被ASP文件中的任何脚本改变。

假如在子程序中声明变量,那么当子程序每次执行时,它才会被创建和撤销

实例:

声明变量

变量用于存储信息。

本例演示如何声明变量,为变量赋值,并在程序中使用这个变量

<%

dimname

name="DonaldDuck"

response.write("Mynameis:

"&name)

%>

声明数组

数组用于存储一系列相关的数据项目。

本例演示如何声明一个存储名字的数组。

<%

Dimfamname(5),i这句其实等价于数组famname(5)和变量i

famname(0)="JanEgil"

famname

(1)="Tove"

famname

(2)="Hege"

famname(3)="Stale"

famname(4)="KaiJim"

famname(5)="Borge"

Fori=0to5

response.write(famname(i)&"
")

Next

%>

循环生成HTML标题

如何循环生成6个不同的HTML标题。

<%

dimi声明变量i

fori=1to6

response.write("Header"&i&"")

next

%>

使用Vbscript制作基于时间的问候语

本例将根据服务器时间向用户显示不同的消息。

<%

dimh

h=hour(now())

response.write("

"&now())

response.write("(NorwegianTime)

")

Ifh<12then

response.write("GoodMorning!

")

else

response.write("Goodday!

")

endif

%>

使用JavaScript制作基于时间的问候语

本例同上,只是语法不同而已。

<%@language="javascript"%>

<%

vard=newDate()

varh=d.getHours()

Response.Write("

")

Response.Write(d+"(NorwegianTime)")

Response.Write("

")

if(h<12)

{

Response.Write("GoodMorning!

")

}

else

{

Response.Write("Goodday!

")

}

%>

变量的生存期

在子程序外声明的变量可被ASP文件中的任何脚本访问和修改。

在子程序中声明的变量只有当子程序每次执行时才会被创建和撤销。

子程序外的脚本无法访问和修改该变量。

如需声明供多个ASP文件使用的变量,请将变量声明为session变量或者application变量。

Session变量

Session变量用于存储单一用户的信息,并且对一个应用程序中的所有页面均有效。

存储于session中的典型数据是名称、id或参数。

Application变量

Application变量同样对一个应用程序中的所有页面均有效。

Application变量用于存储一个特定的应用程序中所有用户的信息。

ASP子程序

在ASP中,你可通过VBScript和其他方式调用自程序。

实例:

调用使用VBScript的子程序

如何从ASP调用以VBScript编写的子程序。

<%

subvbproc(num1,num2)

response.write(num1*num2)

endsub

%>

Youcancallaprocedurelikethis:

Result:

<%callvbproc(3,4)%>

Or,likethis:

Result:

<%vbproc3,4%>

调用使用JavaScript的子程序

如何从ASP调用以JavaScript编写的子程序。

<%@language="javascript"%>

<%

functionjsproc(num1,num2)

{

Response.Write(num1*num2)

}

%>

Result:

<%jsproc(3,4)%>

调用使用VBScript和JavaScript的子程序---?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

如何在一个ASP文件中调用以VBScript和JavaScript编写的子程序。

<%

subvbproc(num1,num2)

Response.Write(num1*num2)

endsub

%>

functionjsproc(num1,num2)

{

Response.Write(num1*num2)

}

Result:

<%callvbproc(3,4)%>

Result:

<%calljsproc(3,4)%>

子程序

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表单和用户输入

在ASP中,你可通过VBScript和其他方式调用自程序。

实例:

使用method="get"的表单

如何使用Request.QueryString命令与用户进行交互。

Yourname:

<%

dimfname

fname=Request.QueryString("fname")

Iffname<>""Then

Response.Write("Hello"&fname&"!


")

Response.Write("Howareyoutoday?

")

EndIf

%>

使用method="post"的表单

如何使用Request.Form命令与用户进行交互。

Yourname:

<%

dimfname

fname=Request.Form("fname")

Iffname<>""Then

Response.Write("Hello"&fname&"!


")

Response.Write("Howareyoutoday?

")

EndIf

%>

使用单选按钮的表单

如何使用Request.Form通过单选按钮与用户进行交互。

a.asp页面

Pleaseselectyoufavoritecar:

Volvo

Saab

BMW

b.asp页面

<%

dimcars

cars=Request.Form("cars")

%>

value="Volvo">Volvo


value="Saab">Saab


value="BMW">BMW


<%

ifcars<>""then

Response.Write("

Yourfavoritecaris:

"&cars&"

")

endif

%>

用户输入

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

cookie常用来对用户进行识别。

实例:

Welcomecookie

如何创建欢迎cookie。

<%

dimnumvisits

response.cookies("NumVisits").Expires=date+365

numvisits=request.cookies("NumVisits")

ifnumvisits=""then

response.cookies("NumVisits")=1

response.write("Welcome!

ThisisthefirsttimeyouarevisitingthisWebpage.")

else

response.cookies("NumVisits")=numvisits+1

response.write("Youhavevisitedthis")

response.write("Webpage"&numvisits)

ifnumvisits=1then

response.write"timebefore!

"

else

response.write"timesbefore!

"

endif

endif

%>

什么是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传给了某个

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 纺织轻工业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1