Двусторонняя сессия для доставки корзины - PullRequest
3 голосов
/ 09 марта 2011

Это то, что я пытаюсь сделать, мне просто интересно, как лучше всего это сделать.

У меня есть стандартный сайт электронной коммерции.Когда клиент просматривает сайт, его содержимое корзины сохраняется в сеансе var.Корзина НЕ хранится в базе данных, пока клиент не оформит заказ.

Теперь, иногда клиент звонит в колл-центр, прежде чем он фактически размещает заказ.Затем он задает вопросы о своей корзине - я хочу, чтобы агенты с другой стороны могли извлечь содержимое корзины.

Я думал о том, чтобы зашифровать идентификатор сеанса на стороне клиента и затем представить «идентификатор корзины» на странице корзины, чтобы клиент мог передать агенту по телефону.Затем я расшифрую идентификатор сеанса, и агент сможет получить доступ к содержимому корзины прямо на странице cart.php.

Мои вопросы:

  1. Это безопасно?Нет, где по пути я храню личную информацию клиента в сеансе.Только содержимое корзины.
  2. Какой мой лучший метод шифрования здесь?
  3. Есть ли более простой способ добиться этого?

1 Ответ

1 голос
/ 09 марта 2011

Есть ли более простой способ добиться этого?

Да.

Сохраните корзину пользователя в базе данных, присвойте ей идентификатор, а затем используйте этот идентификатор в качестве токена, переданного по телефону. Старайтесь избегать использования последовательного идентификатора здесь, в целях конфиденциальности и предположения.

С данными PHP-сессии трудно работать, потому что это вид сериализованных данных, но не совсем. Вам будет гораздо лучше обслуживать, храня корзину в базе данных.

Конечно, поскольку сессии истекают, тележки тоже должны. Сохраните дату последнего изменения вместе с корзиной и время от времени убирайте корзины, которые по-прежнему не могут принадлежать активным сеансам.

...