簡體   English   中英

Codeigniter中的會話問題

[英]session issue in codeigniter

我正在使用codeigniter會話。 當我的用戶登錄會話成功存儲了我想存儲在其中的數據記錄,並且在注銷階段刪除了特定記錄時。 它正常工作。

但是問題是當我使用以下代碼打印會話中存儲的所有數據時

$this->session->all_userdata();

它顯示兩條記錄,一條記錄是在登錄期間存儲的,另一條是默認存儲的。 如果我在登錄之前檢查了同一件事,則向我顯示具有會話數組中一些默認值的一條記錄。 像這樣:

Array ( [session_id] => c59388c6a8 [ip_address] => 230.230.230.230 [user_agent] => Mozilla/5.0 (Windows NT 6.3; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0 [last_activity] => 1420158230 [user_data] => [last_rec] => stdClass Object ( [id] => 30 [first_name] => Daniel [last_name] => james [user_email] => d@gmail.com [score] => 449 [picture] => images/301399704385.jpg [country] => USA [city] => na [userid] => d430 ) ) 

我不知道為什么會話類用我的會話數組變量返回相同的對象。

注銷時,取消設置您單獨提供的所有用戶數據,然后銷毀會話。

像這樣使用它。

$this->session->unset_userdata('id'); 
$this->session->unset_userdata('first_name');
$this->session->unset_userdata('last_name'); 

.....

等等。

然后,使用下面的代碼破壞會話。

$this->session->sess_destroy();

在那之后,檢查用戶數據是否仍然存在。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM