ASP复习doc文档格式.docx
《ASP复习doc文档格式.docx》由会员分享,可在线阅读,更多相关《ASP复习doc文档格式.docx(20页珍藏版)》请在冰豆网上搜索。
![ASP复习doc文档格式.docx](https://file1.bdocx.com/fileroot1/2023-1/6/38317882-b148-4d8b-8224-50e65fcd5675/38317882-b148-4d8b-8224-50e65fcd56751.gif)
注释标记
文本格式标记
水平线标记
未标序的列表
标序列表
解释列表
链接至本机另一Web页
链接到另外一台计算机上的Web页
链接到同一文章的另一个段落
链接到不同网页的某处
表单标记语法格式:
<
formmethod="
"
action="
>
inputtype="
name="
value="
size="
>
…
/form>
第3章ASP脚本语言-VBScript
什么是脚本?
所谓脚本语言,就是解释语言(ScriptLanguage),是一种介于HTML语言和VisualBasic、Java等高级语言之间的一种语言。
脚本语言嵌入在HTML中,可以在客户端的浏览器中执行,也可以在服务器端执行。
注意:
ASP本身并不是脚本语言。
在ASP程序中常用的脚本语言有VBScript和JavaScript等语言,系统的默认语言为VBScript语言。
ASP可以通俗的说就是把脚本语言放在<
%和%>
之间,一般在服务器端运行。
1.VBScript代码的基本格式
在服务器端,有两种格式:
方法一:
%VBScript代码%>
ScriptLanguage=”VBScript”runat=”Server”>
VBScript代码
<
在客户端运行,语法如下:
ScriptLanguage=”VBScript”>
VBScript代码
一般情况用的最多的是<
格式。
2.VBScript的数据类型
在VBScript,只有一种数据类型,称为Variant,也有叫做变体类型。
3.VBScript常量
常量就是拥有一定名字的数值,常量可以代表字符串、数字、日期等常数,常量一经定义以后,其值将不能再更改。
常量定义方法:
Const常量名=值
常量的命名规则跟一般的程序设计语言一样。
由字母、数字和下划线等字符组成,字母开头,中间不能有标点符号和运算符号,不能使用VBScript关键字,长度不能超过255个字符。
VBScript关键字就是dim、sub、end、request等VBScript使用的特殊关键字。
例:
%
ConstPI=3.1415926‘表示数值型常数
ConstConstString1=”中国”‘用“”表示字符串型常数
ConstConstString2=”100”‘用“”表示字符串型常数
ConstConstDate=#2001-1-12#‘用##表示日期常数或时间常数
%>
4.VBScript变量
使用Dim语句显式声明变量并分配存储空间,使用“=”运算符对变量进行赋值操作。
变量语法格式:
Dim变量名[,变量名]
DimstrName,strPword
也可以通过直接在脚本中使用变量名这种方式隐式声明变量。
但这不是一个好习惯,因为这样有时会由于变量名被拼错而导致脚本运行出错。
若要强制声明变量,可在脚本的开头加上:
%optionexplicit%>
5.VBScript数组
数组定义:
数组的命名、定义、赋值和引用和变量基本上是一样的,所不同的是要定义数组中的项目数。
定义数组:
Dim数组名([数组长度])
VBScript中的数组是从0开始计数的。
引用数组变量:
数组名(索引号)
例:
Dima(10)'
一维数组长度为11
a(0)=256'
赋值
a
(1)=324
a
(2)=100
...
a(10)=55
Dima(2,4)'
二维数组,3行5列,可保存15ge值
a(1,2)=”大家好”'
动态数组:
声明数组时可以不确定数组项目数,以后还可以更改。
定义:
Dim数组名()
Redim数组名(数组长度)'
重新声明数组
Dima()'
声明一个变长数组
Redima(3)'
使用时需Redim这个数组
a(3)=”北京”'
Redimpreservea(5)
a(5)=”大学”'
6.VBScript运算符
✧算术运算符:
符号
说明
+
加
-
减
*
乘
5/3
除
5\3
取整
5Mod3
取余
2^3
幂
✧连接运算符
&
用于连接两个字符串
+
同&
✧比较运算符
=
等于
大于
小于
=
大于等于
小于等于
不等于
✧逻辑运算符
7.VBScript函数
在使用函数时要特别注意函数的参数的个数和类型,函数的返回值是什么,如何引用的,这样才能掌握好函数的用法。
✧日期和时间函数
函数
功能
Now
取得系统当前的日期和时间
Date
取得系统当前日期
Time
取得系统当前时间
……
记住几个常用的日期和时间函数,编程时经常遇到。
例如:
Date=Date()‘现在时间
Request.write“当前时间是:
”&
Date
‘结果是今天的日期2018-11-6
8.VBScript过程
VBScript过程有两个。
注意两种过程的区别。
一种是Sub子程序。
语法:
Sub子程序名(参数1,参数2,…)
语句……
EndSub
调用子程序:
Call子程序名(参数1,参数2,…)
另一种是Function子程序。
Function函数名(参数1,参数2,…)
EndFunction
变量=Function函数名(参数1,参数2,…)
区别:
Sub子程序只执行程序而不返回值,而Function函数可以将执行代码后的结果返回给请求程序。
9.使用条件语句
有以下几种表达结构:
(1)If条件表达式then程序块
(2)If条件表达式then
语句块
EndIf
(3)If条件表达式then
语句块1
Else
语句块2
EndIf
(4)If条件表达式0then
If条件表达式1then
EndIf
语句块3
当程序运行到If块时,将测试条件表达式0。
如果条件表达式是True,则执行Then之后的语句,并对每个嵌套的If语句的条件表达式1加以测试。
当其值为True时,则其Then之后的语句会被执行,否则将执行嵌套的Else之后的语句。
如果条件表达式0是False,则将执行最后一个Else之后的语句。
执行Then或Else之后的语句以后,将继续执行EndIf之后的语句。
(5)If条件表达式1then
elseIf条件表达式2then
elseIf条件表达式3then
elseIf条件表达式nthen
语句块n
else
语句块n+1
当程序运行到If语句时,将测试条件表达式1。
如果条件表达式1是True,则执行Then之后的语句。
如果条件表达式1是False,则每个ElseIf部分的条件式会依次计算并加以测试。
当找到某个为True的条件时,则其相关的Then之后的语句会被执行。
如没有一个ElseIf语句是True(或没有ElseIf子句),则将执行Else之后的语句。
记录。
在VBScript中,常用的循环语句有:
第一种:
For…Next循环
第二种:
Do…Loop循环
第4章创建ASP动态网页
(1)
1.ASP几个重要的内部对象。
目前的ASP常用的五个内建对象,分别是Request对象、Response对象、Server对象、Session对象、Application对象,其各自功能简述如下:
Request对象:
负责从客户机接收信息;
Response对象:
负责响应用户请求;
Application对象:
负责保存所有ASP程序用户的共用信息;
Session对象:
负责保存单个用户与应用程序交互的各种信息;
Server对象:
负责控制ASP的运行环境。
2.Request对象
通常客户端通过浏览器在表单里填的信息怎么样才能传到服务器端呢?
利用Request对象就可以让服务器轻松取得客户端的信息。
Request对象共有五种获取方法,分别是:
QueryString、Form、Cookies、ServerVariables、ClientCertificate。
Request.获取方法(参数)
Request(“user_name”)‘获得表单中的用户名
%>
QueryString:
从查询字符串中读取用户提交的数据。
Form:
取得客户端在Form表单中所输入的信息。
Cookies:
取得客户端浏览器cookies的值。
ServerVariables:
取得服务器环境变量中的值。
ClientCertificate:
取得客户端浏览器的身份验证信息。
如果直接以Request(参数)方式,系统会依次检查上面的5种方法。
注意以下几点:
(1)知道如何利用Form方法获取Form表单中的信息。
利用HTML提供的Form表单实现。
注意Form中的几个参数:
name表单名称、action所提交的页面、method表单上传方法(post或者get)。
思考:
Form表单和Form获取方法有什么区别?
答:
Form表单是HTML提供的表单,不是ASP特有的;
而Form获取方法
是特指ASP的Request对象的获取信息的一种方法。
(2)QueryString是如何工作的,获取的是什么信息,与Form方法有什么不同?
QueryString方法是获取在URL后面的所有返回的变量及其值。
ahref=”4-1.asp?
name=白芸&
age=22”>
QueryString方法获取name和age两个值。
Dimname,age
name=Request.Querystring(“name”)‘获得URL中的用户名
age=Request.Querystring(“age”)‘获得URL中的年龄
常用的就是前两种方法,要熟记。
(3)ServerVariables是如何工作的,获取的是什么信息?
Request.ServerVariables(“环境变量名称”)
IP=Request.ServerVariables(“Remote_Addr”)‘获得IP地址
3.Response对象
ASP是要生成动态网页,根据客户端的不同请求输出相应的信息,这就要靠Response对象来实现了。
Response对象经常使用的方法有三个:
Write、Redirect和End。
Response.获取方法(参数)
(1)Write:
直接送出信息给客户端。
Response.Write变量数据或字符串
简略语法:
%=变量数据或字符串%>
(字符串需加引号,变量则不用)
DimTest
Test=“我是中国人!
”
Response.Write“我是中国人!
Response.WriteTest
或者
%=“我是中国人!
”%>
%=Test%>
最后输出结果都是“我是中国人”。
下面这种输出是错误的,记住。
=“我是中国人!
=Test
注意区分两者的用法。
简单写法必须要在输出的每一句两边加<
,而
Response.Write可以有多行语句。
(2)Redirect:
引导客户端至另一个URL位置。
Response.RedirectURL变量或字符串
Response.redirect“test.asp”‘重定向到test.asp页面
注意区分Redirect与超连接的区别。
超连接引导客户到另一个页面,需在客户端单击超连接才行,而Redirect是自
动引导客户到另一个页面。
(3)End:
终止后面的程序运行。
Response.End
Response.Write“我是中国人!
Response.End
Response.Write“我是美国人!
最后输出结果是“我是中国人”。
接下来我们讲一下Response对象的属性。
Response对象经常使用的属性是Buffer和Cookies。
Cookies,俗称甜饼,是服务器端利用客户端机器保留信息一种方法。
每个应用程序(网站)都可以有自己的Cookies,但只能读取自己的Cookies。
ASP利用Response对象的Cookies方法可以设置Cookies,利用Request对象获取Cookies。
(1)设置不含关键字的Cookies
Response.Cookies(“user_name”)=“章剑”
name=request.cookies(“user_name”)
获取不含关键字的Cookies
User_name=Request.Cookies(“user_name”)
(2)设置含关键字的Cookies
Response.Cookies(“user_name”)(“name1”)=“张云”
Response.Cookies(“user_name”)(“name2”)=“苏方”
获取含关键字的Cookies
name1=Request.Cookies(“user_name”)(“name1”)
name2=Request.Cookies(“user_name”)(“name2”)
第4章创建ASP动态网页
(2)
1.Session对象
先说两个问题。
(1)Session对象是什么?
Session对象是记载特定用户信息的。
用户从一个页面到另一个页面,直到离开为止的那段时间,Session信息一直存在。
每一用户都会单独获得一个Session,在离开前的任何时间和访问任何页面,都可以存取Session信息。
(2)为什么要用Session对象?
在Web应用程序中,当一个用户访问该应用时,Session类型的变量可以供这个用户在该Web应用的所有页面中共享数据;
如果另一个用户也同时访问该Web应用,他也拥有自己的Session变量,但两个用户之间无法通过Session变量共享信息。
语法:
Session(“Session名字”)=变量或字符串信息
调用:
变量=session(“Session名字”)
也就是利用Session可以保存和提取变量或字符串等信息。
例如:
存储:
Dimusername
username=”阿杜”
Session(“user_name”)=username
读取:
username=Session(“user_name”)
response.writeusername
最后结果为“阿杜”,而且每个页面都可以如此调用,调用是注意,session的名字必须一致才能调出数据。
下面我们看一下利用Session存储数组的信息。
属性:
Timeout
利用Timeout属性可以修改Session对象的有效期时长,默认为20分钟。
Session.Timeout=整数(分钟)
%Session.Timeout=30‘Session有效期改为30分钟%>
方法:
Abandon。
Session对象到期后会自动清除,但到期前可以用Abandon方法强行清除。
Session.Abandon
%Session.Abandon‘Session对象已经被清除了%>
2.Application对象
(1)Application对象是什么?
Application对象是记载所有用户信息的。
Application对象中的信息是公共的,所有用户都可以使用一个Application对象。
(2)为什么要用Application对象?
在Web应用程序中,当一个用户访问该应用时,Application对象的数据量可以供这个所有用户在该Web应用的所有页面中共享数据
Application(“Application名字”)=变量或字符串信息
变量=Application(“Application名字”)
用法与Session是一样的。
Application的方法只有两个方法:
一个是Lock,另一个是Unlock。
其中Lock方法用于保证同一时刻只能一个用户对Application操作。
Unlock则用于取消Lock方法的限制。
<
Application.Lock
Application(“user_name”)=user_name‘将user_name变量存入Application
Application.Unlock
%>
3.Global.asa文件
什么是Global.asa文件?
Global.asa文件用来存放Session对象和Application对象事件的程序,当Session或Application被第一次调用或结束时,就会运行Global.asa文件中对应的程序。
特别注意:
对于一个应用程序来说
(1)该文件的名字必须叫做Global.asa,仅且只有一个。
(2)该文件存放在应用程序的根目录下。
(3)该文件中不包涵任何输出语句。
总结:
1.Session对象是不是一直有效的?
默认时间是多少?
如果要将时间设置为6000秒,如何重新设置?
不是一直有效的。
默认时间是20分钟。
6000秒/60=100分钟
%Session.Timeout=100‘Session有效期改为100分钟即6000秒%>
2.给Application赋值前后,必须进行什么操作?
赋值前必须先锁定,防止其他用户同时更改对象的值。
赋值后必须解除锁定。
第4章创建ASP动态网页(3)
Server对象:
Server对象提供对服务器上的方法和属性的访问,其中大多数方法和属性是为实用程序提供服务的。
首先看它的属性。
ScriptTimeout,用来规定脚本文件执行的最长时间,默认最长时间为90秒。
Server.ScriptTimeout=整数(秒)
Server.ScriptTimeout=900‘设置执行时间最长为900秒
设置的时间,不能小于默认时间,否则以默认时间为准。
如果设置为10,而IIS设置默认值90秒,则脚本在90秒后超时。
方法有一下几种。
CreateObject,创建服务器组件的实例,多用于存取数据库、存取文件。
Server.CreateObject(ActiveXServer组件)
%setconn=server.createobject("
ADODB.Connection"
)‘建立数据库实例%>
如何将虚拟路径转换为真实路径呢?
就需要用MapPath方法。
MapPath,将一个相对路径转化为一个绝对路径,即将虚拟路径转化为物理路径。
Server.MapPath(虚拟路径字符串)
Response.WriteServer.MapPath(“6-1.asp”)
Response.Write“<
br>
Response.WriteServer.MapPath(“../charpter5/5-1.asp”)
输出的结果是:
C:
\Inetpub\wwwroot\asptemp\charpter6\6-1.asp
\Inetpub\wwwroot\asptemp\charpter5\5-1.asp
Execute,停止当前页面,转到新的网页执行,执行完后返回原页面,继续执行Execute后面的代码。
Server.Execute(变量或字符串)
要点总结:
SP文件执行的方法?
ASP的内建对象
Request对象和Response对象的功能
Request(“user_name”)顺序
Response.write输出HTML内容
Response.writeend的功能
Response.redirect
向session中保存数据
Session对象方法Abandon
SessionIDSession_onEnd
Session对象的两个事件
IfSession("
UserName"
)=“”Then
Response.Redirect"
index.a