Добрый день.
Помогите разобраться с методом изменения свойства.
Создаю функционал комментарий фотографий в множ. св-ве типа файл.
Есть ИБ в котором создаются элементы с привязкой к ID картинки. Комментарий - это множ. св-во TEXT/HTML с полем для описания для даты и ID пользователя.
Когда элемент только создаётся, то первый комментарий удачно сохраняется. Но при попытке переписать св-сво оно удаляется вместе с первым значением.
Добавляю я так:
Сначала достаю нужный элемент и собираю массивы комментариев и дескрипшинов с помощью CIBlockElement::GetList.
Потом добавляю к этим массивам новые и отправляю в CIBlockElement::SetPropertyValuesEx.
И все значения удаляются.
Все глаза смозолил уже. Может какой-нибудь ерунды не замечаю?
[CODE]//$arrComments["VALUE"] массив со значениями
//$arrComments["DESCRIPTION"] массив с описаниями
//Добавляю новые
$arrComments["VALUE"][] = array("TYPE" => "text", "TEXT" => $comment);
$arrComments["DESCRIPTION"][] = $description;
$arrNew = array("VALUE" => $arrComments["VALUE"], "DESCRIPTION" => $arrComments["DESCRIPTION"]);
CIBlockElement::SetPropertyValuesEx($editElementId, $iblock_id, array("COMMENTS" => $arrComments["VALUE"]));
//При этом распечатка массива $arrNew ,по моему, выглядит правильно.
Array(
[VALUE] => Array
(
[0] => Array
(
[TEXT] => Первый комментарий
[TYPE] => TEXT
)
[1] => Array
(
[TEXT] => Второй комментарий
[TYPE] => TEXT
)
)
[DESCRIPTION] => Array
(
[0] => 1/04.07.2019 12:57:00
[1] => 1/04.07.2019 14:34:48
)
)
[/CODE]
Помогите разобраться с методом изменения свойства.
Создаю функционал комментарий фотографий в множ. св-ве типа файл.
Есть ИБ в котором создаются элементы с привязкой к ID картинки. Комментарий - это множ. св-во TEXT/HTML с полем для описания для даты и ID пользователя.
Когда элемент только создаётся, то первый комментарий удачно сохраняется. Но при попытке переписать св-сво оно удаляется вместе с первым значением.
Добавляю я так:
Сначала достаю нужный элемент и собираю массивы комментариев и дескрипшинов с помощью CIBlockElement::GetList.
Потом добавляю к этим массивам новые и отправляю в CIBlockElement::SetPropertyValuesEx.
И все значения удаляются.
Все глаза смозолил уже. Может какой-нибудь ерунды не замечаю?
[CODE]//$arrComments["VALUE"] массив со значениями
//$arrComments["DESCRIPTION"] массив с описаниями
//Добавляю новые
$arrComments["VALUE"][] = array("TYPE" => "text", "TEXT" => $comment);
$arrComments["DESCRIPTION"][] = $description;
$arrNew = array("VALUE" => $arrComments["VALUE"], "DESCRIPTION" => $arrComments["DESCRIPTION"]);
CIBlockElement::SetPropertyValuesEx($editElementId, $iblock_id, array("COMMENTS" => $arrComments["VALUE"]));
//При этом распечатка массива $arrNew ,по моему, выглядит правильно.
Array(
[VALUE] => Array
(
[0] => Array
(
[TEXT] => Первый комментарий
[TYPE] => TEXT
)
[1] => Array
(
[TEXT] => Второй комментарий
[TYPE] => TEXT
)
)
[DESCRIPTION] => Array
(
[0] => 1/04.07.2019 12:57:00
[1] => 1/04.07.2019 14:34:48
)
)
[/CODE]