2013-02-11 41 views
1

我想在CodeIgnitier中设置一个cookie,但没有运气。 我正在寻找一个解决方案,并且我在Stackoverflow上也发现了一些帖子,但是他们都没有为我解决问题。Codeignitier“set_cookie”不起作用

的代码是:

$this->load->helper('cookie'); 
set_cookie('username',$this->input->post('username')); 

没有饼干被执行后设置。

为了避免错误的答案: 'secure'在配置文件中设置为FALSE,其他所有内容也都是默认值。 根据浏览器,没有设置cookie。只有Codeignitier本机cookie - ci_session在此处列出。

回答

3

通过阵列设置它像这样:

$cookie = array(
    'name' => 'username', 
    'value' => $this->input->post('username'), 
    'expire' => '0', // expiration time 0 is until browser closes, set to large number for 'remember me' cookie 
    'domain' => '.mysite.com', // set this to the domain the cookie will be under with a leading . 
    'path' => '/', 
    'prefix' => '', 
    'secure' => FALSE 
); 
$this->input->set_cookie($cookie); 
+0

感谢您的回答,但我想一切办法,包括这个 - $>输入 - > set_cookie,与阵列或不阵列。没有用。顺便说一下,助手永远不能扩展一个类,但确实该函数是$ this-> input-> set_cookie函数的别名 – Yaakov 2013-02-11 21:39:36

+0

它必须带有一个值,因为登录有效。我在用户登录时设置了cookie,以便能够“记住”他的用户名以便以后访问 – Yaakov 2013-02-11 21:43:42

+0

我对扩展进行了更正。我只是检查了来源,它确实是一个别名。 = o) – 2013-02-11 21:44:18