动态网站设计十八般武艺——ASP篇(四)(转)

在上一期中作者向诸位简要介绍了ASP脚本语言之一VBScript的一些基本常识,本期将继续给大家讲解VBScript的脚本编写方法,并通过展示VBScript在ASP程序编写过程中的一系列实例使大家对VBScript有更进一层的理解。

大家在学习了脚本语言VBScript的变量、常量和过程的基本概念后,本期将继续向各位介绍VBScript的函数和语法。

  函数和过程一样都是命名了的代码块,但它们却有很大的区别,过程完成程序任务,函数则返回值。我们可以这样理解,过程象一个完整的句子,而函数则象一个单词。举个例子,当你想获取某个数的平方根,你只要将该数传给VBScript的Sqr()函数,此函数会立即返回该数的平方根。如:

  A=sqr(9)

  则A=3。熟练掌握脚本语言的函数将给你编写ASP程序带来极大的方便,就以上一期结尾处作者布置给大家的课后练习来说,如果你对脚本语言的函数掌握不够全面,那么解决如此之小的一个问题将很有可能花费你相当大的精力。现在让我们来回顾一下这道课后练习。

  “作者正在用ASP制作一套基于WEB的BBS系统,希望能在其中添加一项特殊功能,即当任何用户登陆该BBS后都能够查阅近七天来所有新发布的信息。”

  如果你不熟悉VBScript,就不会知道VBScript本身提供了一个用来取得日期之间的差或和的函数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仅仅只是忠实的记录了sql查询语句 --- Ailong注)可能由于大家第一次接触SQL语句,一时间无法完全理解它的作用,不过不用担心在今后的章节中作者将专门用一期给大家介绍SQL的使用方法。

  通过上面的学习,大家应该已经能够理解函数在程序中的作用,当然我们不必去死背函数,但要做到熟练运用只有一条捷径--多实践。接下来让我们来看看VBScript的基本语法。

  了解编程语言的朋友一定知道在程序中控制程序流程的语句主要可以分为条件语句和循环语句,在VBScript中可使用以下条件语句:  If...Then...Else语句
  SelectCase语句

  If...Then...Else语句用于计算条件是否为True或False,并且根据计算结果指定要运行的语句。通常,条件是使用比较运算符对值或变量进行比较的表达式,If...Then...Else语句可以按照需要进行嵌套。

  让我们来创建两个范例文件:if1.asp和if2.asp

  将以下语句剪贴到记事簿中,并保存为if1.asp(注意:请将程序中“

  
  


  if1.asp
  
  
  Your First Name


  Your Last Name


  
  


  
  
  将以下语句剪贴到记事簿中,并保存为if2.asp  
  
  ifrespond.asp
  
    lname=request.querystring("Lastname")
  If fname="George" and lname="Washington" then%>
    Hi.You must be the first president!
  
    Hi!Nice to Meet You
  
  
  

转载于:http://blog.itpub.net/10294527/viewspace-124368/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值