【问题标题】:codeigniter session is not working in IE but all other browsers are workingcodeigniter 会话在 IE 中不起作用,但所有其他浏览器都在工作
【发布时间】:2013-06-10 15:05:13
【问题描述】:

我将会话数据设置为用户数据并重定向到页面。但会话数据未保存在 IE 中,但 chrome、firefox 和 opera 正在运行

public function access_granted(){
     $user_session_data = array(
                                 'username' => $this->input->post('username'),
                                 'is_user_logged_in' => 1
                               );

            $this->session->set_userdata(array("user" => $user_session_data));
            $this->session->set_flashdata('successed', 'You Logged in Successedfully');
            redirect('index');
    }

【问题讨论】:

  • 你的 cookie 名称是什么?如果有下划线,请尝试从中删除下划线。还有什么版本的IE?
  • sess_cookie_name 在您的 codeingniter 的 config.php 文件中定义。
  • 尝试删除下划线...我不确定它是否会改变 IE8 的任何内容,但这是早期版本的 IE 的问题。
  • 还建议您阅读以下问题 stackoverflow.com/a/2006044/342740 的 cmets,他们在其中评论使用下划线时在 IE 上失败,而删除它时一切正常。

标签: php codeigniter session


【解决方案1】:

我找到了这篇文章,它似乎为我解决了问题,但我想在确认之前进行更多测试。同时,你可以试试这个吗?

http://ellislab.com/forums/viewthread/211955/#982986

同样如您回答的 cmets 中所述,删除 config.php 中 cookie 名称中的下划线“_”(如果存在)。

问候,

科布斯

【讨论】:

    【解决方案2】:

    在控制器构造函数中使用这个头文件

    header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');
    

    如果使用本机会话比使用 CI 会话效果不佳..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-27
      • 2014-08-13
      • 1970-01-01
      相关资源
      最近更新 更多