session对象

2025-01-25

session对象(共3篇)

session对象 篇1

ASP是目前广泛使用的动态网页制作技术,很多电子商务网站都使用ASP技术进行开发。在电子商务网站开发和运行中,防止非法用户登录,保存登录用户信息和用户购物信息,在网站的各页间共享信息,是网站必须具备的功能。这些功能可以通过ASP的Session对象和Session数组实现。

本文结合实例,介绍利用Session对象在网站开发中保存、传递登录用户信息以及利用Session数组同时保存、传递多个信息的方法。

一、Session对象

1. Session对象的作用

Session对象是ASP的内置对象之一,负责记载单个用户的信息。不同用户的信息用不同的Session对象记载。Session对象最大的特点是,Session-旦被创建,网站中各页都可以读取它。Session对象又称为会话级对象,当一个用户访问网站时,即启动了一个Session对象,即使该用户在网站的各页间跳转时,该Session信息一直存在,网站的任何一个页面都可以读取它,直至该用户离开网站。

Session对象有有效期,一般为20分钟。当用户离开网站或在Session有效期内不再点击网站的任何内容时,该Session对象会自动被删除。

2. Session对象的创建与读取

可以把登录用户的用户名、密码等信息存储在Session中。创建Session的语句为:Session("Session名字")=变量或字符串信息。读取Sessi on信息的语句为:变量名=Session("Session名字")。

Session数组的创建和读取与简单变量基本上是一样的,不同的是一般的Session变量只能存储一个数据,而Session数组能够存储多个数据。Session数组当成一个整体看待,只能把一个数组整体存入或取出。

二、Session对象应用实例

1. 利用Session对象防止非法用户访问并在网站内各页间传递、保持用户信息

在互联网的搜索引擎中,输入查询关键词,便会找到包含该关键词的若干网页,点击即可进入,这对网站的安全构成了威胁。网站可以利用Session对象,控制用户必须先登录,登录成功后才能访问其他网页。控制的方法是在其他网页的开头加上一段程序:

<%

If Session ("User_Name")=""then'若Session("User_Name")为空,则表示用户没有登录过

Response.Redirect"Login.asp"'直接转入登录页(Login.asp)

End%>

如果用户在登录页登录了,则用<%Session ("User_Name")="用户名"%>语句创建名为"User_Name"的Session,将用户名存入。登录页Login,asp主要代码如下:

,用户要填写的登录表单,略<%

If Request.Form("User Name")>""Then'若用户填写了用户名,则

Session ("User Name")=Request.Form ("User_Name")'将用户名存入名为User_Name的Session变量中

End If%>

存储用户名的Session建立后,用户再访问其他页时,其他页都可以通过读取Session ("User_Name")的值获得该用户信息。

2. 利用Session数组在页间传递、保持用户购物信息

可以利用Session对象具有的“一旦创建,各页共享”的特点,以及Session数组可以一次传递多个变量的特点,为网站制作一个简易购物车。将用户在浏览商品页选择的商品名称及数量,传递到“查看购物篮”页。以下给出制作简易购物车实例。

(1)供用户浏览、选择商品的页面程序SelectProduct1.asp部分代码如下:

<%

dim ar1(2)'声明一个数组ar1

dim ar2(2)……

....

If Request("b1").Count>0 Then'若表单项b1不空,则用户选择了该产品

ar1(0)=Request("b1")'将获取的商品名称存入ar1数组的第一个元素中

ar1(1)=Request("n1")'将获取的商品数量存入ar1数组的第二个元素中

Session ("array_s1")=ar1'将数组ar1存入名为array_s1的Session数组中

Session("bz1")=1'将1存入名为bz1的Session中,做标记用,表示数组不空

End If

……'其他商品依次类推

%>

请选择商品,每件100元:

篮球

购买数量'n1为接受数量的文本框,默认值为1

购买其他商品

查看购物车.

本页中,若用户选择了一个商品,则通过Request对象分别获取商品名称和购买数量,存入数组,再将该数组整体存入Session中,以便在“查看购物车“页中将所选商品名称和购买数量读出来。

(2)其它商品页程序同SelectProduct1.asp。

(3)“查看购物车”页程序Display.asp如下:

<%

If Session ("bz1")=1 Then

ar1=Session("array_s1")'将Session数组array_s1整体取出,写入名为ar1的数组变量中

Response.Write ar1 (0)+" "+ar1 (1)+"
"'将数组中各元素输出,即显示商品名称和购买数量

End If

……'其他商品依次类推

%>

三、Session对象与隐藏域的综合应用

隐藏域是表单中类型为Hidden的文本框,该文本框在页面上不可见。表单提交时,隐藏域的值一并被提交。利用的这个特点,可以将登录者的用户名,即Session("User_Name")的值,作为隐藏域的值,在用户提交购物表单时一并提交。隐藏域定义与赋值关键代码如下:

"

四、使用Session对象时应注意的问题

Session对象虽然功能非常强大,但也有一定的局限性,使用时应充分注意。

Session的使用要借助于客户端。若某客户端机器出现问题,则网站对该用户的记载中断。同时,服务器与客户端的每次连接时要占用网络资源,传递的数据量较多时将影响网速。

五、总结

Session对象在网站开发中起着非常重要的作用。利用Session对象和Session数组,在网站各页间可以一次传递单个或多个数据。Session对象占用大量的网站资源,应注意使用后尽快删除。合理地使用Session,将有助于提高网站开发的效率。

摘要:阐述了Session对象的作用及应用方法,指出了Session对象的特点,并在此基础上给出了Session对象的几个应用实例。最后对Session对象的局限性作出了分析。

关键词:ASP对象,ASP程序设计,Session对象

参考文献

[1]菜翠平尚俊杰:网络程序设计ASP(第2版)[M].北京:清华大学出版社,北方交通大学出版社,2004年2月P73

[2]石志国王志良薛为民:ASP精解案例教程[M].北京:清华大学出版社,北方交通大学出版社,2004年1月P118

[3]唐晏:ASP.net页面之间数据传递的实现[J].计算机应用研究,2006 Vol.23 No.5 P.228

session对象 篇2

关键词:Session对象,会话,存储

Session对象用来保存用户的信息。在Session对象中存储的变量保持着单一用户的信息, 而且在一个应用程序中的全部页面都是可用的。Session对象只针对单独的网站用户, 不同的客户端有自己专门的Session信息, 所以不同的客户端不能相互访问, 当用户关闭了浏览器或超过了Session对象设定的有效时间时, 存储在Session对象中的变量信息就会关闭。

1 Session对象概念

当用户操作某个应用程序时, 打开后做点改变后再关闭, 这就很像一次会话, 也就是Session。计算机知道用户在何时打开和关闭的应用程序。但是在WEB上, 因为HTTP地址不能留存状态, 所以WEB服务器不清楚用户是谁和用户做了什么。要解决这个问题, ASP为每个用户创建了一个cookie, 这个cookie是唯一的。客户端接收到传来的cookie含有用户的信息。这个接口就称作Session对象。

2 Session对象的属性和方法

(1) 属性。Time Out:设定和传回Session对象变量的有效时间, 如果在有效时间内用户没有动作, 默认时间为20秒, Session对象就失效了。

(2) 方法。Abandon:Session对象中的信息被清除, 资源被释放。使用Session对象来定义的变量称为会话变量, Session对象定义变量的格式如下:Session[name]=值;其中name为变量名。

3 存储和取回Session变量

可以在Session对象中存储变量是它最大的优点, 在后面访问页面时可进行读取, 范围应用广泛。例如:Session[name]=Textbox1.Text;//将控件Textbox1中的内容保存到Session的变量name中。Textbox1.T e x t=S e s s i o n[n a m e].T o S t r i n g () ;//将Session[name]的值读取到控件Textbox1中。数据被存入session变量后, 就可以被应用程序的任何页面来调用。例如:Welcome<%Response.Write (Session[“name”]) %>;

4 Session对象在用户登录页面中的应用

(1) 制作用户登录页面。创建一个用户登录页面YHLogin.aspx, 在页面中拖入两个Text Box控件, 分别设置ID为txt1和txt2, 用来输入用户名和密码, 再拖入一个Button控件, ID设置为btn1, 文本设置为“登录”。

(2) 在YHLogin.aspx页面中双击“登录”按钮, 在btn1_Click () 中设置按钮的代码。使用Configuration Manager类获取数据库的连接字符串, 创建数据库连接对象, 并打开数据库。

(3) 编写查询用户名称的SQL语句, 建立Sql Command对象, 设置SQL语句和连接数据库, 通过Execute Reader方法创建Data Reader对象。

(4) 使用Read () 方法判断有无查到记录, 登录成功后用Session对象保存用户名和用户身份等信息, 代码如下:

(5) 关闭Data Reader对象和数据库连接。Session和客户端的浏览器是有关系, 不同的浏览器服务器被打开使用的Session数据不同。浏览器关闭后, 前面使用Session保存的登录状态就无法使用了, 需要新的Session数据, 因此要重新登录, 重新保存Session数据。

参考文献

[1]陈骙.理解Session的新思路——类比法[J].现代商贸工业, 2009 (02) .

[2]肖静波.基于Session的用户权限管理实现[J].科协论坛 (下半月) , 2008 (03) .

session对象 篇3

关键词:ASP.NET,Session,系统登陆,响应时间

在ASP.NET开发中VS2008提供了多个内置对象, 如Response, Request, Session, Application。其中Request对象和Response对象用来实现服务器端与客户端浏览器数据的交换, 而Application对象与Session对象则被用来在服务器端与用户之间或ASP.NET文件之间传递数据。二者又略有不同, Application对象是一个公有变量, 允许多个用户对它访问。Session是个局部变量, 通常用来存放客户端用户的一次会话信息。据于此, 常用来在网站开发中用来保存用户登陆的一些相关信息。便于实现参数传递。

1 Session基本含义及用法

Session对象的主要用途是保存信息的。当一个用户第一次登录网站时, 系统会为其分配一个Session, 将登陆的相关信息如姓名保存到SESSION变量中, 只有当该客户退出时, 或者Session生命周期结束时, 信息才会被清除。

使用方法:

1.1 保存信息

Session对象将信息存储在变量中, 常量、字符串、甚至任何合法的表达式都可以作为Application对象的存储内容。

语法格式:

Session[“Session名称”]=变量|常量|字符串表达式

Session[“sname”]=Text Box1.Text;//将文本框的内存容保存在Session[“sname”]变量中。

1.2 读取信息

语法格式:

Session变量值可以在使用时随时读取, 读取的语法格式如下:

变量名=Session[“Session名称”];

Text Box1.Text=Session[“sname”];//将保存的Session[“sname”]的内存取出来赋给文本框显示。

2 Session的工作过程

当用户第一次访问一个网站时, 服务器自动会给这个用户分配一个SESSION ID号, 浏览器一般都支持Session, 当用户每次访问网站时都发送这个Session ID给服务器, 服务器就会根据Session的协议, 就知道次http请求是哪个用户发的。也就识别了用户。当用户在WEB应用程序中间跳转时, 存储在Session对象中的变量不会清除, 而会始终存在。下一个页面通过Session变量会接收到先前用户的相关信息。如果一段时间后, 该用户还没有会话, 则Session对象的值会自动清空。即当会话过期或被放弃后, 服务器将终止了该会话。当然如果WEB服务器停止工作, Session的值也将被清空。

3 Session在动态网站开发中的应用

Session在WEB技术中占有非常重要的作用。由于网页是一种无状态的连接程序, 因此你无法得知用户的浏览状态。因此我们必须通过Session记录用户的有关信息, 以供用户再次以此身份对web服务器提供要求时作确认。Session的典型应用是存放用户的登陆信息, 如用户名, 密码, 权限角色等信息。下面以在线聊天系统为例说明其在登陆模块中的技术应用。

(1) 在VS2008中, 建立两个WEB页, 用户登陆login.aspx, 系统首页index.aspx, , 在login.aspx设计视图中置入两个文本框, ID分别为txt Name, txt Pwd, 两个命令按扭, 一个确定一个取消。

(2) 双击确定按扭, 进入代码页login.aspx.cs

即完成连数据库, 只有当用户名和密码都正确进入网站的首页。同时将登陆的用户名保存在了Session变量中。

(3) 在index.aspx中, 系统接收来自登陆页传过来的Session值, 同时欢迎其来到网站。

4 结束语

【session对象】推荐阅读:

Session机制09-02

session全教程09-27

保障对象01-17

采访对象05-16

使用对象05-29

帮扶对象06-03

评估对象06-03

发展对象07-08

资源对象07-31

活动对象08-16

上一篇:关联贷款下一篇:产品与服务创新