Здравствуйте!
У меня избитый многими вопрос о дополнительном свойстве товара в корзине. Есть сайт продажи футболок. На сайте необходимо, что бы пользователь в самом каталоге при покупке мог выбрать необходимый размер.
Искал в документации нашел описание функции CSaleBasket::Add, так же что для компонента catalog существуют функции-оболочки Add2Basket и Add2BasketByProductID.
В шаблоне каталога написал форму
И собственно в самой корзине прописал функцию
Все нормально данные передаются, но выбранный размер переписывается для всех товаров.
Так же пробовал в самой базе данный создать дополнительное поле SIZE в которое и должно было записываться выбранное значение размера для каждого товара, но увы и ах не получилось.
Я понимаю что я делаю что-то не так и меня несет туда, подскажите где моя ошибка, где я перестарался.
У меня избитый многими вопрос о дополнительном свойстве товара в корзине. Есть сайт продажи футболок. На сайте необходимо, что бы пользователь в самом каталоге при покупке мог выбрать необходимый размер.
Искал в документации нашел описание функции CSaleBasket::Add, так же что для компонента catalog существуют функции-оболочки Add2Basket и Add2BasketByProductID.
В шаблоне каталога написал форму
Код |
---|
<form method="POST" action="/personal/cart/index.php"> размер:<input class='textfield' style='width:30px; text-align:right' name='SIZE' type='text'> <input class='button' name='submit' type='submit' value=добавить> <input type="hidden" name="id" value="<?=$arElement["ID"]?>"> <input type="hidden" name="price" value="<?=$arPrice[0]["PRICE"]?>"> <input type="hidden" name="action" value="ADD2BASKET"> <input type="hidden" name="PRODUCT_ID" value="<?=$arElement["ID"]?>"> </form> |
И собственно в самой корзине прописал функцию
Код |
---|
if (CModule::IncludeModule("sale") && CModule::IncludeModule("catalog")) { if (($action == "ADD2BASKET" || $action == "BUY") && IntVal($PRODUCT_ID)>0) { Add2BasketByProductID( $PRODUCT_ID, $QUANTITY, array("NAME" => "Размер", "CODE" => "SIZE", "VALUE" => "25") ); } } |
Все нормально данные передаются, но выбранный размер переписывается для всех товаров.
Так же пробовал в самой базе данный создать дополнительное поле SIZE в которое и должно было записываться выбранное значение размера для каждого товара, но увы и ах не получилось.
Я понимаю что я делаю что-то не так и меня несет туда, подскажите где моя ошибка, где я перестарался.