第一次POST成功后设置好Session,然后用Get方法访问地址,Session为什么没有?

    public function login() {
        if($this->input->server('REQUEST_METHOD') == 'GET'){
            if(isset($this->session->login)){
                $this-> output ->set_output(json_encode(array('status' => 'true', 'data' => 'login seccess')));
            }else{
                $this-> output ->set_output(json_encode(array('status' => 'true', 'data' => 'please login')));
            }
        }
        else if ($this->input->server('REQUEST_METHOD') == 'POST'){
            $newdata = array('login' => 'logged' );
            $this->session->set_userdata($newdata);
            $this-> output ->set_output(json_encode(array('status' => 'true', 'data' => 'please login 2')));
        }

POST到一个地址成功后,不是设置好了SESSION了吗?然后我再GET地址,没有返回 login seccess!哪里出了问题?

阅读 4.7k
6 个回答

已解决了,是配置问题,CI的session手动初始化貌似有问题,在config下autoload文件下配置下 就OK了!

cookie呢?

额,不懂PHP。
不过你post的时候session用的是set_userdata()但是你get的时候判断的是session->login,这样可以么?

先了解session 和 cookie的关系再说吧,拿框架的方法去解释问题,没什么意义

设置是对的取是错的

$this->session->userdata('login');
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题