@run182

Как заполнить множественное свойство файл в Битриксе?

$arFiles = array();
	for($i = 0; $i < count($_FILES["photo_ar"]['name']); $i++)
	{
		if($_FILES["photo_ar"]['tmp_name'][$i])
			$arFiles[] = array('VALUE' => CFile::MakeFileArray($_FILES["photo_ar"]['tmp_name'][$i]), 'DESCRIPTION' => '');
	}
	$arFields = array(
	   "IBLOCK_ID" => 7,
	   "NAME" => $head,
	   "PROPERTY_VALUES" => array("PHOTO" => $arFiles)
	);
	$oElement = new CIBlockElement();
	$idElement = $oElement->Add($arFields, false, false, true);

Пробовал по разному, даже вот так - никак не получаеться :(
  • Вопрос задан
  • 2231 просмотр
Решения вопроса 1
@run182 Автор вопроса
Разобрался, не нужно облекать массив в CFile::MakeFileArray, просто нужно было переопределить многомерный массив в более простой, типа:
$file = Array
                (
                    'name' => $_FILES["photo_ar"]['name'][$i],
                    'size' => $_FILES["photo_ar"]['size'][$i],
                    'tmp_name' => $_FILES["photo_ar"]['tmp_name'][$i],
                    'type' => $_FILES["photo_ar"]['type'][$i]
                );
$arFiles[] = array('VALUE' => $file, 'DESCRIPTION' => '');
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
А что получается в массиве $arFields? Возможно ошибка в пути к файлу в CFile::MakeFileArray или в правах доступа.
Ответ написан
Ваш ответ на вопрос

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

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