James
James

Reputation: 27

How to use session_data in codeigniter throughout Website without including in particular view

Is there any other best way to use session_data in website.

How i set session in my project:

$sess_array = array('id' => $row->user_id,'name'=>$row->user_name,'email'=>$row->email,'condition'=>'','balance'=>$row->balance,'did_alloted'=>$row->did_alloted,'create_date'=>$row->create_date);
$this->session->set_userdata('logged_in', $sess_array);

when it comes to controller:

$data['id'] = $session_data['id'];
$data['name'] = $session_data['name'];
$data['email'] = $session_data['email'];
$data['balance']=$session_data['balance'];
$data['did_alloted']=$session_data['did_alloted'];
$data['create_date']=$session_data['create_date'];
$this->load->view('san-reception', $data);

and in my view. I use <?php echo $name ?> to get session_data.

So is there any method by which i can directly access session_data in view without including as $data.

Upvotes: 0

Views: 209

Answers (2)

Giri Annamalai M
Giri Annamalai M

Reputation: 809

public function __construct()
{
    parent::__construct();
    $data['session_data']=$this->session->user_data('logged_in');
}

public function some_function(){
    $data['dummy']="";
    $this->load->view('someview3',$data)
}
public function some_function1(){
    $data['dummy']="";
    $this->load->view('someview1',$data)
}

public function some_function2(){
    $data['dummy']="";
    $this->load->view('someview2',$data)
}

If you assign that into the constructor then it will call by automatically whenever a function calls in the controller.

you can view it in you view page by,

print_r($session_data);

Upvotes: 0

shankar kumar
shankar kumar

Reputation: 648

$this->session->userdata('logged_in'); will be available directly in views and hence you just need to assigned this to a variable and then use that as array like bellow.

   $userdata=$this->session->userdata('logged_in');

now variable $userdata contain all array field that you set in controller and hence you can use it as $userdata['id'], $userdata['name'] etc

Upvotes: 1

Related Questions