码迷,mamicode.com
首页 > Web开发 > 详细

php中cookie和session的问题

时间:2016-05-17 19:49:00      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:cookie session

前言:之前关于客户端cookie和服务端session的关系有点模糊,认为cookie禁用后session指定不能用了,通过验证后才发现自己的错误。

1:在php环境中的php.ini中有关session的设置值:

        //处理session存取的模式        
        session.save_handler = files
        
        //session档案存放路径
        session.save_path = /tmp
        
        //session使用cookie的功能,启动: 1
        session.use_cookies = 1
        
        //session名字
        session.name = PHPSESSID
        
        //自动启动;0:关;1:开启
        session.auto_start = 0
        
        //session使用cookie的生存期,以秒为单位
        session.cookie_lifetime = 0
这些默认值,不需要修改,就可以使用session了。

2:但是当我们得浏览器禁用cookie时,则会出现你认为的样子,session不能用。
    此时我们应该在php.ini中再去研究一下发现
    session.use_trans_sid = 1//这个字段允许SessionID通过URL明文传输
     session.use_only_cookies = 1 ; // 开启仅使用cookies存放会话id
    此时再去测试发现session又获取到了。
    但当  session.use_only_cookies =0;时,无法获取到session的,在php.ini中这个值默认是0
3:代码:①当浏览器没有禁用cookie时:
a.php:
    <?php
    session_start();
    $_SESSION[‘url‘] = ‘
    $url = "<a href=‘./b.php‘>下一个页面</a>";
    echo $url;
     ?>
    
 b.php
     <?php
         session_start();
         echo "session中url是:".$_SESSION[‘url‘];
     ?>
     
     
     ②当浏览器禁用cookie后,并且设置php.ini中
     session.use_trans_sid = 1//这个字段允许SessionID通过URL明文传输
     session.use_only_cookies = 1; // 开启仅使用cookies存放会话id
     代码:
  
  a.php
       <?php
    session_start();
    $_SESSION[‘url‘] = ‘
    $name = session_name();
    $id = session_id(); 
    $url = "<a href=‘./b.php?".$name."=".$id."‘>下一个页面</a>";
    echo $url;
     ?>
     
  b.php
  
    <?php
        session_id($_GET[‘PHPSESSID‘]);
         session_start();
         echo "session中url是:".$_SESSION[‘url‘];
     ?>

以上是我对cookie和session的理解,如有不对,可以留言,一起学习,进步。

本文出自 “sfcoding” 博客,请务必保留此出处http://sunfeng.blog.51cto.com/11312994/1774427

php中cookie和session的问题

标签:cookie session

原文地址:http://sunfeng.blog.51cto.com/11312994/1774427

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