Because of our payment system we have to use some kind of relay system that is on third party website, to have valid PCI (HTTPS).
We are currently facing a wierd bug we have used too many hours on now.
We have 4 steps in our registration.
- Enter all the data.
- Add images
- Payment
This is how we do:
On step 1 we save all post data into a session
$this->session->set_userdata("campaigncreation", $out);
And yes $out contains all the data.
On step we can easily print out the session data for campaigncreation;
<?print_r($this->session->userdata)?>
Because we need to go to another website, we add the session_id into our call, to keep the session on third party website.
Our url is like: https://relay.ditonlinebetalingssystem.dk/relay/v2/relay.cgi/http://xxxx.dk/something/controller/a1264526031adb9c71ae433eef44bfa0
As you see we take the session_id (<?=$this->session->userdata("session_id")?>
) in the URL, and in our controller we replace the session id with that in the controller as this:
$phpsess is "a1264526031adb9c71ae433eef44bfa0
"
if ( !empty($phpsess)){
$this->session->set_userdata("session_id",$phpsess);
}
When we now print out the user data we get the correctly session_id, but it doesn't take the data with us from step 1 in some how. What do to?
I only get
Array
(
[session_id] => a1264526031adb9c71ae433eef44bfa0
[ip_address] => 87.54.46.121
[user_agent] => Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.69 Safari/537.36
[last_activity] => 1383052142
[user_data] =>
[advertiser_id] => 1
[advertiser_name] => xxxx
)
But in some way it still have the correct data for advertiser_id and advertiser_name, so that is totally wierd.
What do to?
It's like codeigniter refresh the session_id on each page load and therefore there will be problem.
Or maybe because of the domain cookie settings? I dont know, please help us.