| Цитата |
|---|
Сергей Абрамовских написал:
| Цитата |
|---|
Антон Саянц написал:
| Цитата |
|---|
Авель Ахтямов написал: Вопрос решен |
Как Вы его решили? |
Создает файл в который AJAX передает данные Скрытый текст | Код |
|---|
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");?>
<?if (CModule::IncludeModule("sale")) {
$fUserID = CSaleBasket::GetBasketUserID(True);
$fUserID = IntVal($fUserID);
$arFields = array(
"PRODUCT_ID" => $_POST['p_id'],
"PRODUCT_PRICE_ID" => $_POST['pp_id'],
"PRICE" => $_POST['p'],
"CURRENCY" => "RUB",
"WEIGHT" => 0,
"QUANTITY" => 1,
"LID" => 's1',
"DELAY" => "Y",
"CAN_BUY" => "Y",
"NAME" => iconv("UTF-8","Windows-1251",$_POST['name']),
"MODULE" => "sale",
"NOTES" => "",
"DETAIL_PAGE_URL" => $_POST['dpu'],
"FUSER_ID" => $fUserID
);
if (CSaleBasket::Add($arFields)) {
$arBasketItems = array();
$dbBasketItems = CSaleBasket::GetList(
array(
"NAME" => "ASC",
"ID" => "ASC"
),
array(
"FUSER_ID" => CSaleBasket::GetBasketUserID(),
"LID" => SITE_ID,
"ORDER_ID" => "NULL",
"DELAY" => "Y",
),
false,
false,
array("PRODUCT_ID")
);
while ($arItems = $dbBasketItems->Fetch()){
$arBasketItems[] = $arItems["PRODUCT_ID"];
}
echo count($arBasketItems);
}
}?>
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");?> |
Код AJAX
| Код |
|---|
function add2delay(p_id, pp_id, p, name, dpu, th){
$.ajax({
type: "POST",
url: "/bitrix/favajax.php",
data: "p_id=" + p_id + "&pp_id=" + pp_id + "&p=" + p + "&name=" + name + "&dpu=" + dpu,
success: function(html){
$(th).addClass('favactive');
$('#favcnt').html(html);
}
});
}; |
Кнопка добавления с детальной страницы товара (тут у вас ошибка)
| Код |
|---|
<a href="jav * ascript:void(0)" class="fav-btn <? if (in_array($arResult["ID"],$arBasketItems )) echo ' favactive '; ?>"
on click="add2delay(
'<?=$arResult["ID"]?>',
'<?=$arResult["CATALOG_PRICE_ID_1"]?>',
'<?=$arResult["CATALOG_PRICE_1"]?>',
'<?=$arResult["NAME"]?>',
'<?=$arResult["DETAIL_PAGE_URL"]?>',
this)">
</a> |
|
И даже после ее исправление, код не рабочий.