Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Характеристики товара

00 голосов
2
Добрый день.
Возникла небольшая проблема.
Есть инфоблок, который является торговым каталогом.
В Инфоблоке есть три свойства. На странице использую компонет catalog.section. В настройках компонента, в разделе Цены, есть свойство "Характеристики товара", и в этом поле находтся всего лишь одно(! куда делись остальные непонятно) свойство. Это свойство выделено. И при добавлении товара в корзину, появляется ошибка "Ошибка добавления товара в корзину", которая появляетсяи з-за того, что массив характеристик товара prop - пустой.
Почему массив с характеристиками пустой? И почему в характеристиках товара всего лишь одно свойство?
спросил 01 Янв, 14 от Lalya1234 (160 баллов)

2 Ответы

00 голосов
Вы опишите подробнее, что за типы свойств, например, там не все типы подходят для характерстик, только "список", кажется, может кто ответит, а так маловато информации, чтобы разобраться... При добавлении в корзину выбираете из списка что-нибудь?
ответил 30 Март, 14 от BRENN (1,080 баллов)
00 голосов
Типы свойств такие: список и строка.
Как раз в характеристике показывается свойство типа список.А где об этом можно почитать поподробнее? Это свойство используется только при добавлении нового элемента инфоблока, а на странице оно только отображается.
Посмотрели код компонета bitrix.catalog, там есть такой фрагмент
Код
if(count($arParams["PRODUCT_PROPERTIES"]))
{
    if(is_array($_POST[$arParams["PRODUCT_PROPS_VARIABLE"]])) /*****Вот здесь не срабатывает******/
    {
         $product_properties = CIBlockPriceTools::CheckProductProperties(
    $arParams["IBLOCK_ID"],
    $productID,
    $arParams["PRODUCT_PROPERTIES"],
    $_POST[$arParams["PRODUCT_PROPS_VARIABLE"]]
         );
        if(!is_array($product_properties))
       $strError = GetMessage("CATALOG_ERROR2BASKET").".+";
    }
    else
    {
        $strError = GetMessage("CATALOG_ERROR2BASKET").".-";
     }
}

У нас массив $_POST пустой!!! Странно, почему в коде используется этот массив, т.к. в шаблоне компонента даже нет намёка на форму.
При добавлении в корзину из списка ничего не выбираем.
ответил 23 Июль, 14 от Lalya1234 (160 баллов)

Похожие вопросы