PHP (CodeIgniter) Pass Object Through Session
Posted
by FranticPedantic
on Stack Overflow
See other posts from Stack Overflow
or by FranticPedantic
Published on 2010-05-23T01:04:41Z
Indexed on
2010/05/23
1:10 UTC
Read the original article
Hit count: 326
I am using PHP5 and CodeIgniter and I am trying to implement a single-sign on feature with facebook (although I don't think that facebook is relevant to the question). I am somewhat of a novice with PHP and definitely one with CodeIgniter, so if you think my approach is just completely off telling me that would be helpful too.
So here is in short what I am doing:
//Controller 1
$this->load->plugin("facebook");
$facebook = new Facebook(array (
'appId' => $fbconfig['appid'],
'secret' => $fbconfig['secret'],
'cookie' => true,
)
);
$fbsession = $facebook->getSession(); //works fine
$this->session->set_userdata('facebook', serialize($facebook);
Now I would like to grab that facebook object in a different controller.
//Controller 2
$facebook = unserialize($this->session->userdata('facebook'));
$fbsession = $facebook->getSession();
Produces the error: Call to undefined method getSession. So I look up more about serialization and think that maybe it just doesn't know what the facebook object's attributes are.
So I add in a
$this->load->plugin('facebook');
To controller 2 as well and I get a "Cannot redeclare class facebook." I am strongly suspecting that I am misunderstanding sessions here. Do I have to somehow tell PHP what kind of object it is? Thanks for the help.
© Stack Overflow or respective owner