Добрый день!
На сайте настроен второй способ многосайтовости, то есть каждый сайт работает под управлением отдельной копии веб-сервера Apache или отдельного виртуального веб-сервера. Один из сайтов является интернет магазином.
Есть каталог товаров футболок, реализована возможность выбора размера футболок(пользовательское свойство) следующим методом:
Создал простую форму
И добавленна функция добавления товара в корзину
Проблема заключается в следующем, если покупать товар под учетной записью администратора все нормально и товар покупается и свойство добавляется, никаких проблем. Но если покупать товар обычным не зарегистрированным пользователем (то есть добавляем товар не зарегистрированным пользователем, а в процессе оформления заказа будем авторизируемся), то происходит редирект на корзину (как и должно быть), но товар не добавляется, покупаем второй товар и в корзине выводится только второй купленный. Хотя в компоненте bitrix:sale.basket.basket.line пишется что в корзине 2 товара. Начинаем процедуру оформления заказа и на странице выбора профиля заказчика после нажатия на кнопку продолжить опять происходит редирект на корзину и выводится сообщение Ваша корзина пуста, а в bitrix:sale.basket.basket.line по прежнему 2 товара.
В чем может причина? Может кто-нибудь сталкивался с такой проблемой.
На сайте настроен второй способ многосайтовости, то есть каждый сайт работает под управлением отдельной копии веб-сервера Apache или отдельного виртуального веб-сервера. Один из сайтов является интернет магазином.
Есть каталог товаров футболок, реализована возможность выбора размера футболок(пользовательское свойство) следующим методом:
Создал простую форму
| Код |
|---|
<form name="form_<?=$arElement["ID"]?>" action="" method="POST"> Размер футболки: <select name="razmer"> <option value="48">48</option> <option value="50">50</option> <option value="52">52</option> <option value="54">54</option> </select><br/> <input type="hidden" name="id" value="<?=$arElement["ID"]?>"> <input type="hidden" name="action" value="ADD2BASKET"> <input type="hidden" name="QUANTITY" value="1"> <div align="right" style="padding-top: 15px; padding-bottom: 2px;"><input type="image" name ="buy" src="/bitrix/templates/befire/images/buy.gif" value="Купить"></div> </form> |
И добавленна функция добавления товара в корзину
| Код |
|---|
<?
$PRODUCT_ID = $_POST['id'];
$action = $_POST['action'];
$razmer = $_POST['razmer'];
$QUANTITY = $_POST['QUANTITY'];
if (CModule::IncludeModule("sale") && CModule::IncludeModule("catalog"))
{
if (($action == "ADD2BASKET" || $action == "BUY") && IntVal($PRODUCT_ID)>0)
{
Add2BasketByProductID(
$PRODUCT_ID,
$QUANTITY,
array(
array("NAME" => "Размер", "CODE" => "RAZ", "VALUE" => $razmer),
)
);
LocalRedirect("/personal/cart/index.php");
}
}
?> |
Проблема заключается в следующем, если покупать товар под учетной записью администратора все нормально и товар покупается и свойство добавляется, никаких проблем. Но если покупать товар обычным не зарегистрированным пользователем (то есть добавляем товар не зарегистрированным пользователем, а в процессе оформления заказа будем авторизируемся), то происходит редирект на корзину (как и должно быть), но товар не добавляется, покупаем второй товар и в корзине выводится только второй купленный. Хотя в компоненте bitrix:sale.basket.basket.line пишется что в корзине 2 товара. Начинаем процедуру оформления заказа и на странице выбора профиля заказчика после нажатия на кнопку продолжить опять происходит редирект на корзину и выводится сообщение Ваша корзина пуста, а в bitrix:sale.basket.basket.line по прежнему 2 товара.
В чем может причина? Может кто-нибудь сталкивался с такой проблемой.