Задать вопрос
@Obivankinobi

Как правильно передать множество фотографий в инфоблок битрикса?

Добрый день. Возникла проблема при передаче нескольких фотографий из формы на странице в инфоблок битрикса. В инфоблок фотографии передаются, но они отображаются как иконки, а хочется видеть превью. prntscr.com/aof091 aof091

И еще посмотрите на правильность обработки массива $_FILES при передаче ajaxом одна фотография всегда показывает ошибку...

сама форма :
<form enctype="multipart/form-data" action="" class="a">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
<input name="file[]" multiple type="file">
<input type="submit" class="btn" value="отправить">
</form>

Обработчик js :
var formData = new FormData($('.anketa')[0]); //Получение данных из формы

                    alert(formData);
                        $.ajax({
                type: "POST",
                url: "/send.php",
                cache: false,
                contentType: false,
                processData: false,
                data: formData,
                success: function(data) {
                     console.log(data);
                   },
                   error: function(data){
                    alert("no");
                   }
            });


Сам обработчик запроса:
$arFile = array();
foreach ($_FILES["file"]["tmp_name"] as $key =>$value ) {

	if (!$_FILES["file"]["error"][$key]) {
	
		$arFile["n" . $key]=array(
			"VALUE" => CFile::MakeFileArray($value)
			);
	}
}
$arLoadProductArray = Array( 
"PROPERTY_VALUES" => array(	
"PHOTO" => $arFile,
	) );

if(CModule::IncludeModule("iblock")){
$element = new CIBlockElement; 
$product_ID = $element->Add($arLoadProductArray);
}
  • Вопрос задан
  • 340 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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