ASP教程之Request对象的使用

发表于:2007-09-07来源:作者:点击数: 标签:
在下边的例子中,我们需要制作一个HTML文档Eng.htm和一个asp文档Chinese.asp,HTML文档中列出几行英文,当用户点击某一行英文后,HTML文档将向 服务器 索取Chinese.asp,Chinese.asp将运行服务器端脚本,并将此行英文的中文意思返回给客户机的浏览器。 例4 一个简
  在下边的例子中,我们需要制作一个HTML文档Eng.htm和一个asp文档Chinese.asp,HTML文档中列出几行英文,当用户点击某一行英文后,HTML文档将向服务器索取Chinese.asp,Chinese.asp将运行服务器端脚本,并将此行英文的中文意思返回给客户机的浏览器。   

  例4 一个简单的"英译中"程序:Eng.htm和Chinese.asp  

  Eng.htm:  

  

  

  ASP示例4—Eng.htm

  

  

  

My name is am Jack.



  

I'm from America.



  

I love Chine.



  

    

  Chinese.asp:   

  

  

  ASP示例4—Chinese.asp

  

  

  

此句的中文是:



  



  <%

  if Request("answer")=1 then

  Response.Write "我的名字是杰克。"

  end if

  

  if Request("answer")=2 then

  Response.Write "我来自美国。"

  end if

  

  if Request("answer")=3 then

  Response.Write "我爱中国。"

  end if

  %>

  



  

    

  可以注意到,Eng.htm中的语句  

  My name is am Jack.  

  它是一个链接,但不是链上一个html文档,而是一个asp文档,在文件名后边紧跟着一个"?"这表示其后是上传的的参数,此例中只有一个上传参数answer,它的参数值等于1,如果有两个参数,则参数之间用"amp;"符号连结,例如:"Chinese.asp?answer=1amp;name=Jack"。点击链接以后,剩下的工作就由服务器来做了,服务器运行Chinese.asp,在Chinese.asp中通过if语句判断上传的参数answer的值,再根据只来输出翻译过来的中文意思,而获得上传的参数值正是Request对象的工作,Request("answer")将获得参数answer的值。接着,服务器再用Response对象的"Write函数"将中文意思传送给客户机的浏览器。   

  下边我们再看一例,此例也用了一个html文档Ques.htm和一个asp文档Answer.asp,用户在html文档的两个文本框中各输入一个整数,然后按"提交"按钮,服务器将计算两个整数相加的结果,然后返回给客户机的浏览器。此例与上例有所不同,读者可以细心体会。   

  例5 计算两个整数相加的和

  Ques.htm:  

  

  

  

  ASP示例5—Ques.htm

  

  

  

  


  

请输入相加的两个整数,然后按“提交”:



  

+



  



  


  

  

  Answer.asp:   

  

  

  ASP示例5—Answer.asp

  

  

  <%

  DIM n1,n2,sum  

  n1=Request("num1")

  n1=CInt(n1)

  n2=Request("num2")

  n2=CInt(n2)

  sum=CInt(n1+n2)

  %>

  

<%=n1%>+<%=n2%>=<%=sum%>



  

  

  此例中的Request对象索取的是文本框对象num1和num2("num1"和"num2"是文本框对象的名字,Request可以直接索取其值,而不需要在Answer.asp后面紧跟"?",并附带参数名和参数值)。此外,还用了一个函数CInt(),因为我们要把两个数相加,但是Ques.htm上传的是文本,而不是整数,所以我们要事先把这些值用函数CInt()转换成整数型的,然后再相加。   

  也许您已经注意到语句  

  "
"  

  action(动作)参数是指明执行表单的程序为Answer.asp,而methor(方法)参数则指明表单将信息传送给服务器的方式,主要有POST和GET两种方式,通常我们使用POST方法,因为POST传送的信息量要比GET的多,而且功能要比GET强大。   

  到了这里,您对Request对象也应该有所掌握了。


原文转自:http://www.ltesting.net