版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第13章 Cookie与Session在Web系统中,常常需要记录用户的有关信息,以供用户再次以此身份对Web服务器提起请求时进行确认。在PHP中,通常采用的方式就是使用Cookie或Session来保存用户信息。13.1 概述Web系统是采用HTTP协议进行数据传输的。而该协议是一个无状态协议,无法得知用户的浏览状态,也就是说,客户端与服务器的每一次连接都被当成是一次单独的操作。用户在前一张网页的数据将不能在第二张网页上使用。因此,产生了两种用于保持连接状态的技术,它们就是Cookie和Session。13.1.1 CookieCookie是一种在远程浏览器端储存数据并以此来跟踪和识别用户的
2、机制。当相同的计算机通过浏览器请求一个页面时,原先存储的cookie也会发送到服务器。由于Cookie是保存在客户端的,因此可以随意的设置Cookie的保存时间。为了能够永久的保持用户信息,使用Cookie是最为便捷的方式。13.1.2 SessionSession是保存用户信息另一种方式。它将用户信息以文件的形式存储在服务器,然后通过客户端提交的session_id识别客户端的信息。使用该方式,访问网站的每一位来客将会被分配一个唯一的标识符,即所谓的SessionID。它可以存放在客户端的Cookie中,也可以经由URL进行传递。13.2 Cookie操作Cookie可用于使用保存用户状态。
3、在PHP中,可直接对Cookie进行操作,例如将状态信息写入Cookie、从Cookie读取状态信息、设置用户状态等信息的保存时间等操作。这一节将对Cookie的操作作详细的讲解。13.2.1 设置Cookie在PHP中,对Cookie的操作基本都是通过setcookie函数实现的。其语法格式如下所示。bool setcookie(string $name, string $value, int $expire, string $path, string $domain, bool $secure, bool $httponly)13.2.2 访问Cookie设置的Cookie在其有效期内均可
4、直接进行访问。13.2.3 删除Cookie对于已设置的Cookie,可直接进行删除。删除Cookie使用一个空值Cookie即可实现,即在调用setcookie函数时不指定属性value的值。13.2.4 Cookie全局数组在PHP中,提供了一个全局数组$_COOKIE用于存储PHP的Cookie变量。系统所有的Cookie都保存在这个全局数组中。设置Cookie就是把所有的Cookie都以值对的形式存入该数组。访问Cookie实质就是访问该全局数组。删除指定的Cookie就是从该数组中将指定Cookie的值删除。13.3 Cookie应用前面讲到PHP中Cookie的使用,这一节将通过对
5、一个使用Cookie进行登录验证的实例的分析,对在PHP中Cookie的实际应用进行详细的讲解。13.3.1 登录页面登录页面也即需要用户填写相关的信息的页面,然后将用户填写的信息提交至服务器。在用户填写登录信息时,让其选择Cookie的保存时间。13.3.2 验证页面难于用户输入的用户名和密码须进行验证,这里采用固定的用户名和密码进行验证。等学习了数据库一章时,可从将用户输入的用户名和密码与数据库保存的用户和密码进行对比,即可验证用户输入是否正确。通过验证后,根据用户选择将用户登录信息保存至Cookie中。13.3.3 欢迎页面欢迎页面为用户登录成功后的页面。若用户未登录时浏览到该页面,将给
6、出要求登录的提示信息。13.4 Session操作与Cookie一样,在PHP中一样可以直接对Session进行操作。例如设置Session的存储位置、检测变量是否在Session注册、设置Session的生命周期等操作。这一节将详细讲解在PHP中如何对Session进行相关操作。13.4.1 开始使用Session如果使用了Seesion,或者在PHP文件要使用Session 变量,那么就必须在调用之前启动Session。启动Session只需要在PHP脚本中使用session_start()函数。其它的都不需要进行设置了,PHP将自动完成Session文件的创建。该函数语法格式如下所示。b
7、ool session_start(void)13.4.2 Session检测与注销对于存储在Session中的变量,可使用isset函数进行检测,该函数语法形式如下所示。bool isset(mixed $var, mixed $var, $.)13.4.3 Session全局数组与Cookie类似,PHP提供了一个超全局数组用于存储所有的Session数据。系统所有的Session都保存在这个超全局数组中。设置Session就是把所有的Session都以值对的形式存入该数组。访问Session实质就是访问该全局数组。注销指定的Session就是从该数组中将指定Session的值删除。13.
8、5 Session应用在学习了PHP中关于Session的操作后,这一节将以改写本章第三节的一个实例,讲解如何在PHP应用中使用Session。13.5.1 登录页面登录页面需要用户输入其用户名和密码,然后由表单将用户所填写的信息提交至服务器。由服务器端接收数据进行验证。13.5.2 验证页面验证页面用于接收表单提交的用户所填写的数据,然后进行数据的验证。并根据验证结果执行相应的操作。验证成功,将登录信息存储于Session中,然后页面跳转至欢迎页面;验证失败,则显示错误信息。13.5.3 欢迎页面欢迎页面为用户登录成功的页面。当用户直接浏览页面时,需判断用户是否已登录,如未登录则显示提示信息,要求用户登录。13.5.4 注销页面注销页面为用户登出后的页面,该页面将把用户的当前Session清空。13.6 本章实例在Web系统中,通常需要使用Session用于记录当前会话状态,记录一些数据。使用最多的就是采用Session进行登录验证。13.7
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024届广东省韶关市南雄市中考英语猜题卷含答案
- 2024届甘肃省渭源县重点中学中考英语仿真试卷含答案
- 十一月工作计划共16篇
- 2024年舒血宁注射液项目合作计划书
- 五年级作文到田间耕种(5篇)
- 抵押电车合同范本(7篇)
- 茶叶苗采购合同范本大全(共6篇)
- 初中作文日记片段(共18篇)
- 小班语言领域活动老鼠阿姨送礼物教案
- 2024-2029年中国风电塔架行业市场发展前景分析与投资战略规划报告预测
- 20S121生活热水加热机组(热水机组选用与安装)
- MOOC 微积分(二)-浙江大学 中国大学慕课答案
- 软件开发项目周报模板
- 健身房消毒卫生标准
- 中医药科普节目策划方案
- 《道路工程检测技术》课件-盾构隧道洞身开挖方法及质量检测
- 灯光音响相关项目实施方案
- 2024届湖南省衡阳市耒阳市中考联考物理试题含解析
- 【多应用条款】导演聘用合同协议书范本 标准版
- 《Python程序设计案例教程》 课件 单元3 流程控制
- 战略思维与人际沟通的关系
评论
0/150
提交评论