欢迎来到天天文库
浏览记录
ID:39983949
大小:661.81 KB
页数:10页
时间:2019-07-16
《session与cookie的使用(《php开发从入门到精通》)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、当登录某一个论坛后,会发现在后续访问的若干个论坛页面上都会看到你的登录用户名;当访问完某一个邮箱,关闭电脑,当在某一个时间范围内打开邮箱的主页,发现你的邮箱仍然处于登录状态,一直没有退出过;或者当你做了一个投票系统,却发现有的人利用恶意刷新来不断提高某项的投票值。这一切的操作与数据的存储都无关,实现的办法就是在PHP中运用session与cookie。本章将介绍如何灵活运用session与cookie这两个小玩意,让你的网页看上去更灵活更生动!第13章session与cookie的使用-网站开发专用书【例13-1】session使用——多页之间信息的传递sessio
2、n与cookie都是能够保存用户信息的变量,两者的区别如下:session保存在服务器端;cookie保存在客户端。session的安全性没有cookie高。session在浏览器关闭后自动作废,而cookie可以自己设定一个有效保存期限。可以创建多个session,但太多的session会影响到服务器的性能;每个用户的浏览器只能保存某个Web服务器的至多20个cookies,而且每个cookie的大小不能超过4KB。但客户端的浏览器最多能存储300个cookies。session不会被禁用,因为其内容保存在服务器端;而现在大部分的浏览器都是可以由用户自动设置是否开
3、启cookie,所以,如果用户将浏览器设置为关闭cookie,即使你运用cookie设置了许多的内容,一切将是没有任何意义的。session适合于存储用户信息量比较少的情况。session需要在使用之前,在文件开头的位置放上session_start()语句,开启session的使用,或者也可以将php.ini中的session.auto_start设为1。【例13-1】session使用——多页之间信息的传递session_start()语句一定要放在程序的第一行,否则会出现如下的错误信息:Warning:session_start()[function.sess
4、ion-start]:Cannotsendsessioncachelimiter-headersalreadysent(outputstartedat……所有定义的session变量存放的路径为服务器的php.ini文件中的session.save_path选项所指定的目录下的一个文件中。打开php.ini文件,查找到如下信息:session.save_path="d:ProgramFilesphpStudyPHP5session"然后根据这个路径,找到相应的会话文件,用记事本打开,显示信息如下:username
5、s:7:"yuanxin";要使用sessi
6、on变量name,可以直接用$_SESSION["name"],若设置php.ini中的register_globals为ON,也可以直接使用$name访问该session变量。注销session变量在使用完session变量后,需要注销该变量,采用session_unregister()进行注销。【例13-2】cookie使用——用户登录保存期限cookies,英文意思是小甜点,这里是指存放在客户端上的一小段消息。当访问某网站时,你所提交的信息能被服务器通过浏览器存储到你所在的本地硬盘上。当下次再访问那个网站时,服务器也将自动检索这些信息。所以,当我们访问完自己的
7、邮箱后,等下次再登录时,会发现浏览器竟然还记忆着你以前登录的信息。当然,前面也提过,现在的浏览器都可以由用户开启或者关闭cookie服务,要想实现这个神奇而又人性化的功能,必须确保用户开启了浏览器的cookie访问服务。【例13-2】cookie使用——用户登录保存期限(1)创建cookies。通过setcookie()函数来创建一个cookie。语法格式如下:boolsetcookie(stringname[,stringvalue[,intexpire[,stringpath[,stringdomain[,boolsecure]]]]])该函数有6个参数,一般常
8、用的是前3个参数,它们的作用与意义如下:name:该参数指定新建cookie的名称,这是一个全局变量。变量名与普通变量命名规则一样,否则会得到系统自动改变的cookie名称。value:cookie的值。expire:cookie的有效期限。这个参数的值是由格林威治时间(GMT)格式给出的。当不指定该参数时,cookie的有效期限为不保存,cookie随着客户端浏览器窗口的关闭而自动终止。该参数通常用time()函数再加上秒数来设定cookie的有效期。或者用mktime()来实现,time()表示当前时间。【例13-2】cookie使用——用户登录保存期限pa
此文档下载收益归作者所有