一、使用 Contents 集合保存会话信息
1、Contents 集合是使用 Session 对象定义的在 ASP 应用程序中的一组变量。这些变量的作用域为用户层,并且在整个 ASP 应用程序中都是可用的。这是Session 对象默认的集合,因此下述两种格式是等价的:
Session.Contents("变量名") Session("变量名")
其中,“变量名”是需要操作的 Session 变量名称。
2、实例代码(1.asp):使用 Session 对象编写一个简单的计数器程序。
<html><head><title>使用 Session 变量</title></head><body><center><p>使用 Session 变量<p></center><%Session.Contents("counter")=Session.Contents("counter")+1%><center><font size=6 face=方正舒体 color=blue>您是第<%=Session.Contents("counter")%>次来访!</font></center></body></html>
二、使用StaticObjects 集合保存会话信息
StaticObjects 集合包含 Session 对象中用 OBJECT 标记创建的所有对象。
1、StaticOBjects 集合的语法格式:
Session.StaticObjects(key)其中参数 Key 指定要检索的属性。
2、创建具有会话作用域的对象:
在 global.asa 文件中,使用 OBJECT 标记并将 SCOPE 属性设置为 “Session" 可以创建有会话作用域的对象。例如:
<OBJECT RUNAT=”Server" SCOPE="Session" ID=名称 PROGID=类名></OBJECT>
3、使用 For Each ...Next 语句遍历 StaticObjects 集合中的每一个对象
StaticObjects 集合可以用于确定对象特定属性的值,或者用于遍历集合并获取所有对象的全部属性。使用循环控制结构可以遍历 StaticObjects 集合中的关键字。脚本如下:
<% For Each objprop in Session.StaticObjects Response.Write objprop & ":" & Session.StaticObjects(objprop) & "<br>" Next %>
4、不能在Session 对象中存储内建对象。例如,下面每一行脚本都将返回错误。
<% set session("varl")=Session set session("var2")=Request set Session("var3")=Response set Session("var4")=Server set Session("var5")Application %>
三、使用 Session 对象存储数组
不仅可以将标量变量和对象存储在Session 对象中,也可以将数组变量存储在 Session 对象中。若要创建一个 Session 数组,应首先声明一个普通数组并对其元素赋值,然后将该数组一个存储在 Session 数组中,若要在检索或改变 Session 数组中的元素,应首先将该数组复制给一个本地数组,然后对本地数组中的元素进行操作,完成修改后将本地数组存储在 Session 对象中。
不要直接更改 Session 数组中的元素。例如,下在的脚本无法运行。
<% Session("StoredArray") (3)="new value" %>
实例代码(2.asp)
<% @ language="vbscript" %><html><head><title>Session 数组应用实例</title><head><body><%dim myarray() '创建一个普通的数组并对其进行初始化redim myArray(5)MyArray(0)="Hello"MyArray(1)="Some other string"Session("StoredArray")=MyArray '将数组存储到 Session 对象中Server.Execute "3.asp" '调用另一个.asp文件Response.Write "<br>执行完毕!"%></body></html>
3.asp页码:
<%LocalArray=Session("StoredArray") '将Session 数组复制给一个本地数组LocalArray(1)="World" '修改本地数组元素的值Response.Write LocalArray(0) & "," & LocalArray(1) '输出本地数组的值Session("StoredArray")=LocalArry '将本数组存储到 Session 对象中%>
零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。