API bitrix почему не добавляется товар в корзину?

через аякс посылаю количество и айди товара. Почему не добавляется в корзину? подскажите плиз. post приходит.
$_POST['id'] - айди товара

<?require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php");

	//$count = $_POST['count'];
	//$id = $_POST['id'];
  	$add = $_POST['add'];
	$mess = '';
	$PRICE_ID = '1';

//CModule::IncludeModule('iblock');
	CModule::IncludeModule('catalog');
//CModule::IncludeModule('currency');
	CModule::IncludeModule("sale");

?>

<?
if (CModule::IncludeModule("catalog") && CModule::IncludeModule("sale")) {

	// ADD TO CART
	if ($_POST['id']) {

		$count = ($_POST['count']) ? $_POST['count'] : 1;

		$result = Add2BasketByProductID(
			$_POST['id'],
			$count
		);
	}


	// UPDATE QUANTITY
	if ($_POST['update'] == 'Y' && $_POST['id'] && $_POST['count']) {
		$arFields = array(
			"QUANTITY" => $_POST['count'],
		);
		CSaleBasket::Update($_POST['id'], $arFields);
	}

	// DELETE PRODUCT
	if ($_POST['delete'] == 'Y' && $_POST['id']) {
		CSaleBasket::Delete($_POST['id']);
	}

}
else { echo "Не подключены модули"; }
AddMessage2Log("<br/><br/><pre>".print_r($result,true)."</pre><br/><br/>", "test");
echo $mess;
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
?>
  • Вопрос задан
  • 461 просмотр
Пригласить эксперта
Ответы на вопрос 1
@anton99zel Куратор тега 1С-Битрикс
29а класс средней школы №7
Не стал разбираться в вашей писанине. Добавляйте товар так:
Bitrix\Main\Loader::includeModule("catalog");
$fields = [
    'PRODUCT_ID' => 98
    'QUANTITY' => 2
];
$r = Bitrix\Catalog\Product\Basket::addProduct($fields);
if (!$r->isSuccess()) {
    var_dump($r->getErrorMessages());
}
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы