脚本宝典收集整理的这篇文章主要介绍了php – Codeigniter中的会话变量不工作,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
更新
这是我设置我的会话变量的模型
function login ($username,$password) { $this->db->where('username',$username); $this->db->where('password',$password); $query = $this->db->get('users'); if ($query->num_rows()>0) { foreach ($query->result() as $rows) { $data = array( 'user_name' => $rows->username,'LOGged_in' => TRUE,'validated' => true ); } $this->session->set_userdata($data); //$user = $rows->username; //$this->session->set_userdata('user_name',$user); return true; } else { return false; } }
这是我的控制器从哪里我重定向到视图
public function verification() { $username = $this->input->post('username'); $password = $this->input->post('password'); $result = $this->site_model->login($username,$password); //$result = $this->session->set_userdata('validated'); if ($result) { //$this->admin(); //$this->session->set_userdata('login_state',TRUE); redirect ('site/index'); } else { redirect ('site/login'); //$this->load->view('login'); } }
我已经调用了session_start();在控制器中的construct()下;
这是我在视图中访问会话变量的方式
<?PHP if ($this->session->userdata('user_name') != "") { ?> .....
删除该session_start().
尝试使用flashdata. Flashdata是临时会话,主要用于您的类型的情况,我们需要将用户重定向到另一个页面并显示一些成功或错误消息.
>设置flashdata:
$this-> session-> set_flashdata(‘item’,’value’);
>获取flashdata:
$这 – >会话而> flashdata( ‘项目’);
这是文档链接http://www.codeigniter.com/user_guide/libraries/sessions.html#flashdata
以上是脚本宝典为你收集整理的php – Codeigniter中的会话变量不工作全部内容,希望文章能够帮你解决php – Codeigniter中的会话变量不工作所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。