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

 

Есть несколько вариантов, как хранить данные в корзине интернет-магазина до оформления клиентом заказа.

  • База данных
  • Сессия
  • Куки
  • Local Storage
  • IndexedDB

Для начала, давайте рассмотрим всю цепочку действий, которую покупатель совершает до того, как доберется к корзине и положит в нее товары.

  1. Покупатель может зайти на сайт как гость или зарегистрироваться (либо войти в личный кабинет, если он регистрировался ранее)
  2. Если покупатель зарегистрировался и вошел в личный кабинет, то сразу храните данные корзины в базе.
  3. Если покупатель гость, то храните данные в Local Storage или IndexedDB. Сессия или куки для этого могут не подойти, поскольку если они быстро истекут, то открыв в следующий раз корзину, покупатель уже не увидит своих товаров.
  4. Сохраняйте данные не только корзины, но и информацию которую он вводит при оформлении заказа: почту, телефон, адрес. Если он войдет или зарегистрируется, то вы сможете автоматом подтянуть все данные в его профиль.

Поэтому, наиболее оптимальный вариант хранения данных корзины, это хранить все в базе.