PHP中禁用cookie后session的实现

Posted monty1

tags:

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

php中禁用cookie后session的实现

一、问题叙述:

  已经知道,session的实现是基于cookie的。是将session的id通过cookie在客户端和服务器端传递。然后在各个页面之间保持同一个session。但如果用户将客户端浏览器的cookie禁用了之后,应该如何实现session信息呢?

  解决办法是:通过在URL后面附加session_id的信息来维持不同页面之间的session_id的传递。

  

技术分享图片
 1 //create_session.php
 2 <?php
 3     session_start();
 4     $_SESSION[‘name‘]=‘yang‘;
 5     $sid=session_id();
 6     echo $sid.‘<br>‘;
 7 ?>
 8 <a href="get_session.php?sid=<?php echo($sid); ?>">获取</a>
 9 
10 //get_session
11 <?php
12     session_start();
13     session_id($_GET[‘sid‘]);
14     if (isset($_SESSION[‘name‘])) {
15         # code...
16         echo $_SESSION[‘name‘];
17     }else{
18         echo "no session";
19     }
20 ?>
View Code

 

 

 

以上是关于PHP中禁用cookie后session的实现的主要内容,如果未能解决你的问题,请参考以下文章

php 会话控制(禁用cookie后session为什么会失效?)

Java Web 禁用Cookie对Session的影响

php中cookie和session的问题

php中cookie和session的区别与简易用法

php在客户端禁用cookie时让session不失效的解决方法

php会话(session)实现原理