一些用户应该重定向到他们的个人资料。到预防循环页面,我应该取消设置用户会话数据。但是通过我的代码,用户重定向到/profile/settingsProfile
页面,然后页面一次又一次刷新。
$data['redirectToProfile'] = $this->session->userdata('redirectToProfile');
if($data['redirectToProfile'])
{
$this->session->unset_userdata('redirectToProfile'); //not work
//$this->session->set_userdata(array('redirectToProfile' => false)); // not work
redirect('/profile/settingsProfile', 'refresh');
}
我的代码放置在加载所有视图之前
试试这个
在构建function __construct()
{
parent::__construct();
ob_start();
$this->load->library('Session');
}
在控制器$redirectToProfile = $this->session->userdata('redirectToProfile');
if(!empty($redirectToProfile))
{
echo "Session data is :".$redirectToProfile ;
$this->session->unset_userdata('redirectToProfile');
ob_clean();
//redirect('/profile/settingsProfile');
echo "session data is :". $redirectToProfile ;
}
else
{
echo "empty";
}
在CodeIgniter 3和以后的版本中,会话工具被设计为web会话的UI,而不是它们自己单独的东西,所以你可能会发现使用PHP函数如session_unset和session_destroy成功:
http://php.net/manual/en/function.session-unset.php