Reputation: 57
public function LoginUser()
{
$this->form_validation->set_rules('email', 'Email', 'required');
$this->form_validation->set_rules('password', 'Password', 'required');
if ($this->form_validation->run() == FALSE)
{
$this->load->view('login');
}
else
{
$data['Email']=$this->input->post('email');
$data['Password']=$this->input->post('password');
$result=$this->UserAccount_model->LoginUser($data);
if($result)
{
$session_data = array(
'sesid' => $result[0]->id,
'sesname' => $result[0]->Name,
'sesemail' => $result[0]->Email);
// Add user data in session
$this->session->set_userdata('logged_in', $session_data);
$url=base_url()."UserAccount/LoggedIn";
header("Location:$url");
}
Now i am accessing session data in photo controller
public function LikePhoto()
{
$Id=$this->uri->segment(3);
$UserId=$this->$session_data['sesid'];
print($UserId);
exit();
but this gives error
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: session_data
Filename: controllers/Photo.php
Line Number: 55
Upvotes: 0
Views: 171
Reputation: 16436
In CI to get session data you have to use $this->session->userdata()
So change your code to:
$UserId=$this->session->userdata('logged_in')['sesid'];
EDIT If you want to store data from array only add array variable in session
So change
$this->session->set_userdata('logged_in', $session_data);
To
$this->session->set_userdata($session_data);
And to retrieve :
$UserId=$this->session->userdata('sesid');
Upvotes: 2