Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Из-за чего может пропасть из сессии id заказа?


Recommended Posts

Пытаюсь переписать чекаут. Та еще задачка). У меня вопрос. Иногда, при заказе пропадает $this->session->data['order_id']. Ругается модуль оплаты, который вызывает метод addOrderHistory и пишет, что данная переменная не установлена. Сам unset нигде не ставил, по дефолту есть только в login, logout и success контроллерах. Первые два никак не могут сработать, а последний вызывается после метода addOrderHistory. Я поставил логгер, который записывает в файл значение сессии сразу после 

$this->session->data['order_id'] = $this->model_checkout_order->addOrder($order_data);

в контроллере checkout/confirm.php, где эта переменная и устанавливается. И она в сессии есть! Т.е. заказ нормально создается, возвращается id заказа и записывается в сессию. Ниже по коду в checkout/confirm.php ничего не менял. А там сразу идет вывод представления модуля заказа, в котором нажимается кнопка оформления заказа. Может кто сталкивался? Где нужно копать. 

Надіслати
Поділитися на інших сайтах


Вот тут в сессии order_id еще есть - http://prntscr.com/n2ao7n . Это контроллер checkout/confirm.php

А тут уже нет, причем именно только order_id нет, остальное все в сессии есть. Это уже контроллер модуля оплаты - http://prntscr.com/n2aoz4

Надіслати
Поділитися на інших сайтах


Нашел проблему. У меня форма обновлялась даже если уже делался заказ. Из-за этого устанавливалась заново часть сессии.

if(!json['error'] && !json['warning']) {
  Checkout.reloadForm();

  if(json['confirm']) {
    Checkout.confirmOrder();
  }
}

Заменил на

if(!json['error'] && !json['warning']) {
  if(json['confirm']) {
    Checkout.confirmOrder();
  } else {
    Checkout.reloadForm();
  }
}

Извините за беспокойство. Просто отчаялся уже решить проблему. И у меня всегда так, только задам вопрос, как нахожу решение.

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.