• 沒有找到結果。

第 1 章 ASP 基础知识

N/A
N/A
Protected

Academic year: 2021

Share "第 1 章 ASP 基础知识"

Copied!
14
0
0

加載中.... (立即查看全文)

全文

(1)

ASP 技术是基于服务器端的脚本运行环境,也是目前动态网页制作中的核心技术之一。

使用 ASP 可以组合 HTML 页、脚本命令和 ActiveX 组件创建和运行动态、交互的 Web 应用 程序。

l  ASP 的概念 l  ASP 环境配置 l  ASP 开发工具 l  ASP 基本语句 

1.1    ASP 概述 

ASP(Active  Server  Pages,动态服务器页面)是微软公司于 20 世纪 90 年代推出的基于  C/B/S(Client/Browser/Server,客户端—浏览器—服务器)模式的动态网页制作技术。开发者 可以使用 HTML 标记、服务器端脚本、内置对象和内置组件来处理表单和数据库,创建基于 服务器端的功能强大的、动态的、交互的 Web 应用程序。 

1.1.1    ASP 的产生背景

最初的 WWW 以提供信息资源为主,人们上网只能浏览信息资源。不论是谁,也不管何 时何地,HTML  页面一旦被请求就直接下载到本地浏览器上,显示的内容是相同的。不会因 为请求的不同而自动识别出应该发送哪一个页面,也不会响应用户的查询、更改等请求,俗称 静态网页,没有交互性,文件扩展名通常是.htm、.html、.shtm、.shtml。

当然也可以在 HTML 页面上加入 Java 小程序、闪烁文本、客户端脚本、客户端控件等,

使页面更加漂亮美观,并具有一定的人机交互功能,但这时的页面仍然是静态页面。

而随着人类对远程教育、电子商务、电子政务等新型网络业务的期盼,原有的 HTML 页 面无法解决这些新型网络业务中出现的一些技术问题,如注册、查询、更改等一些交互请求。

正是在这种背景下,动态网页制作技术应运而生,扩展了 HTML 功能,实现了远程交互、动 态存储等一些网上功能。

通过在静态网页中加入各种程序和逻辑控制,实现了客户端和服务器端之间的动态和个 性化的交流与互动,具备这种交流和互动的网页称为动态网页。

目前,动态网页制作技术主要有 ASP、ASP.NET、PHP 和 JSP 等。与其他动态网页制作

(2)

技术相比,ASP 技术具有操作简单、程序维护方便的特点。 

1.1.2    ASP 的技术含义

简单地说,ASP 是微软的 IIS(Internet Information Server,因特网信息服务)提供的一种 基于服务器的脚本运行环境,也可以称为一种解决方案,它包括 3 层含义:

(1)使用了微软的技术(ActiveX)编程开发的。

(2)运行在服务器端(Server),无须担心客户端浏览器是否支持 ASP 的编程语言。

(3)返回标准的 HTML 页面(Pages)。

脚本是指一段能够完成某些特殊功能的程序段。编写脚本的语言称为脚本语言,脚本语 言是介于 HTML 语言和 Visual Basic、Java 等高级语言之间的一种语言。它更接近高级语言,

但却比高级语言简单易学,当然也没有高级语言的功能那么强大。微软公司为 ASP 开发提供 了两种标准的脚本语言:VBScript 和 JavaScript,系统的默认脚本语言为 VBScript 语言。

由此可见,ASP  本身并不是什么程序设计语言,也不是什么开发工具、编辑软件,它只 是为嵌入 HTML 页面中的脚本提供了运行环境。 

1.1.3    ASP 的运行模式

动态网页与静态网页之间的主要区别在于: 动态网页含有服务器端脚本, 因而只能在 Web  服务器上运行,而静态网页因为不含服务器端脚本,无需 Web 服务器支持,只需要浏览器支 持即可运行。 

ASP 文件运行在服务器端,返回标准的 HTML 页面,运行机制如图 1­1 所示。 

客户机

客户机

处理 

请求

响应 服务器

图 1­1    ASP 的工作原理

(1)用户通过浏览器向 Web 服务器请求.asp 文件。

(2)Web 服务器接受请求,根据扩展名.asp 识别出 ASP 文件。

(3)Web 服务器将.asp 文件转给一个类似于发动引擎的动态链接库文件 ASP.dll。

(4)ASP.dll  将请求的文件从头到尾进行解释处理,并根据  ASP  文件的脚本命令生成相 应的 HTML 页面。

(5)HTML 页面被发送给客户端浏览器并显示。 

1.2    ASP 环境配置 

ASP 网页不能在客户端运行,必须在支持 ASP 的 Web 服务器上运行,需要相应的软硬件 网络环境。

考虑到系统的安全性、稳定性和普及性,推荐使用 Windows XP SP3+IIS 5.0+Access 2000

(3)

的配置,另外,选择一种编辑软件如 Dreamweaver 作为脚本编写的开发工具。需要注意的是, 

Windows  XP  HomeEdition 不支持 ASP,本书示例主要在 Windows  XP  Professional(建议使用  Windows XP Professional SP3)操作系统中开发,数据库管理系统软件选择 Access 2000。 

1.2.1    Web 服务器配置 

IIS 主要提供 FTP、WWW 和 SMTP 等服务,确切地说,IIS 使得 Internet 成为一个 WWW  的应用程序开发环境。一般情况下,Windows 操作系统默认安装是不安装 IIS 组件的(Server  版除外),需要另外自行安装。安装方法如下:

(1)选择“开始”→“控制面板”→“添加/删除程序”命令,打开如图 1­2 所示的“添 加或删除 Windows 程序”窗口。

(2)单击“添加/删除 Windows 组件”选项,弹出如图 1­3 所示的“Windows  组件向导”

对话框,从中选中“Internet 信息服务(IIS) ”复选项。

图 1­2  “添加或删除 Windows 程序”窗口 图 1­3  “Windows 组件向导”对话框

(3)单击“下一步”按钮,IIS 将自动安装,安装过程根据提示可能需要插入 Windows XP  Professional  光盘,直至完成。如果单击“详细信息”按钮则可以进入复选框,还可以进行精 确的子项选择。

安装后,计算机系统有两处明显变化:一处是系统盘符下会出现一个称为站点“主目录”

的特殊文件夹,一般是 C:\Inetpub\wwwroot;另一处是在“控制面板”的“管理工具”中增加 了一个“Internet 信息服务”组件图标。

(4)测试安装是否成功:在主目录 C:\Inetpub\wwwroot 下,新建一个文本文件,在其中 输入内容<%=now()%>,然后将文件名命名为 test.asp,最后打开浏览器,在“地址”栏中输入  URL 地址字符串 http://127.0.0.1/test.asp 或 http://localhost/test.asp,按回车键后,网页内容如返 回系统日期和时间即表示安装成功,运行结果如图 1­4 所示。

图 1­4  测试运行结果

(4)

1.2.2 设置主目录

一旦启动了 Web 服务,用户通过浏览器对 ASP 动态网页提出请求,Web 服务器就可以对 请求的 ASP 动态网页做出解释,将标准 HTML 格式网页响应给客户端浏览器本地用户。为了 实现这种响应,默认情况下,要求 ASP 文件必须保存在主目录\Inetpub\wwwroot 中。

如果希望 Web 服务器对其他文件夹中的 ASP 文件做出响应,则必须将该文件夹设置成主 目录或虚拟目录。设置主目录的方法如下:

(1)选择“开始”→“控制面板”→“管理工具”命令,打开如图 1­5 所示的“管理工 具”窗口。

(2)双击“Internet 信息服务”图标后,打开如图 1­6 所示的“Internet 信息服务”窗口。

展开左侧窗格中的列表直至出现“默认站点” 。

图 1­5  “管理工具”窗口 图 1­6  “Internet 信息服务”窗口

(3)右击“默认站点” ,在弹出的快捷菜单中选择“属性”选项,弹出如图 1­7 所示的“默 认网站 属性”对话框。单击“主目录”标签,可以看到“本地路径 C:\Inetpub\wwwroot” ,这 就是系统默认的主目录。

(4)单击“浏览”按钮,弹出如图 1­8 所示的“浏览文件夹”对话框,用户可以自行修 改主目录,如 D:\myweb,然后单击“确定”按钮。

图 1­7  “默认网站 属性”对话框 图 1­8  “浏览文件夹”对话框

(5)

将 test.asp 文件移动到 D:\myweb 下。打开 IE 浏览器,在“地址”栏中输入 URL 地址字 符串 http://127.0.0.1/test.asp 或 http://localhost/test.asp,按回车键后,运行结果如图 1­4 所示。 

1.2.3 创建虚拟目录

也可以通过设置虚拟目录的方法让 Web 服务器解释非主目录下的 ASP 文件,步骤如下:

(1)在“Internet 信息服务”窗口中右击“默认站点” ,在弹出的快捷菜单中选择“新建”

→“虚拟目录”选项(如图 1­9 所示),弹出如图 1­10 所示的“虚拟目录创建向导”对话框的 欢迎界面。

图 1­9  “Internet 信息服务”窗口 图 1­10  “虚拟目录创建向导”对话框的欢迎界面

(2)单击“下一步”按钮,进入如图 1­11 所示的界面,设置虚拟目录别名,本例为 MYASP。

(3)单击“下一步”按钮,进入如图 1­12 所示的界面,设置网站内容目录,如 D:\myweb。

图 1­11  “虚拟目录别名”界面 图 1­12  “网站内容目录”界面

(4)单击“下一步”按钮,进入如图 1­13 所示的界面,设置访问权限,不作调整。

(5)单击“下一步”按钮,进入如图 1­14 所示的界面,单击“完成”按钮。

将 test.asp 文件移动到 d:\myweb 下,在“地址”栏中输入 http://127.0.0.1\myasp\test.asp 后 按回车键,运行结果如图 1­15 所示。读者务必自行测试一下。

注意:http://127.0.0.1\myasp\test.asp 中的 myasp 只能是虚拟目录别名,不能写成文件夹名  myweb,否则会出错。

(6)

图 1­13  “访问权限”界面 图 1­14  “完成”界面

图 1­15  虚拟目录测试结果 

1.2.4    ASP 开发工具 

ASP  网页是以.asp  为扩展名的纯文本文件,可以用任何文本编辑器(如记事本)对  ASP  网页进行编辑,目前比较流行的开发工具有 Editplus、Dreamweaver、Visual Interdev Studio 等,

对于初学者建议使用 Dreamweaver 来快速地、 可视化地开发 ASP 文件。 从专业的角度看, Visual  Interdev Studio 比较适合开发大型网站。这里以 Dreamweaver 8 为例一起讨论 ASP 的集成开发 环境,不考虑设置虚拟目录的步骤如下:

(1)启动 Dreamweaver 后,选择“站点”→“管理站点”命令,弹出如图 1­16 所示的“管 理站点”对话框。

图 1­16  “管理站点”对话框

(2)单击“新建”按钮并选择“站点”选项后,弹出如图 1­17 所示的“站点定义”对话

(7)

框,进入“编辑文件”界面,设置站点命名为 myasp 和 HTTP 地址为 http://localhost,一定要 去掉结尾的/myasp。

图 1­17  “站点定义”对话框的“编辑文件”界面

(3)单击“下一步”按钮,进入如图 1­18 所示的对话框,继续“编辑文件” ,选择“是,

我想使用服务器技术” 单选项和 ASP VBScript 选项, 即服务器端使用的是 VBScript 脚本语言。

图 1­18  “站点定义”对话框“编辑文件”的第二个界面

(4)单击“下一步”按钮,进入如图 1­19 所示的界面,继续“编辑文件” ,选择“在本 地进行编辑和测试”单选项,并设置 ASP 文件存放位置为 D:\myweb。

图 1­19  “站点定义”对话框“编辑文件”的第三个界面

注意:IIS 的主目录设置一定要与这里的文件位置相一致,否则无法运行。有关主目录设 置可以参阅 1.2.2 节。

(5)单击“下一步”按钮,进入如图  1­20  所示的界面,即进入站点定义的“测试文 件”界面。

(8)

图 1­20  “站点定义”对话框的“测试文件”界面

(6)单击“测试”按钮,弹出如图 1­21 所示的对话框,即表示设置成功。

图 1­21  “测试成功”提示框

(7)单击“确定”按钮返回到“测试文件”界面,单击“下一步”按钮,进入如图 1­22  所示的界面,即进入站点定义的“共享文件”界面,选择“否”单选项。

图 1­22  “共享文件”界面

(8)单击“下一步”按钮,然后单击“完成”按钮,返回到如图 1­16 所示的对话框,再 单击“完成”按钮。 

1.3    ASP 文件

动态网页扩展名与所使用的动态网页制作技术有关,例如,使用 ASP 技术时的文件扩展 名是.asp,使用 PHP 技术时的文件扩展名是.php,而使用 JSP 技术时的文件扩展名是.jsp。

简单地说,ASP 文件就是标准的 HTML 标记中嵌入了 VBScript 或 JavaScript 脚本代码构 成的.asp 文件。ASP 文件可以是 HTML 标记、服务器端脚本和客户端脚本的任意组合,但一 般不主张将不含服务器端脚本的纯 HTML 文件转换成 ASP 文件,因为 ASP 文件需要额外的 服务器资源。 服务器端脚本位于定界符<%……%>标记内, 客户端脚本位于定界符<script>…… 

</script>标记内。

为了加深大家的认识,先来看一个简单的 ASP 网页,借以体会制作 ASP 文件的过程。

(9)

【例 1­1】 输出浏览器日期。 

1­1.asp 文件代码如下:

<html> 

<head> 

<title>第一个 ASP 网页</title> 

</head> 

<body>

欢迎光临 ASP,请记住你首次接触 ASP 的时间:

<% 

response.write date() 

%> 

</body> 

</html>

(1)启动 Dreamweaver 8 后,执行“文件”→“新建”→“常规”→“动态网页”→ASP  VBScript→“创建”→“代码”命令,在其代码视图下输入 1­1.asp 文件代码。

(2)源代码输入完成后,执行“文件”→“保存”命令,弹出如图 1­23 所示的“另存为”

对话框,文件类型选择 Active Server Pages,输入文件名 1­1.asp,然后单击“保存”按钮。

图 1­23  “另存为”对话框

(3)再按 F12 键或者执行“文件”→“在浏览器中预览”→Iexplorer 6.0 命令,运行结果 如图 1­24 所示,可以动态显示网页打开的系统日期。

如果在显示该网页的浏览器中单击“查看”→“查看源文件”命令,可以看到如图  1­25  所示的内容。

图 1­24    1­1.asp 文件运行结果图 图 1­25    1­1.asp 文件源代码

(10)

很明显,经过 Web 服务器处理后发送到客户端的内容是标准的 HTML 格式代码。如果修 改了系统日期或者改天重新刷新操作后,浏览器输出的日期是不一样的。

学习 ASP 最好的方法莫过于勇于思考、大胆创新、亲自动手测试编写代码,下面再来看 一个稍微复杂些的案例。

【例 1­2】 编写一个页面,根据时间不同显示不同的内容。

源代码如下:

<html> 

<head> 

<title>根据时间不同显示不同内容</title> 

</head> 

<body> 

<% 

mytime=time() 

if mytime>=#5:00# and mytime<=#19:00# then 

%> 

<p align="center"> 

<font color="red" size="7" face="华文彩云">欢迎光临本站!</font> 

</p> 

<%else%> 

<font color="green" size="7" face="幼圆">

本站每天的 19 点到凌晨 5 点是休息时间,谢谢合作!

</font> 

<%end if%> 

</body> 

</html>

读者自己修改系统时间,比较运行结果与时间的关系。 

1.4    ASP 的语句 

ASP 的语句书写规则很简单, 一般将服务器脚本代码置于一对脚本定界符<%……%>标记 内即可,ASP 文件由一系列基本语句构成,下面简要介绍几种特殊语句。 

1.4.1 续行符和单行语句

编写 VBScript 脚本代码时,通常是在一行上写一条语句。

对于较长的语句,可以使用续行符(一个空格和一个下划线)将一条语句分成多行书写。

通过使用续行符,可以在第二个物理行上继续书写上一个逻辑行上的内容,例如:

<% msg="狗尾草,绑扫帚;" &"<br>" & _ 

"小田鼠,帮姥姥;"& "<br>" &"沙沙沙,把地扫。" %>

对于较短的语句,可以将多条语句写在同一行中,并使用英文冒号(:)来分隔各条语句,

例如:

<% t=x:x=y:y=t  '交换变量 x 和 y 的内容 %>

注意:ASP 代码中所有标点符号都是英文标点符号,当然字符串中的中文标点符号除外。

(11)

1.4.2 输出语句

输出语句是向浏览器输出内容,通常使用 response.Write,如:

<% 

response.Write "今天是"&date()  '输出日期 response.Write "现在是"&time()  '输出时间

%>

也可以使用替代形式“=”表示  response.Write,使用替代形式时,一对  ASP  脚本定界符 内只能有一条语句。例如:

<% ="今天是"&date()%> 

<% ="现在是"&time()%> 

1.4.3 注释语句

注释语句不执行,也不会显示在页面上。在编写程序时,为了方便以后对程序进行修改 和维护,添加必要的注释有利于读懂程序。ASP 提供了两种注释方式,语法如下:

格式一:

rem 注释行 格式二:

'注释内容

……

语句 '注释内容

说明:①同一行内,续行符后面不能有注释语句;②使用 response.Write 的替代形式“=”

输出时,命令行中不能有注释语句;③在调试程序时可以暂时注释掉一些语句。 

1.4.4 容错语句

一般来说,程序某一处发生错误时,程序会终止执行,并在页面上显示相关错误警示信 息。但有时不希望程序终止,也不希望将错误暴露在访问者面前,就要用到容错语句:

<% on error resume next %>

注意:调试程序时如果加了该语句,就不会发现其后续语句错误了。

有关“错误信息处理网页”内容,请读者参阅 3.4.1 节及例 3­13 和 5.2.4 节及例 5­19。另 外, 系统目录 C:\WINDOWS\Help\iisHelp\common 中包含的文件是 HTTP1.1 协议在 IIS 中定义 的“错误信息处理网页” 。 

1.4.5 文件包含语句

如果当前文件需要调用其他文件,需要在文件开头处加入包含语句,其中 Virtual 表示以 虚拟目录开始的路径,File 表示使用相对路径。

<!­­#include virtual|file="."­­> 

1.4.6 设置主脚本语言 

ASP 的脚本语言默认为 VBScript 语言,如果需要使用其他脚本语言,要用到脚本语言切 换语句,格式如下:

(12)

<% @ language="VBScript"%>

<% @ language="JavaScript"%>

注意:@和 language 之间需要有一个空格, 且指令应放在网页的首行 。

1.5    ASP 的功能 

ASP  的功能是通过内置对象和内置组件实现的。其中,处理表单和数据库,实现信息在 前台网页和后台数据库之间的双向交流和互动是 ASP 的精华所在, 也是 ASP 普及应用的前提。 

1.5.1 内置对象

对象是由数据和程序代码封装而成的单元。对象通常包含方法、属性或数据集合,方法 决定了如何处理对象, 属性用于返回或设置对象的状态, 数据集合则是类似于数组的数据结构,

可以存储字符串、 数值、 对象、 数组和其他数值。 内置对象包括 response、 request、 server、 session  和 application 等内置对象组成,详细信息参阅第 5~7 章。 

1.5.2 内置组件

内置组件也提供了一些方法和属性,与内置对象不同的是,用户不能直接调用内置组件 的属性和方法,而必须通过内置组件的实例对象来引用其属性和方法,操作相对比较复杂。内 置组件有很多,详细信息请参阅第 10 章。 

1.5.3 关联知识 

ASP 本质上属于一种技术框架,涉及诸多方面的知识,包括 HTML+CSS 语言、文档对象 模型 DOM、脚本语言 VBScript 和 JavaScript、内置对象和内置组件、结构化查询语言 SQL、

数据库管理系统 Access 和 SQL Server 等。

本章小结 

ASP 是一种简单易懂的技术, 结合 HTML 代码即可方便快速地完成网站应用程序的设计。

本章简单介绍了 ASP 的基本概念、 工作原理和开发工具, 并对 ASP 环境配置进行了详细说明,

最后列举两个实例并讲解了 ASP 的基本语句,以让大家对 ASP 有一个感性的认识。

习题一

一、选择题 

1.下列语言中不被浏览器执行的是( )。 

A.HTML  B.JavaScript  C.VBScript  D.ASP  2.相对于 JSP 和 PHP,ASP 的优点是( )。 

A.全面支持面向对象程序设计  B.执行效率高

(13)

C.简单易行  D.多平台支持  3.关于 ASP 说法正确的是( )。 

A.是一门程序设计语言  B.是制作动态网页的工具软件 

C.是制作网页的技术框架  D.是 WWW 的内置组件 

4.下面( )是 ASP 的默认脚本语言。 

A.Perl  B.JavaScript  C.VBScript  D.Access 

5.下面( )不能作为网络程序设计技术。 

A.ASP  B.HTML  C.JSP  D.PHP 

6.利用 ASP 开发的网页,其扩展名应该为( )。 

A..asp  B..html  C..jsp  D..php 

7.运行 ASP 网页的 Web 服务器最好配置( )解释。 

A.客户端浏览器  B.服务器端(IIS) 

C.服务器端浏览器  D.都可以 

8.浏览网页,这属于 Internet 所提供的( )服务。 

A.FTP  B.E­mail  C.Telnet  D.WWW 

9.ASP 网页的注释采用( )。 

A.//  B./*…*/  C.单撇号(’)  D.” 

10.ASP 网页的环境配置错误的是( )。  A.需要安装 IIS 

B.需要选择一种开发编辑工具软件  C.需要选择一种数据管理系统软件  D.需要安装一种图形图像处理软件  11.下列对于 ASP 的叙述,错误的是( )。 

A.ASP 是一种开发环境,不是一种具体的语言  B.ASP 使用 VBS 作为脚本语言编写 

C.ASP 可以直接对 HTML 页面元素进行操作 

D.ASP 可以利用内置的 ADO 组件直接对数据库进行读写  12.On Error Resume Next 语句位置应该在( )。 

A.程序头  B.程序尾 

C.出错的程序语句前一行  D.出错的程序语句后一行 

13.以下哪种是正确使用 include 方法的( )。 

A.<­­include file="conn.asp"­­>  B.<!­­include file="conn.asp"­­> 

C.<!­­#include file="conn.asp"­­>  D.<!­­#include file=conn.asp­­> 

14.嵌入 HTML 文件的 ASP 程序代码必须放在哪两个符号之间( )。 

A.<!­­  ­­>  B.'      '  C.<%      %>  D.<% =      %> 

15.假设 Web 服务器的计算机名称为 jsjasp,其主目录为 C:\Inetpub\wwwroot\,同时在此目录之下有一 个 ASP 程序,其完整路径为 C:\Inetpub\wwwroot\Ch1\test.asp。访问此 ASP 程序的正确方法是( )。 

A.http://jsjasp/test.asp  B.file://Ch1/test.asp  C.http://Inetpub/wwwroot/test.asp  D.http://jsjasp/Ch1/test.asp

(14)

二、简答题 

1.ASP 程序可以使用什么语言来描述,其默认编程语言是什么? 

2.如何配置 IIS 服务器,并使它运行 ASP 程序? 

3.ASP 的运行方式是怎样的?

三、上机练习

输入如下所示的 1­3.asp 文件代码,分析运行结果。

<html> 

<head> 

<title>浏览器心情感应时间</title> 

</head> 

<% 

a=time() 

if a<#12:00# and a>=#00:00# then  bgc="silver" 

elseif a<#19:00# and a>=#12:00# then bgc="navy" 

else bgc="red" 

end if 

%> 

<body bgcolor="<%=bgc%>"> 

<font color="green"> 

<% if a<#12:00# and a>=#00:00# then %>

早上好,今天天气怎么样呀?

<% elseif a<#19:00# and a>=#12:00# then %>

帅哥,下午还有课吗?

<%else%>

嘿,今晚去图书馆看书吗?去的话别忘了带我哟! 

<%end if%> 

</font> 

</body> 

</html>

參考文獻

相關文件

修订数字 百分率 百分点 少于. 绝对数值为零 不适用

固定资本形成总额:指固定资产(包括新、旧及场所自产自用之固定资产)之购置减固定资产销售后之数值。固定资产包括楼

固定资本形成总额:指固定资产(包括新、旧及场所自产自用之固定资产)之购置减固定资产销售后之数值。固定资产包

数值 按年变动 数值

最终求得所有 4个基函数 (针对三次 Hermite插值). 代入 4个基函数

样条插值的算例 三次样条的概念.

线性拟合与二次拟合 数据拟合的线性模型 一次多项式拟合公式..

超定方程组QR分解算法 数据拟合确定常微分方程..