Потеря переменной сеанса между одной страницей с библиотекой сеанса codeigniter - PullRequest
2 голосов
/ 26 октября 2011

В моем коде я пытаюсь сохранить переменную между двумя страницами, но я либо получаю строку, возвращающую "images", либо 0 ... или ничего не пытаюсь привести ее .. отображение на одной странице работает и отображает правильное число, но как только вы щелкнете по представлению на следующей странице - оно потеряно - я попытался включить cs_sessions в БД и без разницы

<?php   
 public function carconfirm($car_id = '')
        {

            if(empty($car_id))
            {
                redirect('welcome');
            }

            $this->load->model('mcars');
            $car = $this->mcars->getCar($car_id);

            $data['car'] = $car->row_array();


            $car_id = (int) $car_id;
            $this->session->set_userdata('flappy', $car_id);
            echo $car_id;



            //insert details 
            //display details

            $this->load->view('phps/carconfirm',$data);
        }

        function confirm()
        {

            //get vars

            $time_slot = $this->session->userdata('slot');
            $person_id = $this->session->userdata('person_id');
            $car_id = $this->session->userdata('flappy');

            $insert_array = array(  'slot'=> $time_slot ,
                                    'car'=> $car_id,
                                    'person_id'=> $person_id
                                );
            print_r($insert_array);

            $this->load->model('mbooking');
            $result = $this->mbooking->addbooking($insert_array);

            if($result)
            {
                redirect('welcome/options');
            }

        }
?>

переменная, которую я теряю, непостоянна - я изменил имя, чтобы увидеть, не в этом ли проблема

1 Ответ

2 голосов
/ 04 февраля 2012

Наконец-то я исправил это. Используя этот ответ также в SO: переменная сеанса установки codeigniter с переменной, не работающей , я сканирую свой js / css на предмет отсутствующих ресурсов. Оказывается, мой файлbox.js ссылается на файл loadingAnimation.gif в папке images. Вот где приходят images. Исправив отсутствующий файл, переменная sesion работает просто отлично.

Не уверен, почему CI заменяет (возможно) последнюю добавленную переменную сеанса, используя это, но, возможно, это потому, что CI не использует глобальную переменную $ _SESSION. CMIIW. Я использую эту статью как подсказку: http://outraider.com/frameworks/why-your-session-variables-fail-in-codeigniter-how-to-fix-them/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...