session与cookie

session
1. SESSION2. _SESSION在被销毁前,将其中的数据保存到某个地方,使用session_start()方法之后,将数据从某个地方取得,然后放入 SESSION _SESSION可以传递到下一个页面,过程为:保存数据->销毁->创建->获得数据
3.数据丢失发生在浏览器被关闭的时候,会话数据的有效期结束就是会话结束(会话结束就是浏览器关闭)。
4.会话数据指会话期内有效的数据,就是会话数据,会话则是指浏览器与服务器之间的会话。
5.服务器怎么识别浏览器?
在第一次请求时,浏览器会生成SESSION ID。在以后的请求中,浏览器将携带这个标志来请求服务器,这样服务器就能够识别出来是不是同一个浏览器的请求。(标志相同说明是同一个浏览器)。
6.服务器会为不同的SESSION ID生成不同的数据保存空间(不同的文件)

cookie
1.服务器在浏览器上做记号,将某个特殊的数据保存到浏览器上,那么就意味着服务器可以在浏览器上保存数据。浏览器发送请求时,能够将数据传递到服务器端。这种服务器在浏览器保存数据的操作,是通过cookie技术来完成的。
2.Cookie变量的有效期默认是浏览器关闭,session的id是保存在cookie内的,一旦关闭浏览器 cookie失效,同时 cookie内的session_id失效,导致 session失效。
3.我们都更改cookie变量的有效期,达到数据长时间保存的目的。
setcookie函数的第三个参数来达到效果:
有效期指的是一个到期时间,使用时间戳来表示。
Setcookie(‘变量名’, ‘变量值’, 有效期);
例如:
将cookie变量保存一个小时:当前的时间戳 + 3600s即可。
Time()获得当前的时间戳。
setcookie(‘cookie_p1’,’php1025’,time()+3600);

保存2周
setcookie(‘cookie_p2’,’php1025’,time()+3600*24*7*2);

4.cookie保存到浏览器端,区别于不同的浏览器,保存形式不一样

例如:火狐是sqlite数据库保存cookie,我们利用sesssion技术,完成用户登录,登录成功后,将当前管理员的信息保存到session中,在判断时判断是否有管理员的信息
Privilege.php act=signin
session_start();
SESSION[admin]= result;//在会话数据内,增加一个变量,用来保存当前管理员的信息

index.php
session_start();
if(isset(_SESSION['admin'])){//直接判断_SESSION的标志
}

由于后台操作,都需要对用户的session进行验证,因此都需要session_start(),应该将session_start();放到公共的地方:
/admin/incluedes/init.php

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值