@sagaton

Не видит товар в корзине?

На сайте ,при детальном просмотре товара, идет сравнение с корзиной и если товар уже есть в корзине то появляется сообщение под кнопкой купить, о том что товар уже там.

Вся обработка идет в двух файлах первый и главный это result_modifier
вот его код
$dbBasketItems = CSaleBasket::GetList(
array(
"NAME" => "ASC",
"ID" => "ASC"
),
array(
"FUSER_ID" => CSaleBasket::GetBasketUserID(),
"LID" => SITE_ID,
"PRODUCT_ID" => $arResult['ID'], //ID текущего товара

),
false,
false,
array("PRODUCT_ID")
);
while ($arItemsBasket = $dbBasketItems->Fetch()) {
$itInBasket = $arItemsBasket['PRODUCT_ID'];
}
$arResult['T1'] = $itInBasket;

И второй в файле temlate

<?if(isset($arResult['T1'])):?>
Товар уже в корзине. О
<?endif;?>

Но сообщение не выводится. При прогоне через дебагер все свойства даже $dbBasketItems содержат false и null.
Может кто подсказать в чем могла бы быть проблема или ошибка?
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ответы на вопрос 1
no_one_safe
@no_one_safe
Обычно, компоненты кешируются. Кеш - общий для всех, а корзина индивидуальная.
Такие задачи решаются с помощью события OnEndBufferContent
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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