在codeigniter中销毁会话时出错

时间:2013-11-19 13:45:42

标签: php

我在使用代码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数据也无效。

1 个答案:

答案 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; ?>