1.会话控制概括
1)http协议的缺陷
无状态,就是无记忆,不能让同一浏览器和服务器进行多次数据交换时,产生业务的连续性,
2)什么是会话控制
会话控制就是解决http无记忆缺陷的,能够==将数据持久化的保存在客户端(浏览器)或者服务端==,从而让浏览器和服务器尽心==进行多次数据交换时产生连续性.
3)会话控制的分类
分为两种:cookie(客户端)和session(服务器端)
2.cookie技术
1)什么是cookil?
cookil是将数据持久化存储到客户端的一种技术.
网站可以将数据写在浏览器中.一个网站最多能在一个浏览器写20个coolie.
一个浏览器能够设置的总cookie数最多为300个,每个不能超过4kb.
cookie既能保存在文件中,也能保存在内容中.
2)设置/读取cookie
setcookie(var1 , var2, var3);
var1: cookie的名称
var2: 名称对应的值, 可选参数
var3: cookie的有效期, 可选参数
=>2)读取coolie值
使用php的超全局变量 $_COOKIE进行读取
=>3)cookie有效期
setcookie函数的参数3可以控制cookie有效期
参数3设置为-1 或者 不设置,关闭浏览器即失效
参数3设置为 time()+秒数,则在当前时间点的多少秒之后失效
=>4)cookie的有效范围
setcookie函数还有参数4、5,可以用来控制cookie的有效访问,但是一般不用
=>5)cookie删除
setcookie函数第二个参数设置为null,就可以删除cookie
3.session技术
1)session介绍
2)设置/读取session
php使用session时,首先要使用session_start()函数来开启session.
$_SESSION 超全局变量就能设置和读取session中的内容
3)session的作用范围
在当前网站的任何一个页面设置过session,则该网站的所有页面都能得到给session的数据
4)session的有效期
浏览器关闭时,session消失
5) 删除session
unset($_SESSION['name'] //删除单个session
session_destroy(); //删除所有session
4.session和cookie总结
cookie小结:
1) 将数据保存在客户端,安全性不好,但是可以保存的数据量较大。
var1: cookie名称 var2: 名称对应的值 var3: 有效期。 可选参数,如果不设置该值或者设置为-1,浏览器关闭则cookie消失;time() + 3600
3) 使用$_COOKIE 预定义数组来读取cookie
4) cookie的有效范围: 当前目录及子目录;上级目录无效
5) 删除cookie: setcookie(‘name’, null);
session小结
unset($_SESSION[‘name’]); //删除单个 sessionsession_destroy(); //删除所有session