PHP与MySQL程序设计:019-COOKIE与SESSION_第1页
PHP与MySQL程序设计:019-COOKIE与SESSION_第2页
PHP与MySQL程序设计:019-COOKIE与SESSION_第3页
PHP与MySQL程序设计:019-COOKIE与SESSION_第4页
PHP与MySQL程序设计:019-COOKIE与SESSION_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

雷涵legendhb@2015-12Cookie与Session会话技术介绍为什么需要会话?会话技术介绍HTTP协议是无状态协议,意味着服务端无法通过HTTP判断各个请求是否来自同一用户通过增加会话控制机制,允许服务端跟踪同一用户(客户端)做出的连续请求并保持上下文会话技术包含Cookie和Session两种方式Cookie简介Cookie是在HTTP协议下,服务端维护用户信息的一种方式是由服务器发送给客户端的片段信息,存储在客户端的浏览器内存或硬盘上,下次请求同一网站时,浏览器会将Cookie信息发送回给服务端常用于保存用户基本信息、个人偏好设置等信息,大多时候需要加密保存客户端可以删除CookieCookie的属性Name:Cookie以键值对的形式存在,name为键名Value:name标识的Cookie的值Expires:Cookie的过期时间,到达过期时间后Cookie随即失效,“会话”是一种特殊的过期时间,浏览器关闭即失效Cookie的属性使用Chrome开发工具可以查看该网站的CookiesCookie使用键值对结构存在PHP设置Cookie使用函数setcookie($name[,$value,

$expire])设置Cookie,$expire默认为“会话有效期”设置Cookie的指令通过Response

Header设置,所以在调用setcookie前程序不能有任何内容输出PHP设置Cookie如果Cookie设置成功,客户端浏览器记录下了Cookie内容,在下一次请求时会带上Cookie内容使用$_COOKIE全局数组来读取Cookie值PHP删除Cookie省略setcookie()的value及以后的参数设置指定Cookie的expire参数为过期的时间Cookie的数组形态利用多维数组的形式,将一个name标识的Cookie设置成数组Cookie的高级属性Domain:Cookie所在域名,只有同一域名下的Cookie可以被设置和读取Path:Cookie在其所在域名的指定目录下,默认为当前目录,子目录可以获取到父目录下的Cookie,反之不行Secure:标识该Cookie是否只能基于HTTPS进行传输,默认为falsehttponly:表明该Cookie是否只能通过HTTP进行读取和设置,设置为true时,通过JavaScript无法取到该Cookie,有助于提高安全性课堂练习写两个页面练习设置Cookie和读取Cookie尝试设置不同的expire时间,看看到期后Cookie是不是取不到了尝试设置不同的path下的Cookie,看看在不同的path下是否能正确取到回顾阶段一博客项目的文章浏览量问题,每次刷新都加1,结果不准确,如何通过Cookie解决这个问题?Session介绍Session中文译作“会话”,在Web开发过程中指一个特定的时间概念,比如用户从登录到注销,在PHP中指的是用于保存用户上下文的服务端存储机制Session的内容保存在服务端,与Cookie区别在启动会话时,PHP会为用户分配一个session_id,设置的Session内容都与该session_id绑定随着浏览器的关闭Session随之销毁session_id可以通过GET参数或者Cookie(默认)传递PHP操作Session通过session_start()函数开启Session,PHP会设置一个默认名为PHPSESSID的Cookie,有效期为“会话”如上所述,所以开启Session的操作同样需要在此之前没有内容输出直接使用全局数组$_SESSION读写Session删除Session通过unset()注销某个Session变量,如同操作数组通过$_SESSION

=

[],一次性清除所有Session,慎用通过session_destroy()函数直接销毁SessionSession的相关配置session.auto_start设置PHP是否自动开启Session,开启的话则不需要手动session_start()设置记录在Cookie里的session_id的namesession.save_handler设置记录Session内容的媒介,默认为files,即保存在文件里session.save_path当save_handler设置为files时,文件的保存路径session.use_cookies是否使用Cookie来设置session_idsession.gc_maxlifetime设置Session被回收的时间,默认为1440妙,也即24分钟Session与CookieCookie与Session都可以用来保存服务端与用户的上下文关联Cookie存储在客户端,Session存储于服务器端Session一般通过Cookie设置session_idSession里的内容随着浏览器关闭而消失,Cookie可以长期保存Session里的内容相对于Cookie更为安全课堂练习写两个页面set_session.php执行设置Session的动作,另一个get_session.php将设置的Session读出来并打印关闭浏览器后,重新打开g

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论