670 likes | 927 Views
第一节 ASP 语法简介 一、 ASP 文件的组成 ASP 必须保存为以 .asp 为扩展名的文件。一个“ .asp ” 文件就是一个文本文件,其中可以包括: HTML 语句: <…> 包括的部分。 服务器端的程序代码 : 位于 <%...%> 内。 客户端的程序代码 : 位于 <Script>…</script> 内的代码 最后更新 :2009-12-22. 示例1: 1.asp <html> <head> <title> 一个简单的 ASP 程序 </title> </head> <body>
E N D
第一节 ASP语法简介 一、ASP文件的组成 ASP必须保存为以 .asp 为扩展名的文件。一个“ .asp ”文件就是一个文本文件,其中可以包括: • HTML语句:<…>包括的部分。 • 服务器端的程序代码:位于<%...%>内。 • 客户端的程序代码:位于<Script>…</script>内的代码 最后更新:2009-12-22
示例1:1.asp <html> <head> <title>一个简单的ASP程序</title> </head> <body> <h2 align="center">欢迎您光临我的主页</h2> <p align="center"> <% sj="您来访的时间是:" & date() & time() Response.Write sj '输出结果 %> </body> </html>
示例2: <% Response.Write“<p>今天日期:”&Date& “</p>” Response.Write“<p>现在时间:”&Time& “</p>” %> 从示例中可以看出,ASP文件就是在标准的HTML页面中嵌入了VBScript代码后形成的,而<%与%>之间的内容就是VBScript代码,date(),time()都是VBScript中的函数.
二、ASP文件的约定 • 所有的代码必须放在<%与%>符号之间(仅有Global.asa文件例外) • 在ASP里面,VBScript是默认的脚本语言,如果要在ASP网页中使用其他的脚本语言,可以用以下的方法切换: <%@Language=VBScript%> <%@Language=JavaScript%>
三、ASP文件的注意事项 (1)在ASP程序中,字母不分大小写 (2)在ASP中,凡是用到标点符号的,都是在英文状态下输入的标点符号,否则将出错.只有一种情况除外,就是在字符串中使用标点符号.如下面的冒号: <% a=“大家好:现在开始上课”%> (3)一条ASP语句就是一行,不能将多条ASP语句写在一行里。
三、ASP文件的注意事项 错误的情况: <% a=2 b=3 %> <% a= 2 %> 如果一条ASP语句过长,一行写不下,可以分成多行,但是必须在每行末(最后一行除外)加一个下划线
三、ASP文件的注意事项 (4)养成良好的书写习惯,如恰当的缩进
四、程序注释 • 注释语句不执行,也不会显示在页面上,只是在阅读源程序时才能看到。添加注释是为了方便以后阅读程序。 • 适度的注释 • 单引号('):作为单行的注释,在单引 号(')之后的文字,皆视为注释。 • Rem关键字:作为单行的注释,在 Rem关键字之后的文字,皆视为注释。 经验:在调试程序的时候,可以暂时注释掉一些语句,以便发现问题所在的语句
五、指定语句 • 在ASP中的一般变量的指定语句是“=”,而对象值的指定语句必须使用Set语句。 如: Set fs = Server.CreateObject("Scripting.FileSystemObject") 注意: • 用Server.CreateObject函数生成对象时,VBScript保留保存对象数据的内存区。 Server.CreateObject函数返回内存中该位置的指针。
生成对象变量后,可以用“.”记号调用其属性和方法:生成对象变量后,可以用“.”记号调用其属性和方法: objDictionary.Add someKey • 用完对象变量后,最好将其设置为数值Nothing: Set fs = Nothing
VBScript编程基础 Vbscript脚本是介于html与Visua Basic之间的一种语言,它更接近于高级语言Visua Basic,但比它简单易学,VBScript 是一种脚本语言,可以在HTML文件中直接嵌入VBScript脚本。这使你能够扩展HTML,使它不仅仅是一种页面格式语言。
VBScript代码的基本格式 学习VBScript,首先要掌握在HTML中VBScript 的使用方法,在HTML页面中使用VBScript方法的基本格式为: <html><head><title></title><Script Language=VBScript>Vbscript代码</Script> </head><body></body></html> 左边Vbscript脚本是放在客户端执行的 VBScript编程基础
VBScript代码的基本格式 VBScript脚本也可以在服务器端执行,asp程序是放在服务器端运行的,将Vbscript代码放在服务器端有两种方法。 方法1:<html><head><title></title></head><body><% Vbscript代码 %> </body></html> 方法2 <html><head><title></title></head><body><Script Language="Vbscript" Runat="Server">Vbscript代码</Script></body></html> VBScript编程基础
变量 所谓变量是计算机内存中已命名的存储位置,其中包含了数字或字符串等数据,它使用户便于理解脚本操作的名称,为用户提供了一种存储、检索和操作数据的途径。 1、声明变量 在 VBScript 中,严格的来讲变量是不用声明的, 如:< % Mystring="This is my string" % > 然而,即使在使用变量前不需要去声明变量,也应养成在编程时声明变量的良好习惯,因为这样有助于防止错误发生。声明一个变量意味着告诉脚本引擎,有一个特定名称的变量,这样就可以在脚本中引用该变量。 VBScript编程基础
声明一个变量 <%dim a%> • 声明多个变量 <%dim a,b,c,top 使用逗号分隔变量%> VBScript编程基础
2、为变量赋值 声明了变量就可以使用变量保存数据了,将一个数据保存到变量中去,使用赋值运算符"="。 <html><head><title>asp简单程序</title></head><body><%dim aa="我们开始学习asp了"response.write(a)%></body></html> VBScript编程基础
3、变量的命名规则 变量或常量在命名时要注意的是:第一个字符要用英文字母,不能使用数字,中间也不能使用标点符号和运算符,长度不能超过255个字符,还要注意避开关键字,如:dim,sub,end,等 错误的变量名: (1) 5am (不能用数字开头)(2) a.cb (不能包含标点符号)(3) if (不能使用关键字) VBScript编程基础
4、变量的数据类型 数值类型 字符串类型:字符串类型的数据用string表示,要放在双引号之间。 日期类型:日期类型的数据用Date表示,要放在双#号之间,如:#2009-9-26# 示例 布尔类型 对象类型 空值 VBScript编程基础
< html>< body>< FONT COLOR="Green">< % If Time < #12:00:00# And Time >= #00:00:00# Then %>早上好,今天天气不赖啊 !< % ElseIf Time < #19:00:00# And Time >= #12:00:00# Then %>下午好 !< % Else %>哈喽 ! 今晚你有没有去 IRC 聊天 !< % End If %>< /body>< /html> VBScript编程基础
示例 5、声明常量 计算半径r=5园的面积s <html><head><title>asp简单程序</title></head><body><% const pi=3.14159 '声明一个常量 r=5s=pi*r^2response.write(s)%></body></html> 常量指的是在程序运行过程中其值保持不变的量,它用来保存固定不变的数值,字符串等常数;在vbscript中使用指令const定义常量. const con_a = "学习"const con_b = 12345const con_c = #2005-1-26# VBScript编程基础
1 算术运算符 2 连接运算符 6、运算符 + 加 - 减 * 乘 / 除 \ 取整除法 mod 取模 ^ 幂 + 连接字符串& 连接字符串 运算符优先级,当表达式包含多种运算符时,首先计算算术运算符,然后计算比较运算符,最后计算逻辑运算符。使用括号可以更改这种顺序,程序总是先执行括号中的运算符,然后再执行括号外的运算符。 4比较运算符 And 逻辑与Or 逻辑或 Not 逻辑非 3比较运算符 = 等于 > 大于 < 小于 >= 大于等于 <= 小于等于 <> 不等于 Is 比较两个对象是否相等 VBScript编程基础
示例 <html><head><title>asp简单程序</title></head><body><%dim a1,b1,c1a1=2b1=3c1=a1+b1response.write(c1) '程序执行求和运算显示:5response.write("<br>") dim a3,b3,suma3=5b3="25"sum=a3+b3response.write("<br>") response.write(sum) '字符串b3被转换成了数字显示:30 %></body></html> dim a2,b2,c2,c3a2="认真学习"b2="asp"c2=a2+b2c3=a2&b2response.write(c2) '程序执行连接运算显示:认真学习aspresponse.write("<br>") response.write(c3) '程序执行连接运算显示:认真学习asp VBScript编程基础
示例 <html><head><title>asp简单程序</title></head><body><%dim a,b,ca=5 '为变量a赋值response.write(a) '返回5response.write("<br>") response.write(a=5) '返回Trueresponse.write("<br>") b=a=5 '为变量b赋值response.write(b) '返回Trueresponse.write("<br>") response.write(b=a=5) '返回Falseresponse.write("<br>") response.write(b=a=0) '返回True%></body></html> 解读:在等号"="运算符组成的表达式中,要返回等号左边的变量时,等号"="会做为赋值运算符参与运算,要返回表达式的值时,等号会做为比较运算符参与运算。 VBScript编程基础
数组 我们使用的变量都属于简单变量,每一个变量只可被赋一个确定的数值,如果存储的数据点数较少,使用简单变量是可行的。但如果要存储大批量的数据,使用简单变量就会显得非常繁琐。如:存储50名学生的语文成绩,需要设置50个变量x1,x2,……x50。 所谓数组,是指按一定顺序排列的,具有相同属性的一系列变量的集合.如数组X(50),它包含51个下标变量,依次用X(0),X(1),……,X(50)来表示。这里,X表示数组名,括号里的数字表示数组下标. VBScript编程基础
数组 有关数组的简单说明: (1)数组中下标变量的作用和简单变量相同,都用来存放一个数据。(2)数组中的数据必须是同一类型,不允许在一个数组中存放不同类型的数据。(3)数组变量的下标可以是常数、变量、表达式等,无论哪一种形式,起作用的是具体的数值,与表达式无关。(4)数组命名规则和简单变量一样,“见名知义”(5)数组与FOR循环结合使用,可以很方便地对批量数据进行处理。 VBScript编程基础
数组 数组的类型: 根据数组元素中下标个数的不同,可将数组分为 一维数组、二维数组、多维数组和动态数组 1、一维数组 如果一个数组元素中只有一个下标,这个数组称为一维数组。如A(50),B(10)都是一维数组。 在使用一个数组之前,必须定义,也就是说声明数组, 声明数组也使用关键字dim,只不过数组名后面要带一个圆括号,括号中填写数组长度。 VBScript编程基础
示例 一维数组相当于一行或者一列表格,我们把这个表格起名为A,不过这个表格的排序是从0开始的,如 <html><head><title>asp简单程序</title></head><body><% dim sum '声明一个变量sumDim A(3) '声明长度为4的数组A(0)=60 '为第0位数组元素赋值A(1)=50 '为第1位的数组元素赋值A(2)=80A(3)=90 '对所有数组元素的值求和sum=A(0)+A(1)+A(2)+A(3)response.write(sum)%></body></html> VBScript编程基础
数组 数组的类型: 根据数组元素中下标个数的不同,可将数组分为 一维数组、二维数组、多维数组和动态数组 2、二维数组 如果一个数组元素有两个下标,这个数组称为二维数组。如A(3,8),B(5,10)都是二维数组,它还类似于棋盘的格子,每个格子的交叉点就是数组的一个元素。二维数组元素的第一个下标表示行号,第二个下标表示列号。如DIM A(7,5)定义了一个二维数组,其中第一维下标的最大值为7,第二个下标的最大值是5,每个下标默认最小值为0,所以数组A共包含了8*6=48个下标变量,也就是说它有48个数组元素。 VBScript编程基础
数组 数组的类型: 根据数组元素中下标个数的不同,可将数组分为 一维数组、二维数组、多维数组和动态数组 3、动态数组 动态数组指的是空数组,就是声明一个没有元素的数组,在需要的时候用redim添加元素;当用redim多次添加元素时,只保留最后添加的redim数组元素,前面的会被清空 VBScript编程基础
示例 <html><head><title>asp简单程序</title></head><body><% Dim myarray() '定义一个动态数组redim myarray(2) '重定义数组含有3个元素myarray(2)="asp" '为新定义的数组的最后一个元素赋值redim myarray(5) '再次定义数组myarray(5)="flash" '为数组第六个元素赋值response.write(myarray(2)) '输出myarray(2)的值response.write(myarray(5)) '输出myarray(5)的值'结果只显示myarray(5)的值而myarray(2)被清空了%></body></html> VBScript编程基础
条件语句与循环语句 用条件语句与循环语句可以控制程序的流程 一、条件语句 条件语句通过if去判断一个条件的真假,如果为真(True),就去执行(then)一个任务,如果为假就去执行另一个(else)任务;通常要判断的条件是一个比较运算符的值或用变量表示的一个进行比较的表达式; • 说明:if……then必须写在一行上,“then”是该行的结尾; • if结构块是一个整体,必须以if…then行开始,以end行结束,特别是使用分支嵌套时一定要注意。 • 为使程序结构清晰,一目了然,在编写程序时一般将“任务1”和“任务2”向右缩进两列(或若干列)。 if 条件 then任务1else任务2end if VBScript编程基础
<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>ASP简单程序</title></head><body><%if time >#5:00:00pm# then response.write "晚上好!"else response.write"你好!"end if %></body></html> 示例 <html><head><title>ASP简单程序</title></head><body><%dim mydatemydate=#18:00:00#if mydate>time() then response.write time()end if%></body></html> VBScript编程基础
条件语句与循环语句 一、条件语句 <%dim a'给定密码a="123456789123456789123456789123456789"'检查密码长度if len(a)<6 then response.write "你的密码太短,密码长度至少6位" elseif len(a)>32 then response.write "你的密码太长,密码不能超过32位" end if%> if 条件1 then任务1elseif 条件2 then任务2elseif 条件3 then任务3........else其它任务end if VBScript编程基础
示例 if my_time>=aa and my_time<bb then response.write("早上好,欢迎你的光临")elseif my_time>=bb and my_time<cc then response.write("上午好,欢迎你的光临")elseif my_time>=cc and my_time<dd then response.write("中午好,欢迎你的光临")%> <% elseif my_time>=dd and my_time<ee then %><font color="#FF0000" size="+5" face="华文彩云">下午好,欢迎你的光临</font> <%elseif my_time>=ee and my_time<ff then %><font color="#FF00FF" size="+5" face="华文彩云">晚上好,欢迎你的光临</font> <% else %><font color="#FF00FF" size="+5" face="华文彩云">你好!晚安!</font><% end if %> </body></html> <html><head><title>asp简单程序</title></head><body><%dim aa,bb,cc,dd,ee,ff,my_timemy_time=time()aa=#00:00:00#bb=#07:00:00#cc=#12:00:00#dd=#14:00:00#ee=#20:00:00#ff=#23:59:59# 见备注 VBScript编程基础
条件语句与循环语句 一、条件语句 Select Case 条件 Case 结果1 任务1Case 结果2任务2Case 结果3任务3......... Case else其它任务End Select Select Case 结构提供了 If...Then...ElseIf...结构的一个变通形式,可以从多个语句块中选择执行其中的一个。Select Case 语句提供的功能与简单多分支语句类似,但是可以使代码更加简练易读。Select Case 结构在其开始处使用一个只计算一次的简单测试表达式。表达式的结果将与结构中每个 Case 的值比较,如果匹配,则执行与该 Case 关联的语句块 VBScript编程基础
示例 <%SELECT CASE Visitor_NameCASE "Bill Gates"response.write"Welcome Bill Gates!"CASE "President Clinton"response.write"Welcome President Clinton!"CASE ELSEresponse.write"Welcome Someone!"END SELECT%> 在这个例子中,变量Visitor_Name代表你站点访问者的名字。如果该名字匹配某个条件,则相应的问候语被输出。否则执行CASE ELSE表达式后面的语句。 CASE ELSE语句是可选的。如果你省去这个表达式,并且所有的CASE条件都没有匹配,则不执行任何语句。 VBScript编程基础
示例 <%age=13Select Case age Case 0,1,2,3,4,5 S ="小朋友" Case 6,7,8,9,10,11 S = "儿童" Case 12,13,14,15,16,17 S = "少年" Case Else S = "成人"End SelectS =age&"岁是"&S&"啦!"response.write S %> VBScript编程基础
条件语句与循环语句 二、循环语句 循环用于重复执行一组语句。循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句。 Do...Loop: 当(或直到)条件为 True 时循环。 While...Wend: 当条件为 True 时循环。 For...Next: 指定循环次数,使用计数器重复运行语句。 For Each...Next: 对于集合中的每项或数组中的每个元素,重复执行一组语句。 VBScript编程基础
条件语句与循环语句 二、循环语句 1、Do...Loop循环 (1) Do While condition ...Loop <%dim ii=0Do While i<10 '设置一个入口性循环i = i+1 '使变量自加运算 Loop response.write("循环次数"&i) '10%> VBScript编程基础
条件语句与循环语句 二、循环语句 1、Do...Loop循环 (2) Do ...Loop While condition <%dim jj=0Do '设置一个出口性循环j = j+1 '使变量自加运算 Loop While j >10 '条件不成立但也要循环1次response.write("循环次数"&j)%> VBScript编程基础
条件语句与循环语句 二、循环语句 1、Do...Loop循环 (3) Do Until condition ...Loop <%Dim counter,myNumcounter = 0myNum = 20Do Until myNum = 15myNum = myNum - 1counter = counter + 1Loopresponse.write "循环重复了 " & counter & " 次。"%> VBScript编程基础
条件语句与循环语句 二、循环语句 1、Do...Loop循环 (4) Do...Loop until condition <%Dim counter, myNumcounter = 0myNum = 3DomyNum = myNum + 1counter = counter + 1Loop Until myNum =15response.write "循环重复了 " & counter & " 次。"%> VBScript编程基础
条件语句与循环语句 二、循环语句 2、 While...Wend循环 <%dim ii = 0while i<10i=i+1 response.write i response.write("<br>") Wend%> VBScript编程基础
条件语句与循环语句 二、循环语句 3、 For...Next循环 <%dim sum,isum=0For i=100 To 1 step -1 sum=sum+iresponse.Write i&"<br>"Next response.Write "合计:"&sum %> VBScript编程基础
内置函数 一、时间和日期函数 <html><head><title>时间日期</title></head><body>当前时间是: <% = Now %><br>当前时间是:<% response.write Now() %></body></html> 1、Now 函数 格式:Now()说明:返回当前的日期和时间值。 VBScript编程基础
内置函数 一、时间和日期函数 <html><head><title>时间日期</title></head><body>当前日期是: <% = Date() %><br>当前日期是:<% response.write Date %></body></html> 2、Date 函数 格式:Date()说明:返回当前系统日期。 VBScript编程基础
内置函数 一、时间和日期函数 <html><head><title>时间日期</title></head><body><% response.write Now %><br><% response.write Date %><br><% response.write Time %></body></html> 3、Time 函数 格式:Time()说明:返回当前系统时间。 VBScript编程基础
内置函数 一、时间和日期函数 <html><head><title>时间日期</title></head><body><% response.write Now %><br><% response.write Date %><br><% response.write Time %></body></html> 4、Month 函数 格式:Month(date)说明:返回当前系统时间。 VBScript编程基础
内置函数 一、时间和日期函数 5、Weekday 函数 格式:Weekday(date, [firstdayofweek])参数:date可以代表日期的任意表达式。Firstdayofweek可选,用来指定一周的第一天的常数。默认值周日为1。 VBScript编程基础
内置函数 一、时间和日期函数 <html><head><title>asp简单程序</title></head><body>现在是 :<%=Year(date)%>年<BR>当前月是 :<%=Month(date)%><BR>当前日期是:<%=Day(date)%><BR>今天是星期:<%=Weekday(date)-1%></body></html> VBScript编程基础