码迷,mamicode.com
首页 > 其他好文 > 详细

Cookie禁用使用Session值方法

时间:2015-04-21 20:48:28      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:cookie禁用使用session值方法

Cookie禁用使用Session值方法:


首先:

       PHP中的Session在默认情况下是使用客户端的Cookie来保存Session ID的,所以当客户端的cookie出现问题的时候就会影响Session了。必须注意的是:Session不一定必须依赖Cookie,这也是Session相比Cookie的实用之处。

当客户端的Cookie被禁用或出现问题时,PHP会自动把Session ID携带在在URL中,这样再通过Session ID就能跨页使用Session变量。

不是自带就能使用的,需要在配置文件中设置php.ini

1: session.use_trans_sid = 1   (是否在url使用sessionID,启用,可单独设置即可)

或 

2: 者打开“--enable-trans-sid”选项(让PHP自动携带Session ID,共享session值,可单独设置即可)

3: session.use_only_cookie=0  (是否仅使用cookie来保存sessionID,关闭这个特性,要结合1或2条件使用)


*当修改了设置条件值后,如果浏览器禁用了cookie,那么php会子在所有的a标签内增加sessionID传输



代码例子(禁用Cookie情况下):

leyangjun.php

<?php
           session_start();
           $_SESSION[’name’]="乐杨俊";
           $sn = session_id();
           $url="<a href="http://my.csdn.net/leyangjun/.""test2.php?id=".$sn."">共享Session</a>";
           echo $url;

 ?>

test2.php

 <?php
           session_id($_GET[’id’]);
           session_start();
           echo "共享Session变量name的值为:".$_SESSION[’name’];
 ?> 


例子二(不用连携带sessionID):

yangjun.php

<?php
           session_start();
           $_SESSION[’name’]="乐杨俊";
           $url="<a href="http://my.csdn.net/">共享Session2</a>"; //点击的时候注意看浏览其器左下角对应的值
           echo $url;

 ?>

lekey.php

 <?php
           session_start();
           var_dump($_SESSION);
 ?> 

Cookie禁用使用Session值方法

标签:cookie禁用使用session值方法

原文地址:http://blog.csdn.net/leyangjun/article/details/45174911

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!