codeigniter - Не удалось сохранить сеанс корзины покупок, поскольку код управления сеансом базы данных CI восстанавливает идентификатор сеанса - PullRequest
0 голосов
/ 06 декабря 2010
  1. Я отображаю раздел товаров, в котором есть кнопка добавления в корзину.
  2. Пользователь может войти или не войти в систему.
  3. Вместо того, чтобы сохранять элементы корзины всеанс я поддерживаю его в базе данных с идентификатором текущего сеанса в качестве ссылки.
  4. После нескольких переходов или времени ожидания сеанса по умолчанию идентификатор сеанса восстанавливается.
  5. Таким образом, идентификатор текущего сеанса не совпадаетс элементами, добавленными пользователем в базу данных.
  6. Таким образом, общее количество элементов и количество, которые я отображаю в верхней части страницы, потому что это ноль.
  7. Я сохранил элементы корзины в сеансев предыдущих проектах, поэтому у меня не было никаких проблем.
  8. Я использую работу рамки воспламенителя кода

Что я должен сделать, чтобы синхронизировать идентификатор сгенерированного сеанса codeigniter и сеансидентификатор товаров в корзине.Я использую Native Session в codeigniter, а не управление сессиями по умолчанию, которое поставляется с codeigniter.Причина в том, что сессия не работает в IE6, потому что я надеюсь, что IE6 не понимает заголовки CI или что-то в этом роде.

Я хочу сохранить элементы корзины только в базе данных.Что мне делать?

Ответы [ 2 ]

1 голос
/ 07 июня 2011

Или вы можете использовать собственный сеанс CI

0 голосов
/ 06 декабря 2010

Вы можете использовать стандартные сессии PHP - отследить свой собственный идентификатор сессии и сохранить его в БД.Полностью пропустите восстановленный CI-SessionID.

http://www.php.net/manual/en/session.examples.basic.php

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

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