2011-01-25 169 views
2

我不知道爲什麼,但我在頁面之間丟失了我的CodeIgniter會話數據。會話ID正在改變。什麼會造成這種情況?一旦它被設置,它不應該從任何頁面訪問它嗎?CodeIgniter會話丟失數據

會話數據在此設置在配置頁面:然後

<?php $config = array(
        'power' => $_COOKIE['power'], 
        'oemclass4' => $_COOKIE['class'], 
        'cooling' => $_COOKIE['cooling'], 
        'beam' => $_COOKIE['beam'], 
        'wavelength' => $_COOKIE['wavelength'], 
        'model_no' => $_COOKIE['part']); 

    $this->session->set_userdata('config', $config); 

?> 

用戶被重定向到一個頁面,其配置的細節。會話userdata仍然存在。然後,它們被Javascript重定向到(window.location)登錄頁面,然後userdata消失。

+0

如何顯示一些代碼?對於有問題的兩個控制器可能?你也有任何*自定義*自動加載的庫,插件可能會重新分配會話?! – ifaour 2011-01-25 23:06:18

回答

0

我有一個類似的問題。請確保,例如,如果base_url
設置爲說dynamic.dns.com,並且您在本地主機上鍵入127.0.0.1
或localhost對其進行測試,則這些都是瀏覽器的所有不同域,這可能會導致
這個問題。

希望它能幫助:)

1

我讀的地方使用127.0.0.1在Cookie域在本地主機上工作時。但是,當我將cookie_domain更改爲「localhost」時,會話開始工作。我打算切換到本地會話,但更改爲「本地主機」工作&我已經與本地主機上的CI會話一起移動。

0

這是因爲配置cookie,我的session_id一次又一次地改變。

$config['cookie_prefix'] = ''; 
$config['cookie_domain'] = ''; 
$config['cookie_path'] = '/'; 

但我一直...我的BDD與本地會話PHP的更新,但我在USER_DATA瓦爾作爲被破壞> < USER_DATA也是一個問題。

2

在本地主機上工作的確如此。指定cookie_domain爲localhost。這將保留頁面重定向上的所有會話數據。