php 如何在 Codeigniter 中检查会话是否设置?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/22985671/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to Check either Session is Set or Not in Codeigniter?
提问by user3480644
I know how to create session in core PHP, and I have understand how to do this in codeigniter, but I am unable to understand how to check, if the session is set or not? I have tried to check this through View but it always give me the meesage Please Login
.
我知道如何在核心 PHP 中创建会话,并且我已经了解如何在 codeigniter 中执行此操作,但是我无法理解如何检查会话是否已设置?我试图通过 View 检查这个,但它总是给我 meesage Please Login
。
Kindly tell me how can I check whether the session is Set or not Set
请告诉我如何检查会话是否已设置
Controller
控制器
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";
}
}
VIEW
看法
<?php
if (!$this->session->userdata('$data'))
{
echo "Please Login";
}
else
{
}
?>
<!DOCTYPE
回答by Sujit
Creating Session:
创建会话:
$newdata = array(
'username' => 'johndoe',
'email' => '[email protected]',
'logged_in' => TRUE
);
$this->session->set_userdata($newdata);
or
或者
$this->session->set_userdata('some_name', 'some_value');
But before that ensure that you have the session library included.
但在此之前,请确保包含会话库。
$this->load->library('session');
Get Session Data:
获取会话数据:
if($this->session->userdata('whatever_session_name_is')){
// do something when exist
}else{
// do something when doesn't exist
}
回答by ravi patel
回答by antelove
Using has_userdata
使用 has_userdata
if ($this->session->has_userdata('username')) {
return TRUE;
} else {
return FALSE;
}