Presentation is loading. Please wait.

Presentation is loading. Please wait.

ASP动态网页设计实用教程 主讲教师: 开课单位:.

Similar presentations


Presentation on theme: "ASP动态网页设计实用教程 主讲教师: 开课单位:."— Presentation transcript:

1 ASP动态网页设计实用教程 主讲教师: 开课单位:

2 第6章 ASP程序设计基础 主要内容 学习目标 新课讲授 本章小结 本章习题 返回

3 本章主要内容 ASP提供了可在脚本中使用的内置对象,这些对象使用户更容易收集通过浏览器请求发送的信息、响应浏览器以及存储用户信息,从而使开发者摆脱了很多烦琐的工作。本章将介绍ASP五大内置对象,分别是Response、Request、Application、Session和Server等对象。 目录页

4 本章学习目标 掌握Request对象的Form获取方法和QueryString获取方法,了解Request对象的Cookies获取方法、ServerVariables获取方法和ClientCertificate获取方法。 掌握Response对象的Write方法和Redirect方法,了解Response对象的Cookies方法、End方法等方法和Buffer属性。 掌握利用Application对象保存公共信息的方法。 掌握利用Session对象保存特定用户信息的方法。 了解Global.asa文件的作用和使用方法。 了解Server对象的属性和方法,掌握Server对象的HTMLEncode方法和MapPath方法。 目录页

5 第6章 ASP程序设计基础 6.1 ASP内置对象简介 6.2 Request对象 6.3 Response对象
6.4 Application对象 6.5 Session对象 6.6 Server对象 6.7 小结 目录页

6 第6章 ASP程序设计基础 6.1 ASP内置对象简介

7 6.2 Request对象 6.2.1 Request对象概述

8 6.2.2 Request对象的Form获取方法
name=表单元素的名字 action=被调用程序的网址 method=传送数据的方式 get/post,一般取post onsubmit=按下submit按钮时,处理submit事件的事件处理程序 onreset=按下reset按钮时,处理reset事件的事件处理程序 target=输出信息的窗口或分页名称 在上述的属性里,常用的通常时name、action、onsubmit和method。下面通过例子来讲解利用Form获取方法获取表单信息。 2. Form获取方法例1(书137页)

9 6.2.3 Request对象的QueryString获取方法
与Form获取方法相似,Request对象的QueryString获取方法同样也可以包含传送到服务器的各个表单值,但是这些值在URL请求中表现为若干项问号连接起来的一串文本。将客户端信息通过URL传递数据的方式有两种。第一种就是将表单的提交方法设置为Get,第二种是手工设置超链接。

10 6.2.4 Request对象的ServerVariables获取方法

11 6.2.5 Request对象的ClientCertificate获取方法
客户端要用 6.2.6 Request对象的TotalBytes属性 利用该属性可以得到客户端发送数据的字节大小。 语法:Request.TotalBytes 6.2.7 Request对象的BinaryRead方法 当浏览器以post方式发送数据是,使用这个方法可将数据以二进制格式读取。 语法:Request.BinaryRead(字节大小)

12 6.3 Response对象 6.3.1 Response对象概述

13 6.3.2 Response对象的Write方法
Write方法是Response对象中最常用的方法,用来向浏览器动态输出数据。ASP中各种类型的合法数据都可以使用这种方法来输出。 语法:Response.Write (变量或字符串) 在实际应用中,Write方法还有一种简化的写法。 语法:<%=变量或字符串%> 此外,Write方法允许其输出的内容中嵌入HTML标记。因为Write方法是将内容输出给浏览器,再由浏览器解释这些HTML标记。所以我们在使用过程中恰当使用它,可以使程序变得简洁、易读。

14 6.3.3 Response对象的Redirect方法
经常浏览网页的人可能有过这样的经验:在某些网站,浏览器在某些网页几秒之后,自动导向另一个网页。在ASP中,可以使用Redirect方法引导客户端至一个新网页。 语法:Response.Redirect 网址或字符串 6.3.4 Response对象的Buffer属性 Buffer属性用来设置是否输出缓冲页。 语法:Response.Buffer=True或False 若取值为True,则服务器端先输出到缓冲区,然后再从缓冲区输出到客户端浏览器;若取值为False,则服务器端直接将信息输出到客户端浏览器。

15 6.3.5 Response对象的End方法 End方法的主要作用是使Web服务器终止ASP程序的运行,并返回当前的结果。文件中剩余的内容将不被处理。如果Response.Buffer已设置为TRUE,则调用Response.End将缓冲输出。请运行例6-6子,查看运行结果。

16 6.3.6 Cookies 1. 利用Response对象设置不含关键字的Cookie
语法:Response.Cookies(“CookieName”)[(关键字)|.属性]=值 2. 设置含关键字的Cookie 3. 利用Request对象读取Cookie 语法:Request.Cookies(“CookieName”)[(关键字)|.属性]

17 6.4 Application对象 6.4.1 Application对象概述 1. Lock方法 2. UnLock方法
Application对象还有两个事件,但它们必须写入后面学到的Global.asa文件中才能使用。 1). Application_OnStart 当服务器启动运行并接受用户请求时,就触发Application_OnStart事件。 2). Application_OnEnd 该应用程序退出或服务终止时,就触发Application_OnEnd事件。

18 6.4.2 使用Application对象存储所有客户信息
语法:Application(“Application 名字”)=变量或字符串 应用见书149页案例6-7\6-8

19 6.4.3 使用Application对象存储数组信息
演示154页实例

20 6.5 Session对象 6.5.1 Session对象概述
Session对象有两个属性SessionID和TimeOut。 1. SessionId属性 SessionID属性返回用户的会话标识。在创建用户会话时,服务器会为每一个用户会话生成—个单独的标识。 2. Timeout属性 Timeout属性以分钟为单位为该应用程序的Session对象指定超时时限,其默认值指定的时间是20分钟。如果用户在指定时间内没有请求或刷新ASP应用程序中的任何网页,会话将自动结束。

21 6.5.3 Session对象方法 Session对象只有一个方法,就是Abandon。Abandon方法做用就是删除存储在Session对象中的变量,并释放Session对象。 语法:Session.Abandon 6.5.4 Session对象事件 Session对象有两个事件:Session_Onstart和Session_OnEnd。Session_OnStart事件是在创建Session对象时发生。Session_OnEnd事件是在Session对象结束时或超时发生。

22 6.5.5 Session对象存储信息 利用Session对象存储信息的方法很简单,可以将变量或字符串、数值、数组等信息很容易地存储到session变量中。 语法:Session(“Session 名字”)=变量或字符串或数值或数组 6.5.6 Session对象存储数组信息 在ASP中,如同Application对象相似,不仅可以将变量和对象存储在Session对象中,也可以将数组存储在Session对象中。需要特别注意的是,Session是把数组作为一个整体来对待。若要创建一个Session数组,应首先声明一个普通数组并对其元素赋值,然后将该数组作为一个整体存储在Session对象中。若要再检索或改变Session数组中的元素,应首先将该数组复制给一个本地数组,然后对本地数组中的元素进行操作,完成修改后再将本地数组存储在Session对象中。

23 6.5.7 Session对象实例 见例6-10

24 6.5.8 Global.asa文件的使用 Global.asa的语法:
<Script language="VBScript" runat="server"> Sub Application_OnStart 在首次创建新的会话(即Session_OnStart事件)之前发生。 End Sub Sub Session_OnStart 当任一客户首次运行ASP应用程序中任一页面时运行的代码 Sub Session_OnEnd 当任一客户退出或会话超时时运行的代码 Sub Application_OnEnd 当该站点的服务器关闭时运行的程序代码 </Script>

25 6.6 Server对象 6.6.1 Server对象概述

26 6.6.2 ScriptTimeOut属性 Server对象是专为处理服务器上的特定任务而设计的,特别是与服务器的环境和处理活动有关的任务,因此提供信息的属性只有一个,即ScriptTimeOut属性。 ScriptTimeOut属性为服务器处理当前网页的时间作出限制,单位为秒,默认时间为90秒。如果脚本超过这个时间限制还没有执行完.它将被强行中止。这样做是非常有必要的,因为如果长时间的对—个对象进行处理,则运行过程将会占用大量的系统资源,并且浏览器将会收到一个无休止的响应。当处理一个较大的网页时,就需要将时间限制加长,修改方法如下面例子所示,将时限值设为200秒。 <% Server. ScriptTimeOut=200 %>

27 6.6.3 CreateObject方法 CreateObject是ASP中最为实用,也是最强大的功能,它用于创建已经注册到服务器上的ActiveX组件实例。这是一个非常重要的特性,因为通过使用ActiveX组件能够轻松地扩展ASP的能力,从而实现数据库连接、文件访问、广告显示和其他VBScript不能够提供或不能简单地依靠单独使用ActiveX所能完成的功能,使得ASP具有了强大的生命力。 语法:Server.CreatObject("组件名") 例如创建一个ADO连接对象的实例: <% Set conn= Server.CreateObject ("ADODB.Connection") %>

28 6.6.4 HTMLEncode方法 HTMLEncode方法用来对字符串进行HTML编码。一般情况下,浏览器会将“<”和“>”之间的符号作为标志符号来解释,不会显示在浏览器上。但经过HTMLEncode编码处理后,“<”转化为“<”,“>”转化为“>”这样就可以输出特殊的字符了。这种方法在需要输出HTML语句时非常有用。 语法:Server. HTMLEncode (字符串或变量)

29 6.6.5 URLEncode方法 URLEncode方法主要用于对URL中的特殊字符进行编码。在ASP中,经常会通过URL传递一些参数。但是存在一个问题,即由于现在的HTTP协议只支持ASCII字符的传输,无法正确地传送标点符号或者空格等特殊字符。如果在请求页面URL地址中或者在发送的查询字符串中存在有一些特殊字符,就必须利用URLEncode方法对其进行编码,才可以确保这些字符能够被正确的传输。 语法:Server.URLEncode (字符串) 6.6.6 MapPath方法 MapPath方法用于将指定的相对或虚拟路径映射到服务器上相应的物理目录上。 语法:Server. MapPath ("path") 其中path指定要映射物理目录的相对或虚拟路劲。需要注意的是,MapPath方法不检查返回的路径是否正确或在服务器上是否存在。

30 6.6.7 Execute方法 Execute方法用来在当前ASP页面中执行同一服务器上指定的另外一个ASP页面。当指定的ASP页面执行完毕后,重新返回原页面继续执行Execute方法后面的语句。 语法:Server.Execute (URL地址) 6.6.8 Transfer方法 Transfer方法的作用与Execute方法类似,是从当前的ASP页面转到另一个ASP页面。不同的是其执行完新的页面时,不再返回原始页面。 语法:Server.Transfer(URL地址)

31 6.7 小结 本章主要介绍了ASP五大内置对象(Response、Request、Application、Session和Server)的常用属性和方法,对相关的Global.asa文件和Cookies集合也进行了介绍。并举例实现了一些网站常用的功能模块,如:注册表单、网页计数器、用户登录、在线人数统计等。正是有了ASP五大内置对象的存在,ASP语言才能在网站设计或B/S系统设计方面—直流行至今。本章是ASP编程的基础,希望读者认真体会各对象的属性和方法的用处,熟练掌握这些对象的基本使用方法,为学习以后各章的知识打下扎实的基础。

32 第6章 ASP程序设计基础 The End!


Download ppt "ASP动态网页设计实用教程 主讲教师: 开课单位:."

Similar presentations


Ads by Google