Cookie 和 Session

前言

会话支持在 PHP 中是在并发访问时由一个方法来保存某些数据.从而使你能够构建更多的定制程序 从而提高你的 web 网站的吸引力.
cookie 是一种在远程浏览器端储存数据并以此来跟踪和识别用户的机制。

正文

 =============================
<?php 
 setcookie("name","value",time()+$int);
/*name is your cookie's name
 value is cookie's value
 $int is time of cookie expires*/
?>
 =============================
<?php 
echo $_COOKIE["your cookie name"];
?>
 =============================
<?php 
 setcookie("color","red");
 echo $_COOKIE["color"];
/*color is red*/
 /* your codes and functions*/
setcookie("color","blue");
 echo $_COOKIE["color"];
/*new color is blue*/
?>
 ==============================
<?php 
unset($_COOKIE["yourcookie"]);
/*Or*/
setcookie("yourcookie","yourvalue",time()-1);
/*it expired so it's deleted*/
?>

Session

基本用法
创建
session_start();
$_SESSION['name'] = "draymonder";

如果要取出对象,则需要实现申明一下类的定义信息

删除
unset($_SESSION['name']);

使用时候要开启
session_start();
session_unset 和 session_destroy之间的区别
  session_unset只是清除sesison的使用。 会话仍在用户计算机上。 请注意,通过使用session_unset,该变量仍然存在。

  然而,使用session_unset与session_destroy一起使用,实际上是清除数据的更有效方法。 正如上面的例子所述,这个工作非常好,跨浏览器:

 session_unset();
 session_destroy();
如果客户端禁用Cookie 怎么实现session共享多个页面?
一、 利用http协议传送SSID=sessinId()
if(isset($_GET['SSID'])) {
    //设置session_id
    session_id($_GET['SSID']);
}
session_start();

二、 利用常量SID来传送
    session_start();
    echo SID;
经过测试 
SID是第一次访问站点的时候有的内容
再次访问的时候为空
demo中控制非法入侵
在loginProcess.php中
判断账号密码正确的操作中 设置Session
然后在后台页面依次验证

然后考虑退出的时候(暂时只想到了手动点击退出页面
<a href="empProcess.php" >安全退出</a>
然后empProcss.php中如果没有接收到flag就说明是退出操作  
退出就清除Session
session_unset();
session_destroy();
php.ini 中的设置
session_name
设置session的名字

session.save_path = 路径
网站session目录文件

session.gc_maxlifetime = 1440 
最大生命周期
session.gc_probability = 1
session.gc_divisor = 1000
一定概率垃圾回收

session.cookie_lifetime = 0
cookie默认生命周期,默认是0 
当关闭浏览器后,该cookies生效

session_set_save_handler 
( callable $open , callable $close , callable $read , 
callable $write , callable $destroy , callable $gc [, callable $create_sid ] )
可自定义 $open $close $read $write $destroy $gc
区别
Cookie是传送给客户端的
Session是写到服务端的,并且创建Session时候传回的一个Cookie-SID
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值