[英]Session on codeigniter not working perfectly
我在代碼上有一個關於會話(用戶數據/閃存數據)的問題。
模態
public function loginCheck(){
$email = $this->input->post('email');
//encrypt password
$this->load->library("hashing");
$password = $this->hashing->incrypt($this->input->post('password'));
$this->params = array('email' => $email, 'password' => $password);
$user = $this->findById();
if(count($user)>0){
$data = array(
'email' => $user->email,
'isLoggedIn' => 1,
'user_id' => $user->id,
'user_type' => $user->user_type
);
$this->session->set_userdata($data);
return true;
}
return false;
}
還有我的控制器
public function login(){
$this->load->model('model_users');
//if posted login
$submit = $this->input->post('submit');
if($submit){
$this->load->model('model_users');
$rules = $this->model_users->rules;
$this->form_validation->set_rules($rules);
if($this->form_validation->run() == true){
// user credential from model
if($this->model_users->loginCheck()== true){
redirect("admin/site/index");
} else{
$this->session->set_flashdata('message', 'Oops! Invalid email and/ or password.');
redirect("admin/site/login");
}
}else{
$this->session->set_flashdata('message', 'Oops! Invalid email and/ or password.');
redirect("admin/site/login");
}
}
$this->loadPartialView("admin/login");
}
未在CI 3.0上設置會話。 函數set_userdata()運行不正常。
手動會話初始化也有麻煩。
在使用之前,請嘗試將會話庫加載到Controller和Modal中。
$this->load->library('session');
我不認為這是否是一個很好的答案,但是您是否view
您的會議是正確的? 我所知 ,
CodeIgniter支持“閃存數據”或會話數據,這些數據僅可用於下一個服務器請求,然后會自動清除。
可以在sesseion文檔中找到
所以在您的div
標簽或其他視圖中,
<?php echo $this->session->flashdata('message');?>
首先,您可以添加會話庫。
添加庫有兩種方法。
1)您可以添加控制器方法。
2)在autoload.php文件中自動加載。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.