Показать сообщение отдельно
  #3 (permalink)  
Старый 17.01.2020, 19:49
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Не дали дописать все сразу.

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

В случае реализации корзины на клиенте, в его хранилище, добавлять товар в корзину можно и не запрашивая сервер. Но тут есть большое но. Если ваш магазин торгует "как бог послал", купили - хорошо, нет - не страшно, может завтра, после завтра, ..., купят, то вполне можно и так. Но если ваш магазин, это действительно торговля, то такая корзина никак не подходит для полноценной торговли.

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

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

Собственно вы должны решить какая корзина вам более подходит, а затем как с ней работать.
Ответить с цитированием