Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Возврат пользователя по ID

00 голосов
6
Народ, хелп :)

На странице выводится список ID пользователей (они записаны в св-вах, св-ва ввиде ссылки на пользователя), темплейт:

Код
<?foreach($arResult["DISPLAY_PROPERTIES"] as $pid=>$arProperty):?>

      <?=$arProperty["NAME"]?>:&nbsp;
      <?if(is_array($arProperty["DISPLAY_VALUE"])):?>
         <?=implode("<br/>", $arProperty["DISPLAY_VALUE"]);?>
      <?else:?>
         <?=$arProperty["DISPLAY_VALUE"];?>
      <?endif?>


Как мне вывести вместо id, Имя Фамилию пользователя т.е. вернуть пользователя по ID.

Сюда не посылать: http://www.1c-bitrix.ru/help_html/index.html?page=source%2Fmain%2Fhelp%2Fru%2Fdeveloper%2Freference%2Fcuser%2Fgetbyid.php.html

Блин, выводит пустоту, когда пытаюсь вернуть.что-то я туплю.
спросил 29 Июль, 13 от AngryKid (420 баллов)

6 Ответы

00 голосов
ответил 29 Июль, 13 от druid (580 баллов)
00 голосов
:( ссылку не ту указал. Естественно возврат пользователя по id, раз я о нем говорил.
ответил 26 Сен, 13 от AngryKid (420 баллов)
00 голосов
Например такой код работает корректно
Цитата
//$id=1;
$rsUser = CUser::GetByID($id); //id пользователя полученного на пред шаге
if($arUser = $rsUser->Fetch()
echo $arUser['NAME'].' '.$arUser['LAST_NAME'];


А вы как использовали данный метод и что передавали в качестве ID?
ответил 26 Дек, 13 от druid (580 баллов)
00 голосов
в св-вах записан номер ID, просто цифра 2,3,4 и т.д. соответственно выводятся, просто цифры, не получатся из них сделать Имя фамилию, т.е. вернуть пользователя по ID.
DISPLAY_VALUE выводит циферку.
ответил 11 Апр, 14 от AngryKid (420 баллов)
00 голосов
Так не пробовали?
Код
<?
$arTmpProp = is_array($arProperty['DISPLAY_VALUE'])) ? $arProperty['DISPLAY_VALUE'] : array($arProperty['DISPLAY_VALUE']);

foreach($arTmpProp as $UserID)
{
    $UserID = intval($UserID);
    if($UserID>0)
    {
        $rsUser = CUser::GetByID($UserID); 
        if($arUser = $rsUser->GetNext(false, false))
        {
             echo $arUser['LOGIN'].' '.$arUser['NAME'].' '.$arUser['LAST_NAME'];    
        }
    }
}
?>
ответил 04 Авг, 14 от Delp (7,220 баллов)
00 голосов
Работает, спасибо большое :)Прям порадовали в пятницу.

Код с поправками:
Код
<?$arTmpProp = is_array($arProperty['DISPLAY_VALUE']) ? $arProperty['DISPLAY_VALUE'] : array($arProperty['DISPLAY_VALUE']);
foreach($arTmpProp as $UserID) 
{ 
    $UserID = intval($UserID); 
    if($UserID>0) 
    { 
        $rsUser = CUser::GetByID($UserID); 
        if($arUser = $rsUser->GetNext(false, false)) 
        { 
             echo "<br/>",$arUser['LOGIN'].' '.$arUser['NAME'].' '.$arUser['LAST_NAME'];     
        } 
    } 
}
?>
ответил 08 Дек, 14 от AngryKid (420 баллов)

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

0 голосов
3 ответов
спросил 24 Фев, 14 от Lemona (100 баллов)
0 голосов
6 ответов
спросил 08 Май, 13 от Yago (360 баллов)
0 голосов
7 ответов
0 голосов
2 ответов