Длительность флэш-данных CodeIgniter

У меня вопрос по длительности флеш-данных CodeIgniter. Проблема связана с электронной коммерцией и регистрацией событий через Facebook Pixel и Google Analytics.

В настоящее время я использую переменную, скажем, для примера она называется

$this->session->flashdata('purchase_total');

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

Первое событие (в заголовке)

fbq('track', 'Purchase', {
value: '<?php echo $this->session->flashdata('purchase_total'); ?>',
currency: 'MXN'
});

Второе событие (в нижнем колонтитуле)

ga('ecommerce:addTransaction', {
'id': '<?php echo $this->session->flashdata('id_purchase'); ?>',
'affiliation': 'Printome',
'revenue': '<?php echo $this->session->flashdata('purchase_total'); ?>',
'shipping': '<?php echo $this->session->flashdata('tracking_shipping'); ?>',
'tax': '<?php echo $this->session->flashdata('tax'); ?>',
'currency': 'MXN'
});
ga('ecommerce:send');

Теперь purchase_total правильно регистрируется в Facebook, но в Google Analytics транзакция регистрируется, но без purchase_total,

Я проверил Документация библиотеки сеансов CodeIgniter, и это говорит, что flashdata доступен для одного запроса и затем очищен.

Дело в том, что в этом случае я не уверен, будет ли запрос представлен $this->session->flashdata('purchase_total') или обновить страницу.

0

Решение

В вашем случае я рекомендую использовать Tempdata который может держать в течение ограниченного времени (можно установить)


FlashData

Может хранить данные до обновления / перезагрузки текущей страницы. Как только это переместится на другую страницу, Flashdata будет уничтожен. Он может содержать N раз, но уничтожается при обновлении текущей страницы.


TempData

Это нечто за FlashData, Это может содержать данные многократных перенаправлений, а также N раз. Но это не похоже на сессию. Это похоже на сессию.

Синтаксис : $this->session->mark_as_temp('item', 300);


Разница между Tempdata а также Flashdata

       Flashdata                                               TempData
1. Short Time                                       Can hold for Bit long
2. automatically destroyed when page refreshed      Can hold until expiration time reaches
3. Page reload not allowed                          Can Reload or redirect
4. Flashdata name and Value only required           Tempdata name, Value only and expiry time Required

связи

  1. Tempdata — codeigniter.com
  2. Flashdata- codeigniter.com
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector