日期:2010-05-05  浏览次数:20989 次

  预读提示:要读懂本文,请确保你已经学会使用DW MX ASPVBScript模式的“服务器行为”,但你不须懂得asp语法。

  本文如有阐述错误或技术性错误的话,请各位高手在论坛发贴予以更正。

  自从本人在UDSKY论坛发布有关于用DW MX设计论坛的消息后,网友反响热切,大多数网友是支持的。而且据我了解,许多朋友只熟悉用DW MX来设计静态页,后台程序方面也不太熟。所以笔者先尝试撰写此文供“菜鸟”们事前好好地“补习”一翻。笔者相信,“菜鸟”们个个都不是傻瓜,如果肯努力,别人能做到的,你也能行!

  因局限于DW MX的服务器行为模板功能,完全用它来设计结构复杂的论坛较困难(当然,如果你只是做个比留言本功能更强些的“实用型论坛”是没问题的)。下面和大家切磋一下ASP的基本语法,考虑到我们的““菜鸟””一般对ASP不太熟,本文也不是ASP基础完全教程,但是针对忠于DW MX而初学ASP的用户而写,只简单介绍几个基本对象,方法、属性及简单应用实例,这些在DW MX的ASP服务器程序设计中使用极频繁的;也即是说,先前你并不须要对ASP有丝毫的了解,只要花点时间,练练文中介绍的小例子,记住这几个对象使用方法,然后配合DW MX强大的服务器行为,设计出属于你自己的服务器应用程序。

  如果你是ASP高手,此文对你没什么可读之处,如有错误,请赐教!我们的“菜鸟”级朋友们却不然,虽然网上、书籍有关于此的教程文章多得满天飞,但很少有针对DW MX而作的,而且太多的“语法简介”,令人心烦气燥。好了,闲话少说,转入正题。

  本文涉及到的几个基本对象:

  • Request对象
  • Response对象
  • session对象

  明眼人一看就知这是ASP内建对象的其中三个,使用极频繁,如果你要学好ASP,这几个对象必须熟练掌握。下面一一介绍这几个对象的使用方法、属性等,每讲完一个知识点便即时剖析DW MX生成代码功用,并尝试动手编写实现DW MX的一些功能的代码,不过代码要比DW MX自动生成的简单得多,只要以实例为主,使大家有个感性认识,易于理解和消化。

一、Request对象——接收客户端数据

  “request”的中文译义为“请求”。Request对象是ASP的“眼睛”和“耳朵”,客户端的明暗动静,由它来负责监督,诸如表单提交,URL参数传递等,均被它一一辑拿于手。多说无益,先试试身手再说。打开DW MX,执行“文件”——“新建”命令,弹出“新建文档”对话框,在“常规”选项卡的“类别”中选中“动态页”,动态页项选中“ASP VBScript”,因为我们只要是使用VBScript作为AS的脚本语言,点击“创建”。

  Request对象的语法格式:

  request[集合|属性|方法|(变量)]

  使用request对象可以访问任何基于HTTP请求传递的信息,包括从客户端HTML表单用POSP或GET方法传递的参数、Cookie和用户户认证。

实例一,使用request对象的form方法

  分别插入表单、文本域和扭按,文本域名称为“oo”,表单方法为“POST”,其它两个东东不用理。

  在<body></body>标签中写入以下代码:

<%=request.form("oo")%>

  完整的代码如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>

<body>
<%=request.Form("oo")%>
<form name="form1" method="post" action="">
<input name="oo" type="text" id="oo">
<input type="submit" name="Submit" value="提交">
</form>
</body>
</html>

  其中,文本域名称一定要与request.Form("oo")中的Form("变量")集合中的变量名匹配,才能接收客户端表单提交过来的数据,如本例的“oo”。试按“F12”键预览,在文本域中随便输入一些内容,按“提交”按扭,是不是把刚才输入的内容显示出来了?

  在本例中,我们用到了Request.form方法,它是用来接收表单变量的,还有“<%”、“%>”、“=”这几个符号,“<%”和“%>”是ASP的定界符,凡包含有ASP语句的代码均要用该定界符以区别开其它的HTML代码,并且服务器能对它进行解释。“=”具有输出功能,没有它将不能向客户端输出数据,你可以把这个符号去掉试试与刚才的反应有什么不同(什么也没有显示)。

  除了request.form方法外,还有request.QueryString方法,与request.form不同的是,它是接收URL参数的,诸如大家浏览网页时看到这样的格式地址:

  http://localhost/asp/uio.asp?oo=request对象的使用

  这个地址格式中,用“?”在分开地址信息URL参数,“?”前的“http://localhost/asp/uio.asp”为地址信息,“?”后的“oo=request对象的使用”为URL参数,其中“oo”是承载数据的变量,这个变量名你可以随便叫,应该以英文字母为主,可以包括下划线“_”,但不要以下划线开头。下面,就以request对象的QueryString方法,点击页面中超链接打开另一个页面的同时把附带的数据传递到该页。

实例二,使用request对象的QueryString方法

  目标页:文件名为bbb.asp

  ASP语句:

  <%=request.QueryString("uu")%>

  完整代码: