第6章 ASP基础
6.1 ASP基础课程描述,
ASP是一套微软开发的服务器端脚本环境,ASP 包含于 IIS 3.0 和 4.0 之中,通过 ASP开发者可以结合 HTML 网页,ASP 指令和 Activex 元件建立动态、交互且高效的 Web 服务器应用程序本次课知识点
Active Server Pages 的技术特点
ASP的工作机制
ASP运行环境课时:2
讲课过程:
知识要点:
1.Active Server Pages 的技术特点
(1)使用 VBScript, JScript 等简单易懂的脚本语言,结合 HTML代码,即可快速地完成网站的应用程序。
(2)无须编译,容易编写,可在服务器端直接执行。
(3)使用普通的文本编辑器,即可进行编辑设计。
(4)与浏览器无关 (Browser Independence),用户端只要使用可执行 HTML代码的浏览器,即可浏览 Active Server Pages 所设计的网页内容。
(5)Active Server Pages 能与任何 Activex Scripting 语言相容。
(6)Active Server Pages 的源程序,不会被传到客户浏览器。
(7)服务器端的脚本来产生客户端的脚本。
(8)物件导向( Object-Oriented )。
(9)Activex Server Components(Activex 服务器元件 ) 具有无限可扩充性
2.ASP的工作机制
当浏览器向Web服务器请求调用ASP文件时,就启动了ASP。Web服务器响应该HTTP请求,调用ASP引擎,解释被申请的文件。当遇到与active X Script兼容的脚本(VBScript,JScript)时,ASP引擎调用相应的脚本引擎进行解释处理。
3.ASP运行环境
(1).? ASP的运行环境
(2),Asp文件的运行
本次课小节熟悉asp?的特点及工作机制,掌握ASP运行的方法。
6.2脚本语言课程描述:
脚本语言是介于 HTML 和 Java、C++ 和 Visual Basic 之类的编程语言之间的语言。
本次课知识点
VBScript介绍基本语法变量函数运算符基本语句数组和过程课时:4
讲课过程:
第1小节 VBScript介绍及基本语法课时:2
知识要点:
VBScript介绍
2.基本语法基本数据类型,VBScript 只有一种数据类型,称为 Variant, Variant 包含的数值信息类型称为子类型,
①.? 常量
常量是在程序运行过程中,值不能被改变的量。
(1)数值常量
(2)字符串常量
(3)逻辑型常量
(4)日期常量
(5)符号常量
②.变量
在 VBScript 中只有一个基本数据类型,即 Variant,因此所有变量的数据类型都是 Variant。
(1)命名规则
(2)声明变量
(3)变量的作用域
3.VBScript 函数
(1)算术函数
(2)字符函数
(3)日期函数
(4)转换函数
4.VBScript 运算符
VBScript 包括算术运算符、比较运算符、连接运算符和逻辑运算符。
运算符优先级
当表达式包含多种运算符时,首先计算算术运算符,然后计算比较运算符,最后计算逻辑运算符。所有比较运算符的优先级相同,即按照从左到右的顺序计算比较运算符。
本次课小节熟悉ASP基本语法?的特点及函数与运算符的运用。
第2小节 基本语句、数组及过程课时:4
知识要点:
1.? 赋值语句
赋值语句的作用是将一个数据赋给一个变量。
赋值语句的表现形式为:
Var =表达式
2.? 条件语句
控制程序执行
使用条件语句和循环语句可以控制脚本的流程。使用条件语句可以编写进行判断和重复操作的 VBScript 代码。在 VBScript 中可使用以下条件语句,
If...Then...Else 语句
Select Case 语句
①条件语句
(1)用 If...Then...Else 进行判断语句的表现形式为
If <条件> Then
[语句组1]
Else
[语句组2]
End If?
条件语句(2)
(2)Select Case 进行判断
Select Case <选择表达式>
[Case <值1>
[ <语句组1>] ]
[Case <值2>
[<语句组2>] ]
……
[Case <值n>
[ <语句组n> ] ]
[Case Else
[ <语句组n+1> ] ]
End Select
②循环语句循环用于重复执行某些操作。循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句。
For...Next,指定循环次数,使用计数器重复运行语句。
Do While(Until)..Loop,当(或直到)条件为 True 时循环。
For Each...Next:对于集合中的每项或数组中的每个元素,重复执行一组语句。
3.数组
(1).? 数组定义
数组在使用之前,应先进行数组的定义。数组定义的一般 格式为:
Dim 数组名 ([下界 To ]上界)[As 数据类型]
(2),动态数组
动态数组指的是在运行脚本时大小发生变化的数组。如果在定义数组时,并未确定数组的维数及每一维的大小,那么在程序设计过程中,可以通过redim语句对数组的重新声明
4.VBScript过程
在 VBScript 中,过程被分为两类:Sub 过程和 Function 过程。
本次课小节熟悉ASP基本语句的表现形式,掌握语句运用的方法。
6.3 ASP的内建对象课程描述:
Active Server Pages 提供了可在脚本中使用的内建对象。这些对象使用户更容易收集通过浏览器请求发送的信息、响应浏览器以及存储用户信息,从而使对象开发者摆脱了很多烦琐的工作。
本次课知识点
Request对象
Response对象
Sever对象
Application 对象
Session 对象课时:6
讲课过程:
第1小节 Request对象课时:2
知识要点,
1.Request 对象的语法,
Request[,集合 | 属性 | 方法 ]( 变量 )
Request 对象中包含了5个数据集合、1个属性(Totalbytes属性)和1个方法(Binaryread方法)。 5个数据集合分别是:Form数据集合、Querystring数据集合、Server Variables数据集合、Clientcertificate数据集合和cookies数据集合。
2.Form 数据集合
Form 集合收集来自客户端的以表单形式发往服务器的信息。
Form的语法,
Request.Form(String参数)[(索引)|.计数]
3.? Querystring
Querystring 集合检索 HTTP 查询字符串中变量的值,HTTP 查询字符串由问号 (?) 后的值指定。
通过发送表格或由用户在其浏览器的地址框中键入查询也可以生成查询字符串。
如:Http://Student1/Example.Asp?Age=28
Querystring的语法:
Request.Querystring(变量名)[(索引)|.计数]
4.Servervariables数据集合
Servervariables数据集合的功能在于帮助客户端取得服务器端环境信息。这些信息,如, 客户的 IP地址等等,有时服务器端需要根据不同的客户端信息做出不同的反映,这时候就需要用 Servervariables 集合获取所需信息。
Servervariables的语法,
Request.Servervariables ( 服务器环境变量 )
5,Cookies
Cookie是一个标签,当你访问一个需要唯一标识你站址的 Web 站点时,它会在你的硬盘上留下一个标记,下一次你访问同一个站点时,站点的页面会查找这个标记。每个 Web 站点都有自己的标记,标记的内容可以随时读取,但只能由该站点的页面完成。
Cookies的语法,
Request.Cookies(Cookie)[(Key)|.Attribute]
本次课小节掌握REQUEST对象?的特点及基本运用。
第2小节 Response对象及Sever对象课时:2
知识要点,
1.Response的语法,
Response.[数据集合|属性|方法]
2,Response属性
(1)Buffer:指示是否缓冲页输出。
(2)Charset:将字符集名称附加到 Response 对象中 Content-Type 标题的后面。
(3)Contenttype:指定服务器响应的 HTTP 内容类型。
(4)Expires,指定了在浏览器上缓冲存储的页距过期还有多少时间。
(5)Expiresabsolute:指定缓存于浏览器中的页面的确切到期日期和时间
3.Response方法
(1)Write
可以把信息从服务器端直接送到客户端。
Write的语法:Response.Write [变量/字符串]
(2)Clear
可以用 Clear 方法清除缓冲区中的所有 HTML 输出。
(3)End
End 方法使 Web 服务器停止处理脚本并返回当前结果。
(4)Flush
Flush 方法立即发送缓冲区中的输出。
(5)Redirect
Redirect 方法使浏览器立即重定向到程序指定的 URL。
4.Response集合
Response 对象只有一个集合 --Cookie
Cookies 集合设置 Cookie 的值。若指定的 Cookie 不存在,则创建它。若存在,则设置新的值并且将旧值删去。
语法,Response.Cookies(Cookie)[(Key)|.Attribute]=Value
这里的 Cookie 是指定 Cookie 的名称。而如果指定了 Key,则该 Cookie 就是一个字典。Attribute 指定 Cookie 自身的有关信息。
5.Server 对象提供对服务器上的方法和属性的访问,
Server的语法,Server.[属性|方法]
6,Server?属性
Scripttimeout 超时值,在脚本运行超过这一时间之后即作超时处理。如下代码指定服务器处理脚本在 500 秒后超时。
< % Server.Scripttimeout=500 %>
7.? Server方法
(1)HTMLEncode 方法
HTMLEncode 方法允许你对特定的字符串进行 HTML 编码.
(2)URLEncode 方法
可以根据 URL 规则对字符串进行正确编码.
(3)Mappath 方法
将指定的相对或虚拟路径映射到服务器上相应的物理目录上。
语法如下,Server.Mappath(Path)
(4)Createobject 方法
它用于创建已经注册到服务器上的 ActiveX 组件实例。
Createobject的语法如下,
Server.Createobject("Component Name")
本次课小节掌握ASP中reponse对象及sever对象的特点与运用的方法。
第3小节 Application 对象及Session 对象课时:2
知识要点,
1.?Application 属性
虽然 Application 对象没有内置的属性,但可以使用以下句法设置用户定义的属性也可称为集合。
Application(,属性 / 集合名称,)= 值
2.? 方法
(1)Lock 方法禁止其他客户修改 Application 对象的属性
(2)与Lock 方法相反,Unlock 方法允许其他客户修改 Application 对象的属性
3.? 事件
(1)Application_Onstart
Application_Onstart 事件在首次创建新的会话 ( 即 Session_Onstart 事件 ) 之前发生。当 Web 服务器启动并允许对应用程序所包含的文件进行请求时就触发 Application_Onstart 事件。
(2)Application_Onend
Application_Onend 事件在应用程序退出时于 Session_Onend 事件之后发生,Application_Onend 事件的处理过程也必须写在 Global.asa 文件之中。
4.Session 属性
(1)Sessionid
Sessionid 属性返回用户的会话标识。
(2)Timeout
Timeout 属性以分钟为单位为该应用程序的 Session 对象指定超时时限。
设置Timeout属性的语法如下:
Session.Timeout=Nminutes
5.Session 方法
Session 对象仅有一个方法,就是 Abandon,Abandon 方法删除所有存储在 Session 对象中的对象并释放这些对象的源。
6,Session? 事件
Session 对象有两个事件:Session_Onend 事件和Session_Onstart 事件。
(1 )Session_Onstart 事件在服务器创建新会话时发生
服务器在执行请求的页之前先处理该脚本。
(2 )Session_Onend 事件在会话被放弃或超时发生
本次课小节掌握ASP中application对象及session对象的特点与运用的方法。
6.4 网站数据库技术
课程描述:
网站的建设是离不开数据库的,当用户使用浏览器请求ASP主页时,Web服务器响应,调用ASP引擎来执行ASP文件,并解释其中的脚本语言,通过ODBC连接数据库,由数据库访问组件ADO完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。
本次课知识点
web数据库访问技术
Connection连接对象
Recordset记录集对象课时:6
讲课过程:
第1小节 web数据库访问技术课时:2
知识要点,
1.? ASP访问数据库的原理
2.? ODBC数据源
通过ODBC访问数据库的操作步骤,通常包括有以下的几个内容:
(1)创建数据源
(2)建立一个与数据源的对话连接
(3)向数据源发出SQL请求
(4)定义一个缓冲区和数据格式存储访问结果
(5)提取结果
(6)处理各种错误
(7)向用户报告结果
(8)关闭与数据源的连接
3.SQL语言简介
(1)数据库表格
(2)创建表格
Create Table 表名 (字段1 字段类型 字段长度,字段2 字段类型 字段长度,字段3 字段类型 字段长度)
(3)向表格中插入数据
Insert Into 表名[(字段列表)] Values (值列表)
(4)更新记录
Update 表名 Set 字段1=值1,字段2 = 值2……
[Where 条件表达式]
(5)删除记录
Delete From 表名 [Where 条件表达式]
(6)删除数据库表格
Drop Table 表名
(7)数据查询
Select *|字段列表
From 表名
[Where 条件表达式];
4.? ADO的对象
ADO组件主要提供了以下七个对象和四个集合,通过在页面上调用这些对象执行相应的数据库操作。
(1)Connection对象:建立与后台数据库的连接。
(2)Command对象:执行SQL指令,访问数据库。
(3)Parameters对象和Parameters集合:为Command对象提供数据和参数。
(4)RecordSet对象:存放访问数据库后的数据信息,是最为常用的对象。
(5)Field对象和Field集合:提供对Recordset中当前记录的各个字段进行访问的功能。
(6)Property对象和Properties集合:提供有关信息,供Connection、Command、RecordSet、Field对象使用。
(7)Error对象和Errors集合:提供访问数据库时的错误信息。
本次课小节熟悉网站数据库技术?ASP访问数据库的原理,ODBC数据源创建数据源的方法及sql语言的运用。
第2小节 Connection连接对象课时:2
知识要点,
1.? 创建Connection连接对象
首先,利用ASP中的Server对象的CreateObject方法建立连接对象。
建立与数据库连接的语法如下:
Set 连接对象名=Server.CreateObject("ADODB.Connection")
(1)没有ODBC数据源的连接方式
这种方式是在没有建立数据源的情况下,在代码中指定Dbq参数和Driver参数来连接数据库。
(2)有ODBC数据源的连接方式
这种方式是通过在服务器上创建并配置数据源的形式建立连接,ODBC是微软推出用于开发数据库系统应用程序的编程接口规范,只要系统有相应的ODBC驱动,就可以通过ODBC与该数据库连接并访问数据库中的信息。
2.? Connection连接对象的属性
(1)ConnectionTimeout
用于指定连接对象执行与数据库连接的最长时间,如果超过时间数据库没有连上,则停止执行,语法如下:
mycon.ConnectionTimeout=秒数
(2)CommandTimeout
设置Connection对象的Execute方法的最长执行时间,默认值为30秒。执行数据库操作时,如果时间到了仍然无法正确执行,将结束操作,语法如下:
mycon.CommandTimeout=秒数
(3)ConnectionString
用于指定连接对象的数据库连接信息。
(4)Mode
用于设置连接数据库的权限
3.? Connection连接对象的方法?
(1)Open
用于建立Connection连接对象与数据库的连接。连接建立后,使用连接对象的Open方法打开数据库,才可以继续进行各种数据库操作。语法如下:
mycon.Open 连接参数
(2)Close
用于关闭Connection连接对象与数据库的连接。语法如下:
mycon.Close
(3)Execute
用于使用SQL语句执行数据库的查询操作。当创建了连接对象并且与数据库连接后,就可以通过连接对象的Execute方法直接与数据库对话,对数据库进行添加、更新和删除等操作 。
(4)BeginTrans:用于表示开始事务处理,启动了页面与数据库的事务处理过程。
(5)CommitTrans:用于提交事务处理结果,执行CommitTrans才能真正更新数据库。
(6)RollbackTrans:用于取消事务处理结果,结束事务处理过程。
本次课小节掌握网站数据库中Connection连接对象的特点、属性与运用的方法。
第3小节 Recordset记录集对象课时:2
知识要点,
1,建立Recordset对象
创建记录集的方法主要有两种。可以先建立连接对象,再创建记录集对象;也可以在非显式建立连接对象的情况下,创建记录集对象。
第一种,先建立连接对象,再创建记录集对象 。
第二种,在非显式建立连接对象的情况下,用Server对象的CreatObject方法建立并打开记录集对象
2,Recordset记录集对象的属性
(1)Source
用于设置数据库的查询信息,查询信息可以是命令对象名或SQL语句
(2)ActiveConnection
用于设置数据库的连接信息,连接信息可以是连接对象名或是包含数据库的连接信息的字符串
(3)CursorType:用于设置记录集指针类型。
(4)LockType:用于设置记录集的锁定类型。
(5)MaxRecors:用于设定从服务器上得到的最大记录数。
(6)CursorLocation:用于设置数据处理是在客户端还是在服务器端 。
(7)Filter:用于设置要显示的内容。
(8)Bof:用于判断当前记录指针是否在记录集的开头。
(9)EOF:用于判断当前记录指针是否在记录集的结尾。。
(10)RecordCount:用于返回记录集中的记录总数。
(11)PageCount:用于设置分页显示时数据页的总数。
(12)PageSize,用于设置分页时每一页所显示的记录数。
(13)AbsolutePage:用于设置当前指针位于哪一页。
(14)AbsolutePosition:用于设置当前指针所在的记录行。
3,Recordset记录集对象的方法
(1)Open:用于打开记录集
(2)Close:用于关闭记录集
(3)Requery:用于重新打开记录集
(4)Move,用于将指针移动到指定记录
(5)MoveFirst:用于将指针移动到第一条记录
(6)MoveLast:用于将指针移动到最后一条记录
(7)MovePrevious:用于将指针移动到上一条记录
(8)MoveNext:用于将指针移动到下一条记录,
(9)AddNew:用于向数据库添加记录
(10)Delete:用于向数据库删除当前记录
(11)Update用于向数据库更新记录
本次课小节掌握网站数据库中Recordset记录集对象的特点、属性与运用的方法。
作业与练习一、思考与练习
1.简述VBScript语言的特点
2.试述ASP中使用的六种内建对象的基本功能。
3.编写一程序,计算1+3+5+…..+n的和。要求单击命令按钮后,将计算结果显示在一个文本框中。
4.试编写一程序,根据当天是星期几,在页面中显示不同的图片
5.编写一个资料录入程序,使用表格为数据录入界面的各元素定位,使用表单将录入的数据送到服务器,服务器收到录入数据后,将相关数据发送到客户浏览器显示出来。
6.利用ADO对象设计学生信息管理和查询系统。
7.设计一个简单的用户验证系统,可实现用户登录信息的检测、注删新生用户等基本功能。
二、实践题:
1.将本章介绍的几个网站实用程序示例分别输入计算机并运行通过,然后验证每个实例的各项功能是否达到了预期的目标。
2.利用ADO对象设计班级同学录管理、查询系统。
3.仿照本章实例设计一个用户验证系统。
4.仿照本章实例设计并创建一个聊天室系统。
5.仿照本章实例设计并设计一个购物车。
6.完善本章实例网站的购物车,创建一个自已的网上超市。