Измение параметров товара в корзине

Здравствуйте.

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

Вижу несколько путей, но в каждом решении столкнулся с проблемами. Через сессию проблема с генерацией product key. Попробовал вариант создания нового заказа с новым параметром, который передается из checkbox и удаления старого. По пути куча подводных камней, таких как постоянное обновление корзины.
Как кто решал такую задачу?

Спасибо.
Николай Ермошин
31 мая 2022, 00:36
modx.pro
1 021
0

Комментарии: 1

Артур
31 мая 2022, 09:47
0
Вся проблема в том, что ты неверно интерпретируешь понятие Корзина. Если рассматривать её как список товаров которые человек готов купить прямо сейчас, то тот список в котором у тебя нужно добавить галочки он не является корзиной, это больше похоже на Избранное. В такой парадигме, задача сводится к тому, чтобы отмеченные галочкой товары добавить в корзину, убрать из избранного и отправить человека на оформление заказа. Чтобы добавить в корзину нужно отправить запрос на сервер с id товара, количеством и массивом опций, а на сервере сделать так
$ms2 = $this->modx->getService('minishop2');
 $ms2->initialize('web');
$response = $this->ms2->cart->add((int)$_POST['rd'], (int)$_POST['count'], array());
if(!$response['success']){   
        return false;
}
return $response;
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1