Документация для разработчиков

Update

bool
CUser::Update(
 int id,
 array fields,
string authActions = true
)

Метод изменяет параметры пользователя с идентификатором id. Возвращает "true", если изменение прошло успешно, при возникновении ошибки метод вернет "false", а в свойстве LAST_ERROR объекта будет содержаться текст ошибки. Нестатический метод.

Параметры

ПараметрОписаниеС версии
id ID пользователя.
fields Массив значений полей вида array("поле"=>"значение" [, ...]). В качестве полей могут быть использованы все поля CUser, а также GROUP_ID - массив с ID групп пользователей, в которые входит этот пользователь.
authActions Авторизовать ли пользователя после обновления данных. По умолчанию - true - не авторизовывать.

См. также

Примеры использования

<?
$user = new CUser;
$fields = Array(
  "NAME"              => "Сергей",
  "LAST_NAME"         => "Иванов",
  "EMAIL"             => "ivanov@microsoft.com",
  "LOGIN"             => "ivan",
  "LID"               => "ru",
  "ACTIVE"            => "Y",
  "GROUP_ID"          => array(1,2),
  "PASSWORD"          => "123456",
  "CONFIRM_PASSWORD"  => "123456",
  );
$user->Update($ID, $fields);
$strError .= $user->LAST_ERROR;
?>

Для обновления пользовательского поля, вида "список" (где 11,12,13 - это ID значений списка.):

$user = new CUser;
$fields = Array( 
"UF_SHOP" => array(11,12,13), 
); 
$user->Update($ID, $fields);


Пользовательские комментарии

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

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
0
Дмитрий Грищенко
Сообщение непромодерировано, возможны ошибки и неточности.
Если пользователь с указанным id не существует, ошибки не возникает.
5
chsergey
при обновлении пользовательского поля UF_DEPARTMENT использующегося для привязки пользователя к подразделениюнеобходимо чтобы значение поля, передаваемое в функцию CUser::Update было array


Код
            $oUser = new CUser;

            $aFields = array(
                'UF_DEPARTMENT' => array($DEPARTMENT_ID) // <- обязательно array
            );

            $oUser->Update($iUserID, $aFields); //$iUserID (int) ID of USER
 
4
Black-Sun
При обновлении файла, удовлетворяющего требованиям по размеру файла и типу, упорно вылезала ошибка "Неверный тип файла, либо превышен максимальный размер файла!<br>" . Решили слудеющим образом:[COLOR=#191919]
Код
if (!empty($_FILES['Filedata']['tmp_name'&#93) {
                        move_uploaded_file($_FILES["Filedata"]["tmp_name"], $_SERVER['DOCUMENT_ROOT'] . '/upload/tmp/'. $_FILES["Filedata"]["name"]
                        $arFile = CFile::MakeFileArray($_SERVER['DOCUMENT_ROOT'] . '/upload/tmp/'. $_FILES["Filedata"]["name"]
         $arFile['del'] = "Y";           
         $arFile['old_file'] = $UI['PERSONAL_PHOTO']; 
                        $arFile["MODULE_ID"] = "main";
         $fields['PERSONAL_PHOTO'] = $arFile;
      }   

                           
[/COLOR]
8
Дмитрий Яковенко
Если при обновлении данных, вы хотите заменить фотографию пользователя или другую фотку, то в значение (например, PERSONAL_PHOTO) нужно передать массив, описывающий файл и еще два параметра с ключами
Код
    $arFile = CFile::MakeFileArray($value['foto']);
    $arFile['del'] = "Y";           
    $arFile['old_file'] = ИДЕНТИФИКАТОР_ФАЙЛА_КОТОРЫЙ_БУДЕТ_УДАЛЕН; 
9
Григорий Федоринов
Значения пользовательских полей пользователя передаются так же, как и "обычных" полей, например:
"UF_TEXT_1"=>"xxx"
© «Битрикс», 2001-2019, «1С-Битрикс», 2019
Наверх