ASP应用程序与会话.ppt

上传人:赵** 文档编号:65780034 上传时间:2022-12-08 格式:PPT 页数:24 大小:2.47MB
返回 下载 相关 举报
ASP应用程序与会话.ppt_第1页
第1页 / 共24页
ASP应用程序与会话.ppt_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《ASP应用程序与会话.ppt》由会员分享,可在线阅读,更多相关《ASP应用程序与会话.ppt(24页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、动态网页制作动态网页制作第四讲第四讲 ASPASP应用程序与会话应用程序与会话一一.状态的有关概念状态的有关概念1.1.状态的定义状态的定义 如果在程序中声明一个全局变量,在运行期如果在程序中声明一个全局变量,在运行期 该变量一直有效,并且可以对其进行访问,该变量一直有效,并且可以对其进行访问,这样的一个全局变量即可视之为状态。这样的一个全局变量即可视之为状态。动态网页制作动态网页制作一一.状态的有关概念状态的有关概念2.2.状态对状态对WebWeb应用程序的重要性应用程序的重要性需要一种方法来保存每个访问者的状态。如果没法需要一种方法来保存每个访问者的状态。如果没法实现状态,实现状态,ASP

2、ASP网页的功能就会很有限,因为当一网页的功能就会很有限,因为当一个页面执行完成时,页面中的变量和其他相关资料个页面执行完成时,页面中的变量和其他相关资料都被破坏掉了。当用户打开一个页面时,原来访问都被破坏掉了。当用户打开一个页面时,原来访问过后的页面所提供的信息将全部丢失。过后的页面所提供的信息将全部丢失。就是说,就是说,变量是属于变量是属于“页面级页面级”的,一个页面的的,一个页面的变量在另一个页面不起作用变量在另一个页面不起作用,有些时候需要某些,有些时候需要某些变量能跨页面调用,这实现需要某种方法实现状变量能跨页面调用,这实现需要某种方法实现状态。态。动态网页制作动态网页制作一一.状态

3、的有关概念状态的有关概念ASPASP使用以下内容来保存状态使用以下内容来保存状态1.Application1.Application对象实现应用程序级状态:全局对象实现应用程序级状态:全局2.Session2.Session对象实现用户级状态对象实现用户级状态3.Cookie3.Cookie技术对用户的某些信息进行跟踪技术对用户的某些信息进行跟踪动态网页制作动态网页制作二二.使用使用CookiesCookies集合集合 使用使用response.cookiesresponse.cookies创建创建cookiecookie对象对象 使用使用request.cookiesrequest.cook

4、ies读取读取cookiecookie对象对象例子:例子:写入写入cookiecookie:%读取:读取:%dim”)%动态网页制作动态网页制作二二.使用使用CookiesCookies集合集合CookieCookie字典字典 有时在一个页面中可能需要定义很多个有时在一个页面中可能需要定义很多个CookiesCookies变量,为了更好地管理它,在变量,为了更好地管理它,在CookiesCookies组件中常组件中常引入概念引入概念“子键子键”。定义:定义:Response.cookiesResponse.cookies(变量名变量名)(子键名子键名)引用:引用:Request.Cookies

5、Request.Cookies(变量名变量名)(子键名子键名)动态网页制作动态网页制作二二.使用使用CookiesCookies集合集合例子:如下面的例子:如下面的CookieCookie创建一个名为创建一个名为infoinfo的字典,其中保存了三个键值:的字典,其中保存了三个键值:%动态网页制作动态网页制作二二.使用使用CookiesCookies集合集合事实上客户机上的事实上客户机上的CookieCookie字典是以字符串的形式存字典是以字符串的形式存在:在:info=info=MynameMyname=luna&Genderluna&Gender=male&Myheightmale&My

6、height=170=170 如果用户没有指定如果用户没有指定“子键子键”名而直接引用名而直接引用CookiesCookies变量,变量,将会返回一个包含所有的将会返回一个包含所有的“子键子键”名及值的字符串。名及值的字符串。例如上面这个例子包含三个例如上面这个例子包含三个“子键子键”:MynameMyname、GenderGender和和 MyheightMyheight,当用户没有指定其,当用户没有指定其“子键子键”而而直接通过直接通过Request.Cookies(infoRequest.Cookies(info)来引用时,则会得来引用时,则会得到下列字符串:到下列字符串:info=in

7、fo=MynameMyname=luna&Genderluna&Gender=male&Myheightmale&Myheight=170=170 动态网页制作动态网页制作二二.使用使用CookiesCookies集合集合如果要把如果要把CookieCookie中读取的所有数据,可以用下面的代码:中读取的所有数据,可以用下面的代码:%For each cookie in%动态网页制作动态网页制作二二.使用使用CookiesCookies集合集合CookieCookie的时效的时效使用基本方法设置的使用基本方法设置的cookiecookie,在浏览器关闭或者会,在浏览器关闭或者会话到期时会一直存

8、在,一旦关闭浏览器,该话到期时会一直存在,一旦关闭浏览器,该cookiecookie值会消失。为了将值会消失。为了将cookiecookie保存更长时间,需要设置保存更长时间,需要设置cookiescookies集合的集合的expiresexpires属性属性:Response.cookiesResponse.cookies(“(“变量名变量名”).expires=date+/-).expires=date+/-时间时间如:如:Response.cookies(“var”).expiresResponse.cookies(“var”).expires=date+30=date+30 Respo

9、nse.cookies(“var”).expiresResponse.cookies(“var”).expires=date-1=date-1动态网页制作动态网页制作三三.Application.Application对象对象在同一目录及其子目录下的所有在同一目录及其子目录下的所有ASPASP文件构成了文件构成了ASPASP应用程序。用户可以使用应用程序。用户可以使用ApplicationApplication对象,在给对象,在给定的定的ASPASP应用程序的所有用户之间共享信息。对于应用程序的所有用户之间共享信息。对于网站的应用程序系统而言,不仅要允许多位用户同网站的应用程序系统而言,不仅要

10、允许多位用户同时进入网站时进入网站,还需考虑到数据的共享,如下所示:还需考虑到数据的共享,如下所示:共享给网站共享给网站所有的用户所有的用户ApplicationApplication变量变量 例如,当前在线上的用户人数。例如,当前在线上的用户人数。每位用户每位用户的专属信息的专属信息SessionSession变量变量 例如,登录网站的用户数据。例如,登录网站的用户数据。动态网页制作动态网页制作三三.Application.Application对象对象1.1.设置和取得设置和取得applicationapplication对象对象ApplicationApplication对象没有内置的属

11、性,但可以由用户对象没有内置的属性,但可以由用户定义。可以用下面方法设置:定义。可以用下面方法设置:Application(“Application(“变量名变量名”)值值要引用具体对象,直接使用要引用具体对象,直接使用Application(“Application(“变量名变量名”)引用即可。引用即可。动态网页制作动态网页制作三三.Application.Application对象对象2.Lock2.Lock和和unlockunlock方法方法由于网页在同一时间里,可能同时有许多使用由于网页在同一时间里,可能同时有许多使用者,所有在修改者,所有在修改applicationapplicati

12、on对象的内容时,必须对象的内容时,必须将将applicationapplication对象用对象用locklock方法锁定。这个方法可方法锁定。这个方法可以确保这个变量在同一时间只能有一个使用者修以确保这个变量在同一时间只能有一个使用者修改其内容。如改其内容。如%动态网页制作动态网页制作四四.Session.Session对象对象如果要区分不同的浏览器客户呢?如果要区分不同的浏览器客户呢?可以通过可以通过SessionSession对象实现,当不同的浏览器对象实现,当不同的浏览器 客户访问服务器应用程序时,服务器会分别为客户访问服务器应用程序时,服务器会分别为 每一个客户分配一段内存空间用于

13、保存不同用每一个客户分配一段内存空间用于保存不同用 户的数据信息,即每一个客户都可以有自己的户的数据信息,即每一个客户都可以有自己的SessionSession。一个。一个SessionSession的值对应一个用户,对的值对应一个用户,对 不同的用户是不同的。不同的用户是不同的。动态网页制作动态网页制作四四.Session.Session对象对象任何存储在任何存储在SessionSession中的信息可以在用户调用下中的信息可以在用户调用下一个页面时取得。一个页面时取得。SessionSession对象用于保存用户在对象用于保存用户在不同页面中跳转时的值,不同页面中跳转时的值,当用户的应用程

14、序在当用户的应用程序在页间跳转时,存储在页间跳转时,存储在SessionSession对象中的变量不会对象中的变量不会清除清除。动态网页制作动态网页制作四四.Session.Session对象对象每个用户通过浏览器打开网站,服务器每个用户通过浏览器打开网站,服务器会自动为此用户建立一个会自动为此用户建立一个SessionSession进程。而在用户进程。而在用户关闭浏览器,或者长时间未作响应时,关闭浏览器,或者长时间未作响应时,SessionSession对对象将丢失。注意,并不是自动销毁,而只是用户无象将丢失。注意,并不是自动销毁,而只是用户无法找到之前创建的法找到之前创建的SessionS

15、ession对象。这个机制可以用对象。这个机制可以用于判断用户的身份于判断用户的身份;在不同的页面跳转时,保持用在不同的页面跳转时,保持用户的权限,以及跟踪用户等。户的权限,以及跟踪用户等。同时,对于一些用户的个性化设置也可以存入到同时,对于一些用户的个性化设置也可以存入到SessionSession对象中,达到用户个性化主页的配置要求对象中,达到用户个性化主页的配置要求动态网页制作动态网页制作四四.Session.Session对象对象1.Session1.Session对象的创建:对象的创建:session(“session(“变量名变量名”)=)=值值可以用下面的方法把数据存储到指定的可

16、以用下面的方法把数据存储到指定的sessionsession对象,如:对象,如:%”)=“pass”%可以在另一个页面用下面的方法取得数据可以在另一个页面用下面的方法取得数据%name=”)%动态网页制作动态网页制作四四.Session.Session对象对象2.Session2.Session的过期的过期SessionSession是有使用期限的,缺省时间是是有使用期限的,缺省时间是2020分钟。分钟。可以通过设置可以通过设置sessionsession的的timeouttimeout属性来改变超时属性来改变超时时间。这个时间以分钟来计算,如:时间。这个时间以分钟来计算,如:%=30%一套完

17、整的一套完整的aspasp程序的每一个页面都应判断程序的每一个页面都应判断sessionsession对象是否超时。对象是否超时。如果超时则应进行一定的处理,如如果超时则应进行一定的处理,如可以提示用户重新登录或跳转到其它页面可以提示用户重新登录或跳转到其它页面。动态网页制作动态网页制作四四.Session.Session对象对象3.3.释放释放sessionsessionSessionSession的的abandonabandon方法可以删除所有存储在方法可以删除所有存储在sessionsession对象中的对象并释放其占用的对象中的对象并释放其占用的webweb服务器服务器资源。如果没有明

18、确地调用资源。如果没有明确地调用abandonabandon方法,一旦方法,一旦会话超时,服务器将会删除这些对象。会话超时,服务器将会删除这些对象。当服务器处理完当前页时,下面示例将释放会话当服务器处理完当前页时,下面示例将释放会话状态:状态:(典型用途典型用途-退出登录、注销退出登录、注销)%动态网页制作动态网页制作四四.Session.Session对象对象例子:用户登录管理例子:用户登录管理功能:对用户进行权限管理,某些页面需要功能:对用户进行权限管理,某些页面需要 登录才能访问,如普通页面对所有人公开,登录才能访问,如普通页面对所有人公开,但权限页面则需要用户登陆之后才能访问但权限页面

19、则需要用户登陆之后才能访问知识点:知识点:1.1.利用利用sessionsession判断用户的登录情况判断用户的登录情况 2.2.结合结合ifthenelseifthenelse语句进行控制语句进行控制难点:代码难点:代码“控制时机控制时机”和和“判断时机判断时机”的把握的把握动态网页制作动态网页制作1.1.首页首页:index.htmindex.htm2.2.普通页面普通页面:public.htmpublic.htm3.3.权限页面权限页面:private.aspprivate.asp4.4.出错页面出错页面:error.htmerror.htm5.5.登录及处理页面登录及处理页面:log

20、in.htmlogin.htm、loginproc.asploginproc.asp登录流程登录流程主页普通页面直接访问已经登陆权限页面登录页面没有登陆登陆成功权限页面登陆失败出错页面四四.Session.Session对象对象动态网页制作动态网页制作由于还没涉及到后面数据库方面的交互编程,由于还没涉及到后面数据库方面的交互编程,当前用户登录只判断其有输入信息就可以让当前用户登录只判断其有输入信息就可以让其通过认证,即同时有输入用户名和密码就其通过认证,即同时有输入用户名和密码就允许其访问权限页面允许其访问权限页面四四.Session.Session对象对象动态网页制作动态网页制作四四.Ses

21、sion.Session对象对象思考题:思考题:1.1.注销功能如何实现?注销功能如何实现?2.2.本例子只有一个用户权限,如果系统有多个本例子只有一个用户权限,如果系统有多个 不同的用户权限,如管理员、教师、学生三个不同的用户权限,如管理员、教师、学生三个 权限,思考本例子的重点,尝试实现多用户权限权限,思考本例子的重点,尝试实现多用户权限的功能?的功能?3.3.由于还没涉及数据库,用户密码都没进一步判断,由于还没涉及数据库,用户密码都没进一步判断,假设用户名和密码分别为假设用户名和密码分别为xialuxialu和和passpass,该,该 如何实现如何实现?动态网页制作动态网页制作动态网页制作动态网页制作

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com