コアPHPでセッションを作成する方法を知っていますが、codeigniterでこれを行う方法は理解していますが、セッションが設定されているかどうかを確認する方法を理解できません。私はビューでこれを確認しようとしましたが、それは常に私にメッセージを与えますPlease Login
。
セッションが設定されているかどうかを確認する方法を教えてください
コントローラ
if ($user_type=='Student')
{
if ($LoginData= $this->loginmodel->studentLogin($username,$password))
{
foreach($LoginData as $UserId)
{
$currentId= $UserId->StudentId;
}
//[[session]]
$data['students_data']= $this->loginmodel->student_profile($currentId);
$this->session->userdata('$data');
$this->load->view('students',$data);
}
else
{
//$data['message']= array('Invalid Username or Password');
$this->load->view('Login');
echo "Invalid Username or Password";
}
}
elseif ($user_type=="Faculty")
{
if($data['faculty_data']=$this->loginmodel->faculty_admin($username, $password))
{
$this->session->userdata('$data');
$this->load->view('faculty');
}
else
{
$this->load->view('Login');
echo "Invalid Username or Password";
}
}
[〜#〜]ビュー[〜#〜]
<?php
if (!$this->session->userdata('$data'))
{
echo "Please Login";
}
else
{
}
?>
<!DOCTYPE
セッションの作成:
$newdata = array(
'username' => 'johndoe',
'email' => '[email protected]',
'logged_in' => TRUE
);
$this->session->set_userdata($newdata);
または
$this->session->set_userdata('some_name', 'some_value');
ただし、その前に、セッションライブラリが含まれていることを確認してください。
$this->load->library('session');
セッションデータを取得:
if($this->session->userdata('whatever_session_name_is')){
// do something when exist
}else{
// do something when doesn't exist
}
Has_userdataの使用
if ($this->session->has_userdata('username')) {
return TRUE;
} else {
return FALSE;
}