ASP完整教~学教材(完全ASP编程~).doc
《ASP完整教~学教材(完全ASP编程~).doc》由会员分享,可在线阅读,更多相关《ASP完整教~学教材(完全ASP编程~).doc(92页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、#*Active Server Pages 教程二零零零年二月二日二零零零年二月二日#*目目 录录第一章 引言.3 第二章 简介.8 第三章 ASP 基 础13 第四章 脚本基础19 第五章 脚本变量、函数、过程和条件语句22 第六章 脚本循环语句27 第七章 内建 Request 对象.30 第八章 内建 Reponse 对象36 第九章 内建对象 Application 和 Session42 第十章 Global.asa 文件的使用及 Chat 程序48 第十一章 内建对象 Server53 第十二章 数据库查询语言(1) .57 第十三章 数据库查询语言(2) .62 第十四章 Act
2、iveX 组 件.66 第十五章 常用的 ASP ActiveX 组 件.70 第十六章 其它的 ASP 常用组 件.75 第十七章 ADO 存取数据库时如何分页显 示.81 第十八章 堵住 ASP 漏 洞.87 第十九章 最新的 ASP、IIS 安全漏洞.91#*第一章第一章 引言引言您的网站是否仍一如既往地保持“静态”?目前呈几何增长的互联网 网站中,有相当一部分仍固守“静态” ,无形中已大大落后于时代的步伐。 所谓“静态”指的就是网站的网页内容“固定不变” ,当用户浏览器通过互 联网的 HTTP(Hypertext Transport Pr otocol)协议向 WEB 服务器请求提供
3、网页内容时,服务器仅仅是将原已设计好的静态 HTML 文档传送给用户浏 览器。其页面的内容使用的仅仅是标准的 HTML 代码,最多再加上流行的 GIF89A 格式的动态图片,比如产生几只小狗小猫跑来跑去的动画效果。 若网站维护者要更新网页的内容,就必须手动地来更新其所有的 HTML 文 档。 “静态”网站的致命弱点就是不易维护,为了不断更新网页内容,你 必须不断地重复制作 HTML 文档,随着网站内容和信息量的日益扩增,你 就会感到工作量大得出乎想象。 你不禁要问:那么什么是动态网站呢?这就是本文将重点讲述的核心, 所谓“动态” ,并不是指那几个放在网页上的 GIF 动态图片,在这里笔者 为动
4、态页面的概念制定了以下几条规则: 1、 “交互性”即网页会根据用户的要求和选择而动态改变和响应,将 浏览器作为客户端界面,这将是今后 WEB 发展的大事所趋。 2、 “自动更新”即无须手动地更新 HTML 文档,便会自动生成新的页 面,可以大大节省工作量。 3、 “因时因人而变” ,即当不同的时间、不同的人访问同一网址时会产 生不同的页面,是不是很酷? 现在你已经对“动态”网站有了一个基本的概念,接下来应挑选称手 的“兵刃”了。将网站“动态”化的方法很多,这要看你是出于何种需求。 如果你是个人网站的维护者,使用的是免费主页空间,那么绝大多数情况 下你只能使用 Java、Java Script
5、和最新的 DHTML 技术,如果你的主页空 间提供者能给予你 CGI 权限或 ASP 支持,那么你将能非常幸运地发挥真正 的动态技术。关于 CGI 和 ASP 技术将在后面的着重讨论,这里针对个人网 站仅就最新的 DHTML 技术进行重点介绍。 究竟什么是 DHTML?它与传统的 HTML 有什么不同?DHTML 就是 当网页从 WEB 服务器下载后无须再经过服务器的处理,而在浏览器中直 接动态地更新网页的内容、排版样式、动画。 比如,当鼠标移至文章段落中,段落能够变成蓝色,或者当你点击一 个超链后会自动生成一个下拉式的子超链目录。这就是 Dynamic #*HTML(动态 HTML) ,它是
6、近年来网络飞速发展进程中最振奋人心也是最 具实用性的创新之一。它是一种通过各种技术的综合发展而得以实现的概 念,这些技术包括 Java Script , VB0Script, Document Object Model (文件目 标模块),Layers 和 Cascading Style Sheets ( CSS 样式表)等。非常遗憾的是 在网景 Netscape 和微软 IE 浏览器几番大战后,我们仍没有得到一个对 DHTML 支持的统一标准。因此本文在介绍 DHTML 时不得不分别讲述。 让我们先来看看 Microsoft IE 4 对 DHTML 的支持: 1 .动态内容(Dynamic
7、 Content):动态地更新网页的内容,可“动态“ 地随时插入、修改、或删除网页的元件,譬如文字、标记等。 2 .动态排版样式(Dynamic Styles Sheets):通过 W3C 的“Cascading Style Sheets”(串联式排版样式,简称 CSS1 或 CSS) ,提供了设定 HTML 标记的字体大小、字型、粗细、字型样式、行高度、文字颜色、加底线或 加中间横线、与边缘距离、靠左右或置中、缩排、背景图片或颜色等排版 功能。而“动态排版样式” ,可以“动态”地随时地改变排版样式。 3 .动态定位(Dynamic Positioning):通过 W 3 C 的“Workin
8、g Draft on Positioning HTML with Cascading Style Sheets”,提供 HTML 元件在 X、Y、Z 轴的定位功能,让设计者可以放置影像、控件、文字等在网页上 的任何位置上。而放置在不同的 Z 轴上,设计者就可以产生重叠的效果。 4 .内建资料处理(Data Awareness):无须复杂的程序,无须花费服务 器太多资源,即可让网页设计者即时处理文档。 5 .内建多媒体支援:IE 4.0 结合 CSS 与内建的 ActiveX Controls,提供 多媒体支持的功能,包括转换特效、滤镜特效、路径控制、顺序控制、动 画、制图、播放声音和影像等多媒
9、体功能。 让我们再来看看 Netscape Communicator 4.0 对 DHTML 所提供的支持:1 .动态排版样式(Dynamic Styles Sheets):支援 W 3 C 的“Cascading Style Sheets”(串联式排版样式,简称 CSS1 或 CSS) 、和自创的“Java Script Style Sheets”。 2 .Dynamic Layers:提供图文定位、改变图文重叠顺序、控制隐藏或 显示图文、移动图文的功能,让您设计出“动画”的效果! 3 .Dynamic Fonts:提供由服务器下载字型的功能。 可见虽然 IE 4.0 和 Netscape
10、Communicator 4.0 都提供了“Dynamic HTML”的支持,但是事实上两者除了对“Cascading Style Sheets”的规格相 近外,其余都相差甚远。因此当你设计 DHTML 页面时必须充分考虑到兼 容性的问题,选择称手的“兵刃”和方法对于设计者来说始终是最重要的。 有关 DHTML 的使用方法和设计技巧作者将在第二章动态网页设计十八 般武艺中仔细讲解,请密切关注。 或许对于一个个人网站来说充分运用 DHTML 技术足以令网页栩栩如#*生,动感十足。然而对于建立商业网站的企业而言,仅仅拥有 DHTML 是 远远不够的。因为仅仅发生在客户浏览器端的动态效果是无法满足商
11、业网 站大量信息查询,客户咨询,资源交互等“动态”需求的。因此作为商业 网站的设计者,必须要设计出更具实用性和交互性的“动态”网站。由于 绝大多数商业网站都具有大量的数据和信息,而建网的初衷也就是在于方 便客户查询企业资料,方便同客户的交流,及时获得信息反馈。那么,就 必然会面临如何让使用者在浏览器界面中,通过互联网或内联网 (Intranet)查询 WEB 数据库的资料,甚至输入、更新和删除 WEB 服务器 上的资料。下面笔者就简单介绍几种常用的“动态”网站设计方法: 1、 CGI(Common Gateway Interface) 通用网关接口的传统方式,当用户在浏览器端填好表单(form
12、)要求 输入的资料,提出 HTTP 请求后,WEB 服务器端将执行一个表单所设定的 可执行的 CGI 应用程序,CGI 程序分析表单(form)中所输入的资料,存 取 WEB 数据库,将查询执行的结果以 HTML 的格式返回给浏览器。使用 CGI 方式存取 WEB 数据库,有很多的缺点,譬如不易开发、变更修改成 本高、功能有限、不易侦错、执行速度慢等,而且由于并非整合于 HTML 文档之中,因此必须使用与 HTML 完全不同的设计过程来设计一个可执行 的应用程序。 2、 IDC(Internet Database Connector) 互联网数据库连接头是 Windows NT Server
13、内含 Internet Information Server(简称 IIS)2.0 的特征之一,它提供了一种使你的互联网数据库内 容得以发布并可与用户交互的方法,它实际上是一个包含于 IIS 中的 I S A P I 应用程序。你只需掌握 HTML 和 SQL 的基本知识并写为数不多的代码 就能编出具有交互能力的数据库应用程序,让使用者在浏览器界面中得以 查询、输入、更新、和删除 WEB 服务器上的数据资料。正如 VB 程序员 所喜欢的那样,构成 IDC 应用程序的文件是解释性的,由于设计简易,只 要准备两个档案,即可在用户端的浏览器中存取 WEB 服务器的数据资料, 且无须编译,因此具有快速
14、的开发循环和反馈。但这种简单性的代价是牺 牲了许多灵活性,使你不得不放弃许多对用户接口的控制,并几乎放弃了 所有验证数据的能力。因而 I D C 仅适用于简单的 WEB 应用程序。 3、 ActiveX Data Object(ADO)是 WEB 数据库应用的最佳选择。 ActiveX Data Object(简称 ADO)究竟是什么呢?ActiveX Data Object 的技术,让您可以与 Active Server Pages(简称 ASP)结合以建立提供数据 资讯的网页内容,只需在网页面中执行 Structured Query Language(结构化 查询语言,简称 SQL)指令,
15、让用户在浏览器界面中输入、更新、和删除 WEB 服务器上的数据资料。当用户端的浏览器填好表单所要求输入的资料 并按下“Submit”按钮后,经过互联网、内联网传送 HTTP 请求到 WEB 服 务器,该请求在 WEB 服务器执行一个表单所指定的 Active Server Pages 程#*序(后缀名为. ASP 的文档) 。一个. ASP 文档是一个纯文字档,包括: HTML 标记(tags) 、VBScript 或 JScript 语言的程序代码、ASP 语法、和 结构化查询语言 SQL 指令。IIS3.0 / 4.0 WEB 服务器执行. ASP 文档,通过 ODBC 驱动程式,连接到支
16、持 ODBC 的数据库上,执行 ASP 文档所指定 的 SQL 指令,最后将执行的结果以 HTML 的格式传送给用户浏览器。 ADO 具有容易使用、开发执行快速、消耗系统资源较少,和占用磁盘空间 小等优点。 以上就是目前设计商业网站常用的“动态”技术,由于本人的工作和 使用经验,笔者较倾向于 ADO 和 ASP 的结合,从长远来看这对搭档也势 必成为今后一段时间内“动态”WEB 的核心技术。因此在本文第二章动 态网页设计十八般武艺中,笔者将就 ADO 和 ASP 的使用进行展开讲述, 敬请期待。 第二章第二章 简介简介看了引言后,你是否已经急不可待地想构建属于你自己的动态网 站?本文将以 Ac
17、tive Server Pages 为中心,向你全面展示制作动态商业网 站的步骤和技巧。 上一章给大家简要介绍了建立动态网站的一些方法和制作工具,本章 将以如何建立基于 IIS 的 ASP 动态网站为中心向大家一步一步地揭示动 态商业网站设计的真正奥秘。为了使各位能够全面、细致地掌握 ASP 的 开发技巧,本文今后将采取连载的形式,手把手地教你如何建立属于自己 ASP 动态网站。由于本文是作者根据自己的学习和实践经验并结合了一些 外文资料而写成的,因此不免会有一些偏颇,希望各位见谅。如发现本文 有何不当之处,请及时通知作者,谢谢。 Microsoft Active Server Pages 即
18、我们所称的 ASP ,其实是一套微软 开发的服务器端脚本环境, ASP 内含于 IIS 3.0 和 4.0 之中 , 通过 ASP 我们可以结合 HTML 网页、 ASP 指令和 ActiveX 元件建立动态、交互 且高效的 WEB 服务器应用程序。有了 ASP 你就不必担心客户的浏览器 是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括 所有嵌在普通 HTML 中的脚本程序。当程序执行完毕后,服务器仅将执 行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大 提高了交互的速度。 以下罗列了 Active Server Pages 所独具的一些特点:1. 使用 VBS
19、cript、JScript 等简单易懂的脚本语言,结合 HTML 代码, 即可快速地完成网站的应用程序。 #*2. 无须编译,容易编写,可在服务器端直接执行。 3. 使用普通的文本编辑器,如 Windows 的记事本,即可进行编辑设 计。 4. 与浏览器无关 (Browser Independence), 用户端只要使用可执行 HTML 码的浏览器,即可浏览 Active Server Pages 所设计的网页内容。 Active Server Pages 所使用的脚本语言 (VBScript 、 Jscript) 均在 WEB 服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。 5.A
20、ctive Server Pages 能与任何 ActiveX scripting 语言相容。除了可 使用 VBScript 或 JScript 语言来设计外,还通过 plug-in 的方式,使用由 第三方所提供的其他脚本语言,譬如 REXX 、 Perl 、 Tcl 等。脚本引 擎是处理脚本程序的 COM(Component Object Model) 物件。 6.Active Server Pages 的源程序,不会被传到客户浏览器,因而可以避 免所写的源程序被他人剽窃,也提高了程序的安全性。 7. 可使用服务器端的脚本来产生客户端的脚本。 8. 物件导向( Object-oriented
21、 ) 。 9.ActiveX Server Components(ActiveX 服务器元件 ) 具有无限可扩充 性。可以使用 Visual Basic 、 Java 、 Visual C+ 、 COBOL 等编程语 言来编写你所需要的 ActiveX Server Component 。 ASP 的奇妙之处真是不胜枚举,下面就请各位系好安全带,我将带领 大家进入 ASP 的梦幻世界。 首先,让我们来看看运行 ASP 所需的环境: Microsoft Internet Information Server version 3.0/4.0 on Windows NT Server Microso
22、ft Peer Web Services Version 3.0 on Windows NT Workstation Microsoft Personal Web Server on Windows 95/98 正如前文所述,与一般的程序不同, .asp 程序无须编译, ASP 程 序的控制部份,是使用 VBScript 、 JScript 等脚本语言来设计的,当执行 ASP 程序时,脚本程序将一整套命令发送给脚本解释器 ( 即脚本引擎 ) ,由脚本解释器进行翻译并将其转换成服务器所能执行的命令。当然,同 其他编程语言一样, ASP 程序的编写也遵循一定的规则,如果你想使用 你所喜爱的脚本语言
23、编写 ASP 程序,那么你的服务器上必须要有能解释 这种脚本语言的脚本解释器。当你安装 ASP 时,系统提供了两种脚本语 言: VBsrcipt 和 JScript ,而 VBscript 则被作为系统默认的脚本语言。 你也可以根据自己的喜好改变系统默认的脚本语言,关于如何改变系统默 认的脚本语言请看 在 ASP 中使用脚本语言一文。 ASP 本身并不是一种脚本语言,它只是提供了一种使镶嵌在 HTML 页面中的脚本程序得以运行的环境。但是,要学好 ASP 又必须掌握它的 语法和规则。现在就让我们开始一步一步地认识并学习 Active Server #*Pages 。 ASP 程序其实是以扩展名
24、为 .asp 的纯文本形式存在于 WEB 服务器 上的,你可以用任何文本编辑器打开它, ASP 程序中可以包含纯文本、 HTML 标记以及脚本命令。你只需将 .asp 程序放在 WEB 服务器的虚拟 目录下(该目录必须要有可执行权限) ,就可以通过 WWW 的方式访问 ASP 程序了。要学好 ASP 程序的设计,必须掌握脚本的编写,那么究竟 什么是脚本呢?其实脚本是由一系列的脚本命令所组成的,如同一般的程 序,脚本可以将一个值赋给一个变量,可以命令 WEB 服务器发送一个值 到客户浏览器,还可以将一系列命令定义成一个过程。要编写脚本,你必 须要熟悉至少一门脚本语言,如 VBScript 。脚本
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ASP 完整 教材 完全 编程
限制150内