Бортовой журнал Ктулху

Массовая покупка товаров в Битриксе

На самом деле это совсем несложно - всего лишь в цикле пройтись функцией Add2BasketByProductID по массиву из id товаров.

big visual 65

Я сделал добавление из таблицы содержащей input'ы с id товаров через ajax.

Обработчик

Переменная $value содержит массив id.

require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
if (CModule::IncludeModule("catalog"))
 {
  if (isset($_POST) && !empty($_POST)) 
  {
   foreach ($_POST['sizes']['value'] as $k => $value)
   {
    if(!empty($value))
    {
    Add2BasketByProductID(
    $_POST['sizes']['id'][$k], 
    $value,
    array(), 
    array()
    );
   }
  }
 }
}

Форма

<form id="sizes" method="post" action="">
***
<input type="text" class="sizes" name="sizes[id][]" value="47360">
***
<button type="submit"></button>
 </form>

 

JS

$(document).on('submit', '#sizes',function(){
var data = $(this).serialize();
 $.ajax({
 type: "POST",
 url: "/ajax_opt_cart.php",
 data: data,
 success:function(data){
if(data == 1){
 window.location.replace("/personal/cart/"); 
 }
 /*else{
 $(".the-return").html(data); 
 }*/
 }
 });
 return false;
 });