当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP实用大全-ASP基础(4)

ASP
ASP基础讲座(下)
解决IIS5 HTTP500内部错误
ASP 3.0高级编程(四十六)
ASP 3.0高级编程(四十五)
ASP 3.0高级编程(四十四)
ASP 3.0高级编程(四十三)
ASP 3.0高级编程(四十二)
ASP 3.0高级编程(四十一)
ASP 3.0高级编程(三十九)
ASP 3.0高级编程(三十八)
ASP 3.0高级编程(三十七)
ASP 3.0高级编程(三十六)
ASP 3.0高级编程(三十五)
ASP 3.0高级编程(三十四)
ASP 3.0高级编程(三十三)
ASP 3.0高级编程(三十二)
ASP 3.0高级编程(三十一)
ASP错误代码说明
jscript错误代码及相应解释大全
ASP错误处理

ASP实用大全-ASP基础(4)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 46 ::
收藏到网摘: n/a

ASP基础

VBScript及表单

    

  一、什么是VBScript?

  VBScript是Microsoft Visual Basic Scripting Edition的简称,你可以把它当作是Visual Basic的一个子集,但是这仅仅是从语法上来说的,正如JavaScript和JAVA的关系一样,VBScript和Visual Basic并没有什么本质上的联系。它是一种脚本语言,由VBScript脚本引擎(其实是一个动态连接库VBScript.dll)解释执行。目前它主要用在WWW网页(只有IE能正确查看包含VBScript脚本的网页,如果Netscape要正确查看,则必须安装一个插件)以及微软的WWW服务器IIS支持的ASP。
  VBScript的语法这里就不再赘述,请读者参考其它书籍。

  二、ASP的输出

  像所有讲编程的教材一样,让我们以“Hello World”开始吧。假设我们要在网页里输出“Hello World”,在HTML里是很简单的事,在ASP中怎么做呢?请看下例:
  <%Response.Write ″Hello World″%>
  把它存成一个ASP文件,执行后输出的效果如图1。
  这里我们使用了Response对象的Write方法。Response对象是ASP内置对象之一,也就是说,我们无需创建它就可以直接使用。ASP一共内置了6个对象,它们是Server、Err、Application、Session、Request、Response,关于它们的属性和方法,大家可以参考IIS或PWS的帮助文档。
  下面是另一种输出的方法:
  <%=″Hello World″%>
  这种语法是在ASP中特有的,它的意思是直接把等号“=”后面的内容输出到浏览器。
  接下来让我们看一个稍复杂的例子:
  <script language=″VBScript″ runat=″server″>
  response.write(″1″)
  </script>
  <%response.write(″2″)%>
  <%=″3″%>
  <script language=″jscript″ runat=″server″>
  response.write(″4″);
  </script>
  大家可能奇怪,怎么这回不像以前的写法了呢。前面说过,ASP的代码应该是用<%和%>括起来的呀。其实,只要在<Script>标签里加上runat=″Server″,那么,WWW服务器在遇到包含Runat=″server″的script语句时,会在服务器端对script进行解释,runat=″Server″的作用也就跟<%%>;相同了。而且 只是一种脚本环境,至于你要用什么脚本语言编程,那是你自己的选择。在ASP安装时,已经带有VBscript和JScript的脚本引擎。缺省地,使用VBScript作为脚本语言,不过你也可以用language属性指定你所用的脚本语言。如上例,你可以在一个ASP文件中使用多种脚本语言。
  现在我要考考你了,上例的输出结果是什么呢?“1234”吗?你试一试。输出的竟然是“4231”!原来,IIS处理ASP文件时,总是把文件依次交给系统上安装的所有脚本引擎,而JScript的顺序在VBScript前面。这就是“4”输出在最前面的原因。然后,另一条规则是,在$#@60;script$#@62;括起来的代码和<% %>括起来的代码间,<% %>括起来的总是先被处理。而Response.Write 和“=”则没有先后顺序,按照出现的顺序处理。这就是“23”在“1”前面的道理。

  三、取得表单提交的内容

  我们在网上冲浪的时候,经常会看到有些网页中有些输入框以及按扭。当在输入框中输入一些内容比如姓名,然后按下按扭时,我们所输入的内容就会被浏览器传到服务器上去。网页中的那些同我们交互的东西就组成了一个表单,在HTML里用标签<form>标识。表单总是被提交给一个处理程序,这个处理程序可以是CGI,也可以是ASP。用过CGI的朋友可能知道,在CGI中为了取出用户在表单中的输入信息是件很麻烦的事情,甚至有人专门写了例程来完成这件事情。然后,处理程序又将输出一些提示信息,向用户报告处理结果。从而完成一个交互过程。在ASP中,所有这些操作变得很简单了。请看下面的例子。
  假设服务器上有一个文件form.htm,它只包含一个表单(图2),源代码如下:
  <html>
  <body>
  <form method=″post″ action=″test.asp″>
  姓名:<input type=″input″ name=″xm″>
  <@60;input type=″submit″ value=″确认″>
  </form>
  </body>
  </html>
  点击“确认”键后,表单将请求test.asp处理表单值。我们的test.asp代码为:
 <%
  dim a
  a=Request.Form(″xm″)
  Response.Write a
  %>
  它将在浏览器端显示出我们输入的“张三”字样。
  这里用到了Request对象,在这个对象中保存了所有由form提交过来的数据,它们以集合的形式存在,可以通过元素名取出其中的值。然后我们的程序把它输出到浏览器。真的