首页 百科知识 Session对象

Session对象

时间:2022-10-15 百科知识 版权反馈
【摘要】:ASP中使用Session对象来记录特定客户的信息,这些信息在用户从一张网页跳转到另一张网页时不会丢失,Session对象所记录的信息被当前客户机的所有网页共享。利用Session对象存储的数据并不是永远有效,如果没有特别说明,默认存储时间为20分钟。如果客户端超过20分钟没有向服务器提出请求或刷新Web 页面,该Session对象就会自动结束。Session.Timeout属性的使用格式如下:对象过期之前可以使用Abandon 方法强行清除当前客户的Session对象中存储的所有信息。

6.3.3 Session对象

当从一张网页转跳到另一张网页时,前一张网页中以变量、常量等形式存放的数据会丢失。ASP中使用Session对象来记录特定客户的信息,这些信息在用户从一张网页跳转到另一张网页时不会丢失,Session对象所记录的信息被当前客户机的所有网页共享。

1. 利用Session存储信息

利用Session存储信息,与前面学习的利用变量存储信息很相似。使用格式如下:

Session("Session名称")=变量或字符串信息

例如,

<%Session("userName")="张三"  '将字符串存入Session

Session("age")=19         '将数字信息存入Session

Dim a

a="wweer@126.com"

Session("email")=a         '将变量的值存入Session

%>

注意:Session对象还可以存储数组信息,请读者查阅相关的参考书籍。

2. 读取Session信息

读取Session信息和读取变量信息一样简单,它可以放在赋值语句中或其他的地方。例如,

<% Dim b

b=Session("userName")

Response.write Session("userName")

%>

3. 利用Session.Timeout属性设置Session有效期

利用Session对象存储的数据并不是永远有效,如果没有特别说明,默认存储时间为20分钟。如果客户端超过20分钟没有向服务器提出请求或刷新Web 页面,该Session对象就会自动结束。Session.Timeout属性的使用格式如下:

Session("Session变量名")=intnum   'intnum是超时值,单位为分钟

例如,使用Session.TimeOut属性设置Session有效期为60分钟。

<% Session.Timeout=60   '将Session有效期设为60分钟 %>

4. 利用Session.Abandon 方法清除Session对象中的信息

对象过期之前可以使用Abandon 方法强行清除当前客户的Session对象中存储的所有信息。使用格式如下:

Session.Abandon

例如,

<%

Session("userName")="张三"  '将字符串存入Session

Session("age")=32       '将数字信息存入Session

Session.Abandon        '清除Session

Response.write Session("userName")'Session已经清除,所以不会输出任何信息

%>

使用Session对象实现6-19.asp类似的功能,增加了一个注销功能,由6-20-1.asp实现,把6-20.asp和6-20-1.asp放置在同一个文件夹。

-------------------------清单6-20 6-20.asp --------------------------

<html>

<head>

<title>Session综合示例</title>

</head>

<body>

<% if Session("UserName")<>"" then

Response.write"欢迎您:"&Session("UserName")

Response.write "<a href=6-20-1.asp>注销</a>" '将HTML代码插入asp中

else

%>

<table width="98%" height="30" border="0" cellpadding="0"

cellspacing="1" bgcolor="#666666">

<tr bgcolor="#CCCCCC">

<td>

<form name="form1" method="post" action=""> 'HTML表单

请输入:&nbsp;&nbsp;用户名:

<input name="UserName" type="text" id="UserName" size="12">

电子邮件:

<input name="Email" type="text" id="Email" size="12">

<input type="submit" name="Submit" value="确定">

</form>

</td>

</tr>

</table>

<%

if request.Form("UserName")<>"" and request.Form("Email")<>"" then

Session("UserName")=Request.Form("UserName")

Session("Email")=Request.Form("Email")

Response.redirect("6-20.asp")'相当于刷新本页

Response.end

end if

end if

%>

</body>

</html>

------------------------清单6-20-1 6-20-1.asp ----------------------

<%

Session.Abandon      '清除Session,实现注销功能

Response.redirect "6-20.asp" '转到6-20.asp页面

%>

--------------------------------------------------------------------

6-20.asp的调试结果与6-19.asp相似。

注意:本例中有一行asp代码Response.write "<a href=6-20-1.asp>注销</a>",它将一段HTML代码<a href=6-20-1.asp>注销</a>以字符串的形式写在Response.write的后面,这是将HTML代码插入asp代码中的基本方法。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈