- 1、本文档共47页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP第8章会话处理课件
第8章 会话处理 课程描述 在Web应用程序中,会话是客户端用户与服务器之间交换数据的过程。通过会话可以实现页面之间的参数传递。本章将介绍PHP会话处理中使用的Cookie、URL重写和Session等技术。 本章知识点 8.1 什么是会话处理 8.2 Cookie的应用 8.3 Session的应用 8.1 什么是会话处理 8.1.1 问题的提出 8.1.2 解决方案 8.1.1 问题的提出 在第1章中已经介绍过超文本传输协议(HTTP),它定义了通过互联网传输数据的规则。HTTP是一种无状态的协议,也就是每次请求都是独立的,和之前或之后的请求无关。这就意味着如果后续处理需要前面的信息,则必须重传数据,这样可能导致每次连接传送的数据量增大。 例如,在网上商城系统中,有一些页面(比如发表评价页面、购买商品页面)需要用户登录后才能浏览。但在打开这些页面时系统并不知道访问者之前是否登录过,于是就可能出现要求用户重复登录的情况。 由于HTTP无状态而造成的问题 8.1.2 解决方案 1.Cookie Cookie存在如下缺陷 ? Cookie的数据大小是由限制的,大多数浏览器只支持最大为 4096 字节的 Cookie。有时不能满足需求。 ? 客户端可以禁用或清空Cookie,从而影响程序的功能。 ? 当多人共用一台计算机时使用Cookie可能会泄露用户隐私,带来安全问题。 2.Session(会话) Session可以保持网站服务器和网站访问者的交流,访问者可以将数据保存在网站服务器中。为了区分不同的访问者,网站服务器为每个网站访问者都分配一个会话编号SID,一个访问者在Session中保存的所有数据都与他的SID相关联。在访问者打开的所有页面中,都可以通过SID设置和获取Session数据,因此通过Session可以实现个页面间的数据共享。用户在任意一个页面登录后,都可以将登录标记和登录用户名保存在Session变量中。这样在其他页面中就可以获知用户已经登录了,从而避免重复登录。 使用Cookie和Session技术的解决方案 8.2 Cookie的应用 8.2.1 Cookie的工作原理 8.2.2 设置Cookie数据 8.2.3 读取Cookie数据 8.2.4 删除Cookie数据 8.2.5 在用户身份验证时使用Cookie 8.2.1 Cookie的工作原理 Cookie是Web服务器存放在用户硬盘的一段文本,其中存储着一些“键-值”对。每个Web站点都可以在用户的机器上存放Cookie,并可以在需要时重新获取Cookie数据。通常Web站点都有一个Cookie文件。 Cookie的工作原理 8.2.2 设置Cookie数据 可以使用setcookie()函数设置Cookie数据,语法如下: bool?setcookie?(?string?$name?[,?string?$value?[,?int?$expire?= 0?[,?string?$path?[,?string?$domain?[,?bool?$secure?= false?[,?bool?$httponly?= false?]]]]]] ) 参数说明如下: ? name,Cookie的名字。 ? value,Cookie的值。 ? expire,Cookie的有效期,单位为秒。 ? path?,Cookie的服务器路径,此目录下的网页都能访问该cookie。 ? domain,Cookie的域名,此域名下的网页都能访问该cookie。 ? secure,规定是否通过安全的HTTPS连接来传输cookie。 ? httponly,如果设置为TRUE,则只能通过HTTP访问Cookie,不能使用脚本语言(例如JavaScript访问Cookie)。如果设置为FALSE,则没有此限制。 如果设置Cookie数据成功,则函数返回 true,否则返回 false。 提示 Setcookie()函数会发送网页头信息给客户端浏览器,浏览器会根据这些信息设置本地cookie,而html标签是网页正文,因此必须在头信息发送完之后才能发送,也就是说setcookie()函数必须在html之前才能正常工作。 【例8-1】 setcookie()函数的示例。 ?php $value = my cookie value; // 发送一个简单的 cookie setcookie(TestCookie,$value, time()+60*60*24*30); ? html body ... /body /html 8.2.3 读取Cookie数据 在PHP中,可以使用$_COOKIE数
您可能关注的文档
最近下载
- 废旧塑料购销合同6篇.docx VIP
- 山东省烟台市芝罘区2022-2023学年七年级(五四学制)上学期期中地理试题(含答案).docx VIP
- 建筑工程施工技术交底大全.docx
- 柔性光伏钢构及组件安装施工方案.docx VIP
- 中成药学讲稿祛暑中成药.docx VIP
- 石油化工企业设计防火规范(GB50160-2018-).doc
- 山东省烟台市芝罘区(五四制)2023-2024学年六年级上学期期中考试生物试题(解析版).docx VIP
- 医疗机构医院感染管理专职人员管理办法(2020年版).pdf
- 南宁师范大学信息技术课程与教学考研真题试题2019年.pdf
- 加强风电设备管理提升风机可利用率(电力系统及自动化范文).doc
文档评论(0)