首页
Portal
业界资讯
社区
BBS
我的家园
Space
个人空间
导读
Guide
登录
/
注册
用户名
Email
自动登录
找回密码
密码
登录
注册
搜索
搜索
本版
帖子
用户
本版
帖子
用户
帖子
好友
道具
勋章
收藏
任务
淘帖
门户
导读
设置
我的收藏
退出
腾讯QQ
微信登录
首页
›
≡≡网络技术≡≡
›
编程语言
›
ASP内置对象详解之Session对象
返回列表
ASP内置对象详解之Session对象
[ 复制链接 ]
灰儿
2006-11-25 21:02:52
<P align=center>ASP内置对象详解之Session对象</P><P> Session其实指的就是访问者从到达某个特定主页到离开为止的那段时间。每一访问者都会单独获得一个Session。在Web应用程序中,当一个用户访问该应用时,Session类型的变量可以供这个用户在该Web应用的所有页面中共享数据;如果另一个用户也同时访问该Web应用,他也拥有自己的Session变量,但两个用户之间无法通过Session变量共享信息,而Application类型的变更则可以实现站点多个用户之间在所有页面中共享信息。</P><P> 1、SessionID属性</P><P> 该属性返回当前会话的唯一标志,为每一个Session分配不同的编号。<BR> 我曾在开发过程中就遇到对用户的控制问题。它要实现的功能就是,针对某个网站的一个模块,当一个会员登录后正在看此模块时,另一个人用同样的会员名登录,就不能浏览这个模块。也就是说一个会员名同时只能一个人浏览此模块。我通过用会员名(假设为UserID,唯一)和SessionID来实现了控制。当会员登录时,给这个会员一个Session记录登录状态如:Session("Status")="Logged",同时把这个会员的Session.SessionID写入数据库。当他要浏览此模块时,先判断其是否登录,若已经登录再判断它的SessionID是否与数据库记录的相同,如果不同则不能访问。这样,当另一个用户用相同的会员名登录时,那么数据库中记录的就是新的SessionID,前者访问此模块时就不能通过检查。这就实现了一个会员名同时只能一个人浏览某个模块。这个功能在一些收费网站有很有特别作用,它防止了一个会员名给多个人浏览的问题,为公司保障了利益。</P><P> 2、TimeOut属性</P><P> 该属性用来定义用户Session对象的时限。如果用户在规定的时间内没有刷新网页,则Session对象就会终止。一般默认为20分钟。 </P><P> 3、Abandon方法</P><P> 该方法是Session对象的唯一方法,可以清除Session对象,用来消除用户的Session对象并释放其所占的资源。如: <% Session.Abandon %> </P><P> 4、Session_OnStart和Session_OnEnd事件</P><P> 和Application一样,当对象的例程每一次启动时触发Session_OnStart事件,然后运行Session_Onstart事件的处理过程。也就是说,当服务器接收到应用程序中的URL腍TTP请求时,触发此事件,并建立一个Session对象。同理,这个事件也必须定在Global.asa文件中。</P><P> 当调用Session.Abandon方法时或者在TimeOut的时间内没有刷新,这会触发Session_OnEnd事件,然后执行里面的脚本。Session变量与特定的用户相联系,针对某一个用户赋值的Session变量是和其他用户的Session变量完全独立的,不会存在相互影响。</P><P> Session应用一例:</P><P> 与Application一样,一个被定义为Session类型的数组只能将整个数组作为一个对象,用户不能直接改变Session数组中某个元素的值。为了创建一个Session数组,需先定义一个普通的数组,并对它的每一个元素赋初值,最后把它定义为一个Session数组。如:<BR><%<BR>dim array()<BR>array=array("jeff","zhu","male")<BR>Session("info")=array<BR>Response.write Session("info")(0) &"-"<BR>Response.write Session("info")(1) &"-"<BR>Response.write Session("info")(2) &"<br>"<BR>%><BR><hr><BR><%<BR>array(0)="jun"<BR>array(1)="li"<BR>array(2)="female"<BR>Session("info")=array<BR>Response.write Session("info")(0) & "-"<BR>Response.write Session("info")(1) & "-"<BR>Response.write Session("info")(2) & "<br>"<BR>%> <BR> 以上这段程序输出结果是:<BR> jeff-zhu-male<BR> _____________<BR> jun-li-female <BR></P>
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
回复
本版积分规则
回帖后跳转到最后一页
灰儿
管理员
9836篇
主题总数
7
总热度
提问
+关注
产品动态
2024-05-13
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
2024-05-13
核心路由器十项性能指标
2024-05-11
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
2024-05-10
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
2024-05-04
Switch EdiZon SE 金手指插件使用 图文教程
2024-04-29
网御星云入侵防护系统_V6000流量控制配置实例
2024-04-23
电子书在线阅读和下载网址推荐
2024-04-23
泛微(weaver)e-cology_V10公文管理,公文环节(过程定义)设置
热点推荐
1
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
2
核心路由器十项性能指标
3
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
4
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
5
Switch EdiZon SE 金手指插件使用 图文教程
6
网御星云入侵防护系统_V6000流量控制配置实例
7
电子书在线阅读和下载网址推荐
8
泛微(weaver)e-cology_V10公文管理,公文环节(过程定义)设置
热门板块
PC操作系统
启动和引导
手机操作系统
硬件相关
办公软件
多媒体技术
产品动态
2024-05-13
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
2024-05-13
核心路由器十项性能指标
2024-05-11
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
2024-05-10
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
2024-05-04
Switch EdiZon SE 金手指插件使用 图文教程
2024-04-29
网御星云入侵防护系统_V6000流量控制配置实例
2024-04-23
电子书在线阅读和下载网址推荐
2024-04-23
泛微(weaver)e-cology_V10公文管理,公文环节(过程定义)设置
热点推荐
1
防火墙指标:吞吐量、时延、新建连接速率、并发连接数
2
核心路由器十项性能指标
3
神州数码(DCN) DCME-320 路由器(linux软路由)常用命令详解
4
泛微(weaver)e-cology_V10公文管理模块套红模板制作教程
5
Switch EdiZon SE 金手指插件使用 图文教程
6
网御星云入侵防护系统_V6000流量控制配置实例
7
电子书在线阅读和下载网址推荐
8
泛微(weaver)e-cology_V10公文管理,公文环节(过程定义)设置
热门板块
PC操作系统
启动和引导
手机操作系统
硬件相关
办公软件
多媒体技术
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言
了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言
了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。