我在codeigniter中有一个account_activation控制器,用于更改用户数据库中的值,并且应该取消设置会话并销毁我的ci_sessions数据库中的会话。
看起来像这样
function account_activation (){
//blablabla database stuff
$the_results['message'] = "Dein Account wurde erfolgreich aktiviert";
$this->session->sess_destroy();
$this->layout->render_page('/Startseite/aktivierung', $the_results);
}
并且我被重定向到Startseite / aktiverung /并且可以看到我的用户数据未设置,并且会话被销毁(我在标题中打印我的userdata / session以进行监控)。 如果我现在点击主页按钮,我的所有用户数据都会回来,例如system_login == true虽然我看到它已经在上一页上消失了。
我正在努力工作几个小时,我真的很沮丧..请告诉我,我在这上面犯了一些逻辑错误;)
问候,菲律宾
答案 0 :(得分:2)
我听过几次有些人遇到过类似的问题。他们为解决这个问题所做的是将会话数据设置为空值。
像
function account_activation (){
//blablabla database stuff
$the_results['message'] = "Dein Account wurde erfolgreich aktiviert";
$this->session->set_userdata('user_id', 0);
$this->layout->render_page('/Startseite/aktivierung', $the_results);
}
然后验证用户的每个页面加载。