友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
asp基础入门篇(DOC格式)-第2部分
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!
语言是 VBScript ,因此当你在 ASP 命令中调用该函数时,脚本引擎会自动将其转换成当前的系统时间。接下来我们将给 test1。asp 添加一点色彩,在 《 body》标识中添加〃 bgcolor=〃《 % =bgc %》〃即变为 《 body bgcolor=〃《 % =bgc %》〃》,并在 《 body》标记前添加如下语句:
《 % If Time 《 #12:00:00# And Time 》= #00:00:00# Then
bgc=〃silver〃
ElseIf Time 《 #19:00:00# And Time 》= #12:00:00# Then
bgc=〃navy〃
Else
bgc=〃red〃
End If
%》
如此一来,当用户在不同的时段访问你的页面时,他们将会看到不同的页面背景色。我们可以做的事情还有很多,譬如你想知道在凌晨至十二点之间浏览你页面的客户的姓名,并向他或她问好,那么下面的这段程序将能助你达成心愿。首先你需要在页面中设置表单,将以下 HTML 代码剪贴到〃 《 % If Time 《 #12:00:00# And Time 》= #00:00:00# Then %》〃之后:
欢迎光临我的主页,请填写以下信息 : 《 FORM METHOD=〃POST〃 ACTION=〃test1。asp〃》
《 P》
First Name: 《 INPUT NAME=〃fname〃 SIZE=〃48〃》
《 P》
Last Name: 《 INPUT NAME=〃lname〃 SIZE=〃48〃》
《 P》
Title: 《 INPUT NAME=〃title〃 TYPE=RADIO VALUE=〃mr〃》Mr。
《 INPUT NAME=〃title〃 TYPE=RADIO VALUE=〃ms〃》Ms。
《 P》
《 INPUT TYPE=SUBMIT》
《 INPUT TYPE=RESET》
《 /FORM》
然后在以上 HTML 代码后面添加如下 ASP 命令:
《 %
title=request。form(〃title〃)
if title=〃mr〃 then
%》
欢迎您 Mr。
。
《 % elseif title=〃ms〃 then %》
欢迎您 Ms。《 % =request。form(〃fname〃) %》。
《 % else %》
《 B》《 font color=blue》欢迎您 《 % =request。form(〃fname〃)&〃 〃&request。form(〃lname〃) %》。 《 /font》《 /B》
《 % end if %》
保存文件 test1。asp ,并在浏览器中以 HTTP 方式进行浏览,如果此时的系统时间在凌晨 0:00:00 和中午 12:00:00 之间的话,浏览器将显示如下画面:
这其实是一个在 Internet 和 Intranet 上常见的功能,即当用户在浏览器端填写完表单后,通过调用一个通用网关程序将用户数据传送到服务器,由服务器进行处理后再将结果返还给客户浏览器。过去为了实现这样的功能必须编写一个独立于 HTML 之外的 CGI 程序,并通过 HTML 进行调用,撇开 CGI 编写复杂等缺点不谈, CGI 的执行效率也是一个大问题,每一个表单 (form) 均须执行一个可执行文档,当多人同时上线使用时,多个文档同时执行,将大大降低 WEB 服务器的执行速度,如今 ASP 提供了与 HTML 完全相融的编程环境,显然要比使用 CGI 便捷得多。
在本期的最后让我们再来看看 ASP 的循环功能,譬如你希望当客户在晚间 7:00 至凌晨 0:00:00 浏览你的页面时,在页面中央显示 6 个笑脸
表示问候,那么你只需要将以下命令剪贴到〃 Good Evening! 〃后面即可: 《 % for i=1 to 6 %》
《 p》《 center》《 img src=〃smile。gif〃 width=〃32〃 height=〃32〃 alt=〃 晚上好 〃》《 /p》《 % next %》
这是一个最最基本的循环语句,它将一个笑脸图片重复调用六次并显示在页面上。当然此例的效果完全可以用 HTML 做到,但是不难发现使用 ASP 大大缩短了代码的重复编写,使得程序具有良好的可阅读性。另外,当你制作一个诸如根据用户投票来给所评测的对象评定星级的评测站点时,使用此法,你就完全不需要为每一个星级制作一幅图片。如果一个对象被评为 4 星级,那只需将一颗星的图片循环显示 4 次,以此类推即可。当然,当工作量较小的时候你不会感觉到 ASP 的好处,然而一旦数据量巨增,你将会深刻的体会到 ASP 动态网站给你带来的前所未有的轻、爽感受 !
ASP基础教程:ASP脚本基础
通过前两篇的学习,相信各位已经对 ASP 的动态网站设计有了一个基本的概念和整体的印象。从本篇开始作者将从脚本语言的使用着手,由浅入深地带领大家探索 ASP 动态网站设计的真正奥秘。
本文第二篇刊登后,很多朋友给我发了〃妹儿〃,希望能尽快看到本文的第三、第四、乃至第。。。。。。篇,甚至有位朋友焦急地要我将 ASP 篇的全文发给他。看到有如此之多志同道合的朋友,令我精神大振。虽然 ASP 早在两年前就已经推出了,但直到今年它才以其灵活便捷的开发过程、良好的 WEB 数据库连接功能受到了国人的重视,然而由于目前国内尚缺乏关于 ASP 开发 WEB 应用程序的详尽教材,因此使得国内广大 WEB 开发者们仍处在闭门啃 E 文的阶段,也包括作者本人。也正因为如此,作者才蒙发了写文章的念头,在得到 Chinabyte 网络学院翁斌先生的大力支持后,各位才得以见到此文。
作者殷切希望能通过此文为广大 WEB 开发者和爱好者提供便利,使大家共同来参加 ASP 的学习和交流,为了顾全不同层次读者的需求作者还是决定从最基本的脚本语言的编制着手,随后再一步一步地讲解 ASP 内建对象、ActiveX 组件以及用 ASP 开发 WEB 应用程序的实例,相信通过一段时间持续的学习,不出几个月各位都能够得心应手地开发自己的动态网站。下面就先请大家跟我来学习一些 ASP 中应用脚本语言(以 VBScript 为主)的基础知识。
在开始学习脚本语言之前,你应该理解一些简单的概念 …变量、进程。所谓变量是计算机内存中已命名的存储位置,其中包含了数字或字符串等数据,它使用户便于理解脚本操作的名称,为用户提供了一种存储、检索和操作数据的途径。程序是由一个或多个进程组成的,在 VBScript 中,进程就是〃指令块〃,通常意义上的进程,如 Sub,只是为了简单的数据处理。
在 VBScript 中,严格的来讲变量是不用声明的,
如:《 % Mystring=〃This is my string〃 % 》
然而,即使在使用变量前不需要去声明变量,也应养成在编程时声明变量的良好习惯,因为这样有助于防止错误发生。声明一个变量意味着告诉脚本引擎,有一个特定名称的变量,这样就可以在脚本中引用该变量。在 VBScript 中声明一个变量可以使用〃Dim〃语句,如下:
《 script language=〃VBScript〃 》
《 !……
Option Explicit ' 要求在脚本中声明所有的变量
Dim Mystring
Mystring=〃This is my string〃
…》
《 /script》
变量的作用域即生命期,决定哪些脚本命令可访问变量。在过程内部声明的变量具有局部作用域。每执行一次过程,变量就被创建然后消亡。而过程外部的任何命令都不能访问它。在过程外部声明的变量具有全局作用域,其值能被 ASP 页上的任何脚本命令访问和修改。声明变量时,局部变量和全局变量可以有相同的名称。而改变其中一个的值并不会改变另一个的值。如果没有声明变量,则可能不小心会改变一个全局变量的值。例如,以下脚本命令返回值 1,虽然有两个名为 Y 变量:
《 %
Dim YY = 1Call SetLocalVariableResponse。Write Y
Sub SetLocalVariable
Dim Y
Y = 2End Sub % 》
由于变量没有显式声明,以下的脚本命令将返回 2。当过程调用将 Y 设置为 2 时,脚本引擎认为该过程是要修改全局变量:
ASP基础教程:ASP脚本变量、函数、过程和条件语句
在上一期中作者向诸位简要介绍了 ASP 脚本语言之一 VBScript 的一些基本常识,本期将继续给大家讲解 VBScript 的脚本编写方法,并通过展示 VBScript 在 ASP 程序编写过程中的一系列实例使大家对 VBScript 有更进一层的理解。
大家在学习了脚本语言 VBScript 的变量、常量和过程的基本概念后,本期将继续向各位介绍 VBScript 的函数和语法。
函数和过程一样都是命名了的代码块,但它们却有很大的区别,过程完成程序任务,函数则返回值。我们可以这样理解,过程象一个完整的句子,而函数则象一个单词。举个例子,当你想获取某个数的平方根,你只要将该数传给 VBScript 的 Sqr() 函数,此函数会立即返回该数的平方根。如:
A=sqr(9)
则 A=3。熟练掌握脚本语言的函数将给你编写 ASP 程序带来极大的方便,就以上一期结尾处作者布置给大家的课后练习来说,如果你对脚本语言的函数掌握不够全面,那么解决如此之小的一个问题将很有可能花费你相当大的精力。现在让我们来回顾一下这道课后练习。
〃作者正在用 ASP 制作一套基于 WEB 的 BBS 系统,希望能在其中添加一项特殊功能,即当任何用户登陆该 BBS 后都能够查阅近七天来所有新发布的信息。〃
如果你不熟悉 VBScrip,就不会知道 VBScrip 本身提供了一个用来取得日期之间的差或和的函数 DateSerial,它的语法如下:
DateSerial(year; month; day)
如果你要指定一个日期,例如:1998 年11月10日,那么 DateSerial 函数中每个参数的取值范围都应该是可接受的,即日的取值应在1和31之间,月的取值应在1和12之间。但是,也可以使用表示某日之前或之后的年、月、日数目的数值表达式为每个参数指定相对日期。以下样例中使用了数值表达式代替绝对日期。在这里,DateSerial 函数返回1998年11月10日之前二十年 (1990…20) 零两个月 (11…2) 又一天 (10…1) 的日期:即 1978 年9月9日。程序如下:
Datep=DateSerial(1998…20; 11…2;10…1)
对于 year 参数,若取值范围是从 0 到99,则被解释为 1900 到 1999 年。对于此范围之外的 year 参数,则使用四位数字表示年份(例如 1800 年)。当任何一个参数的取值超出可接受的范围时,则会适当地进位到下一个较大的时间单位。例如,如果指定了35 天,则这个天数将被解释成一个月加上多出来的日数,多出来的日数取决于其年份和月份。但是如果参数值超出 …32;768 到 32;767 的范围,或者由三个参数指定(无论是直接还是通过表达式指定)的日期超出了可以接受的日期范围,就会发生错误。
当我们了解并掌握了函数 DateSerial 的使用方法后,再来看看作者布置的这道题目,一切就迎刃而解了。下面我将程序中的此部分代码公布如下:itemp=DateSerial(Year(date); month(date); day(date)…7)
itemp=DateValue(itemp)
sql=〃Select * from message Where message。creatime Between #〃&date&〃# And #〃&itemp&〃# 〃
在这里我们又接触到了一组函数 Year;month;day,它们是用来得到一个日期的年、月、日。date 是常数,表示今天日期,而函数 DateValue 则是将字符串变量转化为日期格式的变量。在本段程序的第三行,我们第一次接触到了标准的 SQL 查询语句,这句语句是什么意思呢?
〃Select〃是标准的 SQL 数据库查询命令,通过 SELECT 语句我们可以在数据库中检索数据,并将查询结果提供给用户,此处的〃*〃表示查询该名为〃message〃的数据库中的所有记录,而〃where〃的作用是设定一个查询条件,是为了将数据库中符合条件的记录取出来,〃message。creatime〃是一个储存了数据库中记录创建日期的变量。将整句语句连起来理解就是:查询名为 message 的数据库中的所有记录,并将其中创建日期在今天和今天以前七日以内的所有记录存储在变量 sql 中。可能由于大家第一次接触 SQL 语句,一时间无法完全理解它的作用,不过不用担心在今后的章节中作者将专门用一期给大家介绍 SQL 的使用方法。
通过上面的学习,大家应该已经能够理解函数在程序中的作用,当然我们不必去死背函数,但要做到熟练运用只有一条捷径 …多实践。接下来让我们来看看 VBScript 的基本语法。
了解编程语言的朋友一定知道在程序中控制程序流程的语句主要可以分为条件语句和循环语句,在 VBScript 中可使用以下条件语句: If。。。Then。。。Else 语句
Select Case 语句
If。。。Then。。。Else 语句用于计算条件是否为 True 或 False,并且根据计算结果指定要运行的语句。通常,条件是使用比较运算符对值或变量进行比较的表达式,If。。。Then。。。Else 语句可以按照需要进行嵌套。
让我们来创建两个范例文件:if1。asp 和 if2。asp
将以下语句剪贴到记事簿中,并保存为 if1。asp( 注意:请将程序中〃〃
case 〃ronaldreagan〃
response。write 〃Hi。You must be the actor president!《 p》〃
case 〃jimmycarter〃
response。write 〃Hi。You must be the peanut farmer president!《 p》〃
case 〃naokocharles〃
response。write 〃Hi。Your name reminds me of someone;but I am not sure who!《 p》〃
case else
response。write 〃Hi!Nice to Meet You〃
End Select %》
请注意 Select Case 结构只计算开始处的一个表达式,并且只计算一次,而 If。。。Then。。。ElseIf 结构计算每个 ElseIf 语句的表达式,这些表达式可以各不相同。因此仅当每个 ElseIf 语句计算的表达式都相同时,才可以使用 Select Case 结构代替 If。。。Then。。。ElseIf 结构。Select Case 语句也是可以是嵌套的,每一层嵌套的 Select Case 语句必须有与之匹配的 End Select 语句。
以上给大家介绍的脚本语言 VBScript 的函数和条件语句的使用方法,由于篇幅的缘故不能详细展开,希望各位有志学习 ASP 的朋友,能在课后进行一定程度的自学和练习。在日常开发 ASP 应用程序的过程中作者本人日渐体会到了脚本语言的重要性,灵活运用脚本语言将非但可以大大提高 ASP 应用程序的开发过程,给广大网站制作人员节省大量的时间,而且还能够增强 ASP 应用程序的执行效率和功能。欲善其事必先利其器,因此作者在此强烈建议诸君,熟练掌握脚本语言,这将对你的 ASP 程序开发大有帮助。由于本文不是 VBScript 教程,因此只能用较小的篇幅给大家简要介绍一些 VBScript 基本常识,在下一期介绍完 VBScript 的循环语句后,我们将正式开始学习 ASP 的内建对象,要深入 VBScript,建议大家找些教材进行自学。如果你在看完本文后有任何问题请及时 Mail 我,如果你有什么好的建议也请来信告知,谢谢。
ASP教程:ASP脚本循环语句
在本文上两篇中,我们学习了脚本语言 VBScript 的变量、函数、过程和条件语句,本篇将继续给大家介绍 VBScipt 的循环语句,并对脚本语言在 ASP 中的应用加以总结。
如果有人告诉你学习 ASP 不需要任何编程知识,那么他错了;如果我告诉你学习 ASP 必须掌握一门编程语言,那么我错了。ASP 动态服务器页面环境的特点就在于它是通过一种或几种脚本语言而写成的,脚本语言可以看作是编程语言的简化版,它易于学习和掌握,这给广大动态网站的设计者们提供了相当大的便利。可以这么说 : 脚本语言运用的得当与否直接关系到 ASP 应用程序的优与劣。继上一篇我们学习了脚本语言 VBScript 的函数和条件语句后,今天我们继续来看看 VBScript 中的循环语句。
循环语句的作用就是重复执行程序代码,循环可分为三类:一类在条件变为〃假〃之前重复执行语句,一类在条件变为〃真〃之前重复执行语句,另一类按照指定的次数重复执行语句。在 VBScript 中可使用下列循环语句:
Do。。。Loop: 当(或直到)条件为〃真〃时循环。
While。。。Wend: 当条件为〃真〃时循环。
For。。。Next: 指定循环次数,使用计数器重复运行语句。
For Each。。。Next: 对于集合中的每项或数组中的每个元素,重复执行一组语句。
我们先来看看 Do。。。Loop,它是可以多次(次数不定)运行语句块。当条件为〃真〃时或条件变为〃真〃之前,重复执行语句块。请看下例: 《 html》《 head》
《 title》DoLoop。asp《 /title》《 body bgcolor=〃#FFFFFF〃》《 /head》《 p》《 /p》
《 p》请将今年到本月为止的每个月份的销售结算记录填写在本页之上。《 P》
《 %
counter = 1
thismonth = month(now())
Do while counter 《 thismonth + 1
response。write 〃 〃 & counter & 〃 月份 : 〃
response。write 〃______________________________〃 & 〃《 BR》《 br》〃
If counter 》13 then
exit do
end if
counter = counter+1
Loop
%》
《 hr》《 /body》《 /html》
这段 ASP 程序运用循环语句制作了一张销售结算记录表,将以上代码剪贴至记事簿保存为 DoLoop。asp,并在浏览器中以 HTTP 方式进行浏览,根据当前的月份的不同,你将看到如下图的结果。
我们来分析一下此段程序,我们的目的是要根据当前的月份打印一张表格,首先我们建立一个计数器〃count〃并将其值设为 1,然后我们用函数 month() 和 now() 得到当前的月份,最后建立循环,当 count 的值小于当前月份的值加 1 的时候,即显示月份值及一条横线并将 count 的值加 1,循环语句重复执行直到以上条件为假时退出循环。其中如果 count 大于 1
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!