1 / 18

ASP

ASP. Session 和 Application 对象. 思考. 用户输入用户名和密码进入管理功能版块,管理功能包含多个页面,例如信息添加、更新、删除等,如果有人不通过登录,而直接在 IE 地址栏中输入管理页 URL ,试图进入,怎么办? 采用 Request.Querystring 可在页面间传递信息、 Cookie 可保存用户信息,但都比较麻烦,不太安全。. Session 对象. Session 对象用于追踪、存储、传递某个用户信息。 引用 Session 则可以使一个用户在多个页面间切换的时候也能保留该用户的信息。

moses-cohen
Download Presentation

ASP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ASP Session和Application对象

  2. 思考 • 用户输入用户名和密码进入管理功能版块,管理功能包含多个页面,例如信息添加、更新、删除等,如果有人不通过登录,而直接在IE地址栏中输入管理页URL,试图进入,怎么办? • 采用Request.Querystring可在页面间传递信息、 Cookie可保存用户信息,但都比较麻烦,不太安全。

  3. Session对象 • Session对象用于追踪、存储、传递某个用户信息。 • 引用Session则可以使一个用户在多个页面间切换的时候也能保留该用户的信息。 • Session信息是对一个客户而言,不同的客户信息用不同的Session信息来记录。

  4. Session信息保存在服务器端的一块内存区域中。当每一个用户开始访问该网站时(术语称会话),服务器端就会给该用户建立一个Session对象,在服务器端内存中给他分配一块区域,用来存储该用户的信息,用户在网站内任何页面都可以保存并读取这些信息。当该用户结束访问(会话结束),服务器端就会清除这个Session对象,并释放相应的内存区域。 • 会话结束:不是指关闭浏览器,而是通过Session对象的有效期,如果在有效期时间用户没有操作,服务器则关闭并清空该用户Session,会话结束。也可以通过Session.Abandon强制结束。

  5. Session保存变量或字符串等信息,语法如下:Session(“Session名字”)=变量或字符串信息.Session保存变量或字符串等信息,语法如下:Session(“Session名字”)=变量或字符串信息. • 例如 保存用户姓名Session("name")="卓云” (插曲:以上代码何处有输入错误?) 读取Session信息: name=Session("name")

  6. Session对象的主要属性 • SessionID:返回会话标识符(ID),即存储用户的Session ID。 • TimeOut:定义Session的有效期。单位为分钟,默认为20分钟。

  7. SessionID • 给每一个用户分配了可以识别它的唯一标识,当首次用户访问时,就会产生用户的ID且一直在网站保留。

  8. TimeOut属性 • 利用Timeout属性可以修改Session对象的有效期时长,默认为20分钟。 • 语法:Session.Timeout=整数(分钟) • 例如:<% Session.Timeout=30 ‘设置Session对象的有效期时长为30分钟 %>

  9. Abandon方法 • Session对象到期后会自动清除,但到期前可以用Abandon方法强行清除。例如用户退出登录。 • 语法:Session.Abandon • 例如:<% Session.Abandon %>

  10. 实例 • 用户登录表单 <form method="POST" action=""> 用户:<input type="text" name=UserName> 口令:<input type="password" name=Password > <input type="submit" name="Submit" value="提交" > </form>

  11. <% strSql =“Select * From 管理权限 where 姓名=‘” & Request(“Username”) & “’ And 口令='" & Request("Password")& "'" Set rs=db.Execute(strSql) If Not rs.Bof And Not rs.Eof Then Session("Name") = RS("姓名") Response.Redirect “admin.asp" else Response.Redirect “err.asp" End If %>

  12. <% if isempty(Session(“name")) then Response.Redirect “err.asp" end if %>

  13. 您好,<%=Session("Name")%>

  14. Application对象 • 记载所有用户的共享信息。

  15. Application的操作和Session非常类似,存储信息的语法:Application(名称)=变量或字符串信息。Application的操作和Session非常类似,存储信息的语法:Application(名称)=变量或字符串信息。 • 因此对象可以多个用户操作,为防止失误,保存Application信息时,需要先锁定,然后再解除锁定 Application.Lock ‘锁定,以防其他用户更改 Application ("school")="北京大学" Application.Unlock ‘解除锁定,让别的人写

  16. 计数器示例

  17. 聊天室示例

More Related