huboo82 发表于 2011-12-7 22:16:31

CI 2.1.0无法设置cookie

至少在我这里是这样,用了原始ci的程序,仍然无法设置cookie。
环境:xampp 1.7.7,php版本为5.3.8,Windows7 x64,chrome15和Firefox8。
cookie的helper已加载,autoload和使用时再load两种都尝试过;
$this->input->set_cookie(array('name' => 'Name', 'value' => 'Value'))

$this->input->set_cookie('Name', 'Value')

set_cookie('Name', 'Value')
三种设置方式也都试过。
但是我把system/core/Input.php里的set_cookie方法结束时的原生setcookie方法里只保留$prefix.$name, $value两个参数就可以设置cookie了,在chrome里就可以看到cookie了。

不知道有没有人也遇到这个问题呢,或者这只是我的个例而已,求助。{:soso_e118:}

Rabbit_52 发表于 2011-12-11 19:43:14

怪啦~我也是用的新的2.1就能设cookie呀~

柏新星 发表于 2011-12-11 22:14:15


<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class Welcome extends CI_Controller {

    public function index() {
      $this->load->view('welcome_message');
    }

    public function setcookie($key, $value) {
      $this->load->helper('cookie');
      set_cookie($key, $value, '86500');
    }

    public function getcookie($key) {
      $this->load->helper('cookie');
      var_dump(get_cookie($key));
    }

}

我是的这样就可获取cookie了 一定要设置时间大于0

色空 发表于 2011-12-12 10:55:17

我设置的cookie 也取不出来啊:'(,不知道怎么搞的

huboo82 发表于 2011-12-22 20:22:33

确实要设置过期时间,否则是没法设置cookie。

$this->input->set_cookie('flavour1', 'mobile1');
$this->input->set_cookie('flavour2', 'mobile2', 365 * 24 * 60 * 60);

只有第二行设置成功cookie。

跳墙的狗 发表于 2012-8-19 17:58:38

貌似2.1.1不能用get_cookie()

mofe11 发表于 2013-10-8 16:53:24

thanks 原来需要设置过期时间啊
页: [1]
查看完整版本: CI 2.1.0无法设置cookie