208 похожих чатов

Всем привет! Помогите плиз.. Есть пользовательское свойство UF_LISTFAVORITES у пользователя и

есть такой код:

global $USER_FIELD_MANAGER;
$arFields = $USER_FIELD_MANAGER->GetUserFields("USER");
$obEnum = new CUserFieldEnum;
$rsEnum = $obEnum->GetList(array(), array("USER_FIELD_ID" => $arFields["UF_LISTFAVORITES"]["ID"]));

$arFavorit = array();

while($arEnum = $rsEnum->GetNext()){
$arFavorit[] = $arEnum["VALUE"];
}


if (!in_array($_POST['p_id'], $arFavorit)) {

$arFields = $GLOBALS['USER_FIELD_MANAGER']->GetUserFields("USER");
if(array_key_exists("UF_LISTFAVORITES", $arFields))
{
$FIELD_ID = $arFields["UF_LISTFAVORITES"]["ID"];
// Добавим значение выпадающего списка
$obEnum = new CUserFieldEnum;
$obEnum->SetEnumValues($FIELD_ID, array(
"n0" => array(
"VALUE" => $_POST['p_id'],
),
));
}

}

if (in_array($_POST['p_id'], $arFavorit)) {

// Удалим значение из списка
$rsEnum = CUserFieldEnum::GetList(array(), array(
"VALUE" => $_POST['p_id'],
));
if($arEnum = $rsEnum->Fetch())
{
$obEnum = new CUserFieldEnum;
$obEnum->SetEnumValues($FIELD_ID, array(
$arEnum["ID"] => array(
"DEL" => "Y",
),
));
}

}

Столкнулся с проблемой, что значения которые добавляются/удаляются - у каждого пользователя один и тот же список значений, а нужно формировать и обрабатывать для каждого пользователя отдельный список значений.
Подскажите как реализовать?

9 ответов

39 просмотров

В каком смысле разные? Выбор вариантов у каждого свой? Или выбранные значения?

Sergey- Автор вопроса
Eugene Zhukov
В каком смысле разные? Выбор вариантов у каждого с...

По результатам отработки кода значения записываются и удаляются для всех пользователей, т.е. у каждого пользователя одинаковый список значений, а нужно чтобы они соответствовали значениям которые принадлежат конкретному пользователю. Этот код реализует на подобие списка сохраненных товаров пользователя (через дополнительное поле).

Sergey
По результатам отработки кода значения записываютс...

Так вам множественное числовое или строчное нужно. Или вообще - привязка к элементам инфоблока.

Sergey
Тип данных = Список

Еще раз. Этот тип данных подходит для вашей задачи.

Sergey- Автор вопроса
Eugene Zhukov
Еще раз. Этот тип данных подходит для вашей задачи...

в пользовательское свойство сохраняются ID отмеченных пользователем товаров

У вас общее списочное поле и вы его правите на каждом юзере. Тут больше множественное числовое подойдет с дальнейшей кастомизацией вывода. Либо множественной привязкой к элементам иб опятьже с дальнейшей кастомизацией выбора.

Sergey- Автор вопроса
Vladimir Arapov
У вас общее списочное поле и вы его правите на каж...

Если использовать свойство строка (множественное) как добавить/удалить значения для конкретного пользователя. Какими методами нужно воспользоваться?

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта