2013-05-03 129 views
0
  $value = array(
      'id'  => $data['id'] , 
      'username' => $data['username'] , 
      'email' => $data['email'] , 
      'last_ip' => $this->input->ip_address() 

     ); 

     $value = serialize($value); 

     $cookie = array (
      'name' => 'is_logged' , 
      'value' => $value , 
      'expire' => time()+86400 , 

     ); 

     set_cookie($cookie); 

後,我有一個函數用於檢查的cookie失去的cookie在關閉瀏覽器

function get_k(){ 

    $k = get_cookie('is_logged'); 
    var_dump($k); 

} 

,而瀏覽器仍然是開放的這工作正常登錄後,但如果我關閉瀏覽器,它不工作了

我的配置

$config['cookie_prefix'] = ""; 
$config['cookie_domain'] = ""; 
$config['cookie_path']  = "/"; 
$config['cookie_secure'] = FALSE; 

我工作在本地主機/火狐

+0

您的瀏覽器配置爲在退出時刪除cookie嗎? – Chad 2013-05-03 12:24:28

+0

您的配置是否設置了配置以在瀏覽器關閉爲真時刪除Cookie? – tomexsans 2013-05-03 12:24:48

+0

這可能是這個問題的重複http://stackoverflow.com/questions/6290502/codeigniter-cookie-expiry-problem – 2013-05-03 12:26:27

回答

0

從'expire'值中刪除time(),CodeIgniter自動添加它。

'expire'後面還有一個流浪逗號。

+0

我要去嘗試它,但如果這是我在瀏覽器仍然打開時無法訪問cookie的問題 – max 2013-05-03 12:30:36

+0

這些都不重要。他爲時間增加了一個價值,所以基本上抓住當前時間並增加86400秒。另外,由於您指出的逗號在數組元素的末尾,因此不會導致任何問題。 – Chad 2013-05-03 12:31:19

+0

你會感到驚訝... – Ryan 2013-05-03 12:31:23