我在使用代码igniter破坏php中的会话时出现问题。我使用了给定的代码: 控制器:home.php
public function logout()
{
$this->load->library('session');
$this->session->sess_destroy();
$this->session->set_flashdata('msg','Please login to continue');
redirect(base_url().'home/index','refresh');
}
并在视图中:profile.php
<a href="<?php echo base_url();?>home/logout">Logout</a>
点击“退出”后,页面将被重定向到“主页/索引”页面,如控制器home.php中的注销功能所述。但是当我在浏览器中单击后退按钮时,页面将被定向到配置文件页面(用户登录时加载的页面。)请告诉我答案,如何销毁该会话以及为什么我的flash数据也无效。
答案 0 :(得分:0)
你可以尝试这样的事情
function logout(){
$this->CI =& get_instance();
$this->CI->session->sess_destroy();
$msg= $this->session->set_flashdata('msg','Please login to continue');
$data = array();
//...
$data['msg'] = $error;
$this->load->view('someview',$data);
redirect(base_url().'home/index','refresh');
}
// And in your view file
<?php if($msg) : ?>
<div id="msg_text"><?php echo $msg; ?></div>
<?php endif; ?>