1、 浏览器输出
response.write 命令用来向浏览器写输出
<%
response.write("Hello World!")
%>
简写形式:
<%="Hello World!"%>
在 ASP 中使用 VBScript
你可以在 ASP 中使用若干种脚本语言。不过,默认的脚本语言是 VBScript
在 ASP 中使用 JavaScript
如果需要使用 JavaScript 作为某个特定页面的默认脚本语言,就必须在页面的顶端插入一行语言设定:
<%@ language="javascript"%>
<html>
<body>
<%
Response.Write("Hello World!")
%>
</body>
</html>
子程序
ASP 源代码可包含子程序和函数:
<html><head>
<% 定义子程序
subvbproc(num1,num2)
response.write(num1*num2)
endsub
%>
</head>
<body>
<p>Result: <%call vbproc(3,4)%></p> 调用子程序
</body></html>
将 <%@language="language" %> 这一行写到 <html> 标签的上面,就可以使用另外一种脚本语言来编写子程序或者函数:
<%@ language="javascript"%>
<html><head>
<%
functionjsproc(num1,num2)
{
Response.Write(num1*num2)
}
%>
</head>
<body>
<p>Result: <%jsproc(3,4)%></p>
</body></html>
程序嵌套
<%IfSession("screenres")="low" Then%>
This is the text version of the page
<%Else%>
This is the multimedia version of the page
<%End If%>
ASP 表单和用户输入
Request.QueryString 和 Request.Form 命令可用于从表单取回信息,比如用户的输入。
Request.QueryString 命令用于搜集使用 method="get" 的表单中的值。使用 GET 方法从表单传送的信息对所有的用户都是可见的(出现在浏览器的地址栏),并且对所发送信息的量也有限制。
<body>
<%
response.write(request.querystring("fname"))
response.write(" " &request.querystring("lname"))
%>
</body>
Request.Form 命令用于搜集使用 "post" 方法的表单中的值。使用 POST 方法从表单传送的信息对用户是不可见的,并且对所发送信息的量也没有限制。
<body>
<%
response.write(request.form("fname"))
response.write(" " &request.form("lname"))
%>
</body>
Application 对象
在一起协同工作以完成某项任务的一组 ASP 文件称作应用程序(application)。ASP 中的 Application 对象用于将这些文件捆绑在一起。Application 对象用于存储和访问来自任何页面的变量,类似于 session 对象。不同之处在于,所有的用户分享一个 Application 对象,而 session 对象和用户的关系是一一对应的。
Application 对象存有会被应用程序中的许多页面使用的信息(比如数据库连接信息)。这意味着可以从任何的页面访问这些信息。同时也意味着你可在一个地点改变这些信息,然后这些改变会自动反映在所有的页面上。
存储和取回Application 变量
Application 变量可被应用程序中的任何页面访问和改变。可以像这样在 "Global.asa" 中创建 Application 变量:
<script language="vbscript"runat="server">
Sub Application_OnStart
application("vartime")=""
application("users")=1
End Sub
</script>
在上面的例子中,我们创建了两个 Application 变量:"vartime" 和 "users"。
可以像这样访问 Application 变量的值:
There are
<%
Response.Write(Application("users"))
%>
active connections.
.asa文件
首先.asa是文件后缀名,它是Active Server Application的首字母缩写。Global.asa 文件是一个可选的文件,它可包含可被 ASP 应用程序中每个页面访问的对象、变量以及方法的声明。所有合法的浏览器脚本都能在 Global.asa 中使用。Global.asa文件可以管理在ASP应用中两个非常苛刻的对象:Application、Session。
它其实是一个可选文件,程序编写者可以在该文件中指定事件脚本,并声明具有会话和应用程序作用域的对象。该文件的内容不是用来给用户显示的,而是用来存储事件信息和由应用程序全局使用的对象。该文件必须存放在应用程序的根目录内。每个应用程序只能有一个Global.asa文件。
关于Global.asa文件最常见的错误概念是它能为一般的使用的函数和子程序用作书库。Global.asa文件仅能用于创建对象的引用和俘获启动,以及结束Application对象和Session对象。
Global.asa 它可包含可被 ASP 应用程序中每个页面访问的对象、变量以及方法的声明。所有合法的浏览器脚本都能在 Global.asa 中使用。
Application 事件
Session 事件
<object> 声明
TypeLibrary 声明
#include 指令
Global.asa文件主要基于会话级事件被访问,在以下三种情况下被调用:
1,当Application_OnStart或Application_OnEnd事件被触发。
2,当Session_OnStart或Session_OnEnd事件被触发。
3,当引用一个在Global.asa文件里被实例化的对象(Object)。
#include 指令用于在多重页面上创建需重复使用的函数、页眉、页脚或者其他元素等。
<html>
<body>
<h2>Words of Wisdom:</h2>
<p><!--#includefile="wisdom.inc"--></p>
<h2>The time is:</h2>
<p><!--#includefile="time.inc"--></p>
</body>
</html>
关键词 Virtual
关键词 virtual 指示路径以虚拟目录开始。
如果 "header.inc" 文件位于虚拟目录 /html 中,下面这行代码会插入文件 "header.inc" 中的内容:
<!-- #include virtual="/html/header.inc" -->
关键词 File
关键词 File 指示一个相对的路径。相对路径起始于含有引用文件的目录。
假设文件位于 html 文件夹的子文件夹 headers 中,下面这段代码可引用 "header.inc" 文件的内容:
<!-- #include file="headers\header.inc" -->
Response对象
Response.End 停止输出
Response.Buffer=true 是否缓存页面输出
Response.Clear清空缓存
Response.Flush 立即发送缓存到浏览器
<%Response.Expires=-1%> 缓存时间,-1表示不缓存,每次访问都刷新
Response.IsClientConnected=true 用户是否保持连接
Request 对象
用于从用户那里取得信息
<%
If Request.QueryString<>""Then
IfRequest.QueryString("name")<>", " Then
name1=Request.QueryString("name")(1)
name2=Request.QueryString("name")(2)
end if
end if
%>
集合 | 描述 |
ClientCertificate | 包含了在客户证书中存储的字段值 |
包含了 HTTP 请求中发送的所有 cookie 值 | |
包含了使用 post 方法由表单发送的所有的表单(输入)值 | |
包含了 HTTP 查询字符串中所有的变量值 | |
包含了所有的服务器变量值 |
http_user_agent
remote_addr
remote_host
request_method
server_name
server_port
server_software
Application 对象
Web 上的一个应用程序可以是一组 ASP 文件。这些 ASP 在一起协同工作来完成一项任务。而 ASP 中的 Application 对象的作用是把这些文件捆绑在一起。
Application 对象用于存储和访问来自任意页面的变量,类似 Session 对象。不同之处在于所有的用户分享一个 Application 对象,而 session 对象和用户的关系是一一对应的。
Application 对象掌握的信息会被应用程序中的很多页面使用(比如数据库连接信息)。这就意味我们可以从任意页面访问这些信息。也意味着你可以在在一个页面上改变这些信息,随后这些改变会自动地反映到所有的页面中。
集合 | 描述 |
|
包含所有通过脚本命令追加到应用程序中的项目。 |
| |
包含所有使用 HTML 的 <object> 标签追加到应用程序中的对象。 |
| |
方法 | 描述 | |
从 Contents 集合中删除一个项目。 | ||
从 Contents 集合中删除所有的项目。 | ||
防止其余的用户修改 Application 对象中的变量。 | ||
使其他的用户可以修改 Application 对象中的变量(在被 Lock 方法锁定之后)。 | ||
事件 | 描述 | |
当所有用户的 session 都结束,并且应用程序结束时,此事件发生。 | ||
在首个新的 session 被创建之前(这时 Application 对象被首次引用),此事件会发 |
Session对象
ASP Server 对象的作用是访问有关服务器的属性和方法。其属性和方法描述如下:
属性 | 描述 |
设置或返回在一段脚本终止前它所能运行时间(秒)的最大值。 | |
方法 | 描述 |
创建对象的实例(instance)。 | |
从另一个 ASP 文件中执行一个 ASP 文件。 | |
返回可描述已发生错误状态的 ASPError 对象。 | |
将 HTML 编码应用到某个指定的字符串。 | |
将一个指定的地址映射到一个物理地址。 | |
把一个 ASP 文件中创建的所有信息传输到另一个 ASP 当第二个 ASP 完成任何时,它不会返回到第一个 ASP 页面。 注释:Transfer 方法是 Response.Redirect 的一个高效的替代方案。重定向强制 Web 服务器处理额外的请求,而 Server.Transfer 在服务器上向另外的 ASP 页面传输执行,避免了额外的周折。 | |
把 URL 编码规则应用到指定的字符串。 |
ADO
从 ASP 页面访问数据库
从 ASP 文件内部访问数据库的通常途径是:
- 创建至数据库的 ADO 连接(ADO connection)
- 打开数据库连接
- 创建 ADO 记录集(ADO recordset)
- 打开记录集(recordset)
- 从数据集中提取你所需要的数据
- 关闭数据集
- 关闭连接