ASP 概览






4.73/5 (11投票s)
2002年3月31日
7分钟阅读

100481
ASP 初学者指南,由初学者撰写。
引言
每次你上网冲浪时,都会遇到各种各样的文件。你会看到 HTML 文件、JPEG 文件、GIF、JPG、MP3、Zip 文件等等,不胜枚举。还有那些奇怪的 .asp 文件。它们是什么?当你填写表单中的一些详细信息,然后点击“提交”,到达一个告诉你注册已完成的页面时,你可能已经注意到你到达的页面的扩展名是 ASP。但它看起来和 HTML 一样!那么这个花哨的扩展名是什么意思呢?嗯,ASP 是 Active Server Pages 的缩写。这意味着什么?很简单——这意味着这些页面是在服务器上运行的。其思想是,访问你网站的客户端计算机通过 ASP 页面向服务器发送一些信息,服务器根据 ASP 文件操纵和处理数据,构建一个适当的页面,然后将其返回给客户端。因此,ASP 允许你与服务器交互,并使用数据库存储信息然后显示信息。我不会解释 ASP 与数据库的使用。这本身就是一个完整的主题。
注意:本文是假设你拥有 HTML 的基本知识而撰写的。
我需要什么?
要开始使用 ASP,你主要需要两样东西。首先,因为 ASP 页面在服务器上运行,你需要一个支持 ASP 的服务器。你可以在本指南的末尾找到一些免费的。你可以使用 Windows 2000 在你的台式电脑上启动一个 Web 服务器。其次,你需要一个编辑器来编写你的 ASP 文件。你可以使用任何纯文本编辑器,如记事本,但如果你有 Visual Studio,我建议你使用 Visual Interdev,一个功能齐全的网页构建套件,而且非常舒适。
我为什么需要?
我一直在等待这个问题,从前两段开始。你问——我为什么需要 ASP?我需要它用于什么目的?嗯,你可以使用 ASP 来
- 使用 ASP 代码构建和维护数据库。
- 设置安全机制,只允许注册用户访问你的网页。
- 操纵表单。
- 构建新闻通讯。
- 为你的网站构建搜索引擎。
- 在聚会上炫耀。
让我们开始吧!
嗯,ASP 中可以使用两种语言。它们是 VBScript 和 JScript。我将在这里教你 VBScript。如果你是 VB 程序员,开始使用 ASP 会非常容易。
开始脚本
就像 JavaScript 一样,你需要以某种方式启动 ASP 脚本,以告诉服务器它是一个脚本而不是纯文本。你是如何做到的?很简单。你用 <%
和 %>
将整个脚本包围起来。在这两个奇怪的东西里面,你编写 ASP 代码。我可能会补充说,你也可以输入 <% Language=VBScript
,但因为 VBScript 是默认的,你可以省略它。我们将从 ASP 对象开始。
对象,请!
就像 JavaScript 一样,ASP 为我们提供了许多对象,它们有自己的方法和属性。我将讨论两个主要的。
Response 对象
Response
对象明确地执行它听起来的功能。它响应你的命令。使用 Response
对象,你可以做很多事情。我将为你提供最常用的方法。
Write
- 就像Document.Write
一样,这个方法将括号中的文本输出到文档。Redirect
- 将你的用户重定向到另一个页面。Cookies
- 允许你创建和更新 cookie。我不会在本文中涉及 cookie。
这些是 Response
对象的基本组件。你是如何使用它的?很简单。通过在对象名称后面使用句点来访问属性或方法。例如
Response.Write("Hello")
Response.Redirect("home/default.htm")
Request 对象
Request
对象允许你从多个来源获取数据,例如表单和 cookie。以下是常见的集合
Form
- 允许你从表单获取信息。我将在后面详细解释。QueryString
- 从查询字符串获取信息。查询字符串是你在有时看到的那些奇怪的地址,例如 http://myserver.com/asp/search.asp?p=Blah&s=1Cookies
- 从 cookie 中检索信息。
用法示例
Request.Form("Name")
这将获取表单的 name
字段。
表单和查询
所以,你有一个表单,你想将表单上的数据传递给 ASP 脚本。嗯,以以下 HTML 页面为例,它包含一个带有三个文本框和一个提交按钮的表单。
<html>
<head><title>ASP Example</title></head>
<body>
<form action="example.asp" method=post>
First name <input size=20 name="fname"><br>
Last name <input size=20 name="lname"><br>
Age <input size=3 name="age">
<input type=submit value="Do it">
</form>
现在我们有了表单。注意 <form>
标签的 action
和 method
属性——action
属性指向 ASP 页面。我们这里使用的方法是 Post
。你也可以使用 Get
,但通常你会使用 Post
(如果你使用了 Get
,你将不得不使用 Response.QueryString
)。我们现在将创建 ASP 页面。
<%
FNAME=Request.Form("fname")
LNAME=Request.Form("lname")
AGE=Request.Form("age")
Response.Write("Hiya " & FNAME & ", what's up mate?")
Response.Write("<BR>So I see that your last name is " & LNAME)
Response.Write(" and that you are " & AGE & " years old.")
%>
一个小解释:用户填写表单。他点击提交。然后,表单将文本框中的数据发送到 ASP 脚本。在 ASP 脚本中,我们通过使用 Request.Form
获取数据。然后,我们使用 response
对象显示一些行。请注意,这两个文件(HTML 和 ASP)都在服务器上。但只有 ASP 文件在从 HTML 文件获取表单信息后在服务器上运行。现在,那个查询是什么?嗯,有两种方法可以将参数传递给 ASP 页面。第一种是通过表单,如你在上一个示例中看到的。另一种是通过 查询,因此参数是这样传递的 "http://blah.com/example.asp?p=1&s=2"。问号(?) 告诉 ASP 它将获取一些参数,而“和”符号 (&) 分隔不同的参数。这里我们传递两个参数——P
的值为 1,S
的值为 2。那么我们如何告诉 ASP 获取这些参数呢?通过使用 Request.QueryString("Blah")
,其中 Blah
是参数名称。例如
<a href="example.asp?print=1">Print 1</a>
<a href="example.asp?print=2">Print 2</a>
你可以构建一个 ASP 页面,获取 print
参数并(通过 Response.Write
)打印相应的欢迎消息,例如。请注意,如果你在表单上使用 Get
方法,你应该使用 QueryString
集合而不是 Request
对象的 Form
集合。
If 语句
像任何编程语言一样,VBScript(因此 ASP 也是)为我们提供了控制语句。if
语句非常重要,没有它就不可能构建 ASP 页面。if
语句的结构
if condition then
...
...
else
...
...
end if
请注意,你不必包含 else
部分。If
用法示例
if age>18 then
Response.Write("Adult")
else
Response.Write("Teenager")
end if
循环
有时你只需要重复一个命令块几次。有时你提前知道重复的次数,有时不知道。当你需要重复固定次数时,你使用 for
循环。结构是
For variable=starting value to> ending value
...
...
Next variable
例如
For I=1 to 10
Response.Write("Hello")
Next I
这段代码将打印“Hello”十次。
有时你需要运行一个命令块,直到满足某个条件。在这种情况下,你使用 while
循环。它的写法如下
Do While condition
...
...
Loop
例如
Do While Age<30
Response.Write("Too Immature")
Loop
摘要
我为你提供了 ASP 的基础知识。你可以使用更多的命令和对象,但这应该能让你有一个很好的开始。我将不胜感激任何批评,因为这是我的第一篇文章。在 附录 中,你会找到有关设置或查找服务器的一些信息。
附录
要练习和运行 ASP,你需要一个支持 ASP 的服务器。你可以使用 Microsoft PWS (Personal Web Server),但我不推荐它,因为它不支持 ASP 的所有功能。如果你有 Windows 2000,你可以在你的家用电脑上使用 IIS (Internet Information Server)。最后,你可以使用一个将托管你的网站的 Web 服务器。有许多免费的 Web 服务器。我建议 Domaindlx.com。
祝你好运!