cookie和session

Posted running-fly

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cookie和session相关的知识,希望对你有一定的参考价值。

1.cookie和session之间的关系

转自https://www.cnblogs.com/andy-zhou/p/5360107.html

2.浏览器没有禁用cookie时,服务器端会生成session_id存储在浏览器端中的cookie里面。

 8.php页面代码如下所示

1 <?php
2 session_start();
3 $_SESSION[\'va\'] = \'abc\';
4 $s = session_id();
5 echo "<a href=\'9.php?s=".$s."\'>a</a>";

浏览器访问如下展示。说明存储在cookie里面的PHPSESSID的值和页面上session_id()函数生成的值是一样

 

 

3.cookie禁用之后怎么识别用户的session_id

 1)使用url携带sessionid的值

 2)设置php.ini的session.use_trans_sid = 1或者打开enable-trans-sid选项,让PHP自动跨页传递session id。

 3)session_id值存储在登陆后存储在数据库或者中,在其它页面传入session_id值。

 第一种方式的代码如下

  8.php

<?php
session_start();
$_SESSION[\'va\'] = \'abc\';
$s = session_id();
echo "<a href=\'9.php?s=".$s."\'>a</a>";

  9.php

<?php
//session_id()函数必须在session_start()函数前面调用
session_id($_GET[\'s\']);
session_start();
echo "客户端禁止了cookie依然能传来session值:".$_SESSION[\'va\'];

  

  

 

以上是关于cookie和session的主要内容,如果未能解决你的问题,请参考以下文章

少部分手机浏览器对于COOKIE支持不够导致服务端无法读取session的解决方案

Cookie和Session的工作流程及区别(附代码案例)

cookie和session

cookie和session

cookie和session

会话技术知识点整理(Cookie和Session)