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

Как выбрать параметр $arUser из списка

00 голосов
7
Описание задачи
На сайте до меня сделали штуку "Задать вопрос". Тоесть пишешь в анкету текст, жмешь отправить и он уходит админу. Помимо самого текста приходит и имя пользователя. Нужно было, чтобы приходило еще много других параметров. Так вот:

С параметрами типа NAME, PROFESSION разобрался. А вот как сделать, чтобы приходили параметры COUNTRY, PERSONAL_PHOTO и подобные? Тоесть которые имеют свой ID.

Вот пример кода:

if($PRODUCT_ID = $el->Add($arLoadProductArray)) {
$rsUser = CUser::GetByID($USER->GetID());
$arUser = $rsUser->Fetch();

$NAME ="";
$NAME =(($arUser[NAME])?$arUser[NAME]:"");
$NAME .=($arUser[LAST_NAME])?(($NAME)?" ":"").$arUser[LAST_NAME]:"";
$NAME = ($NAME)?$NAME:$arUser[LOGIN];
$EMAIL=$arUser[EMAIL];
$PERSONAL_PROFESSION=$arUser[PERSONAL_PROFESSION];


Далее идет параметр

$PERSONAL_COUNTRY=$arUser[PERSONAL_COUNTRY];

И в письмо этот параметр отображается как цифра, тоесть 14, к примеру. А мне надо как то этот ID связать с названием страны (названием поля).

Подскажите. Правлю файл /bitrix/templates/pp(это имя сайта)/include_areas/question.php

Пожалуйста подскажите что добавить у $arUser[PERSONAL_COUNTRY] чтобы отображалась страна, а не цифра. Пожалуйста, если можно подробней
спросил 04 Июнь, 13 от devilinus (160 баллов)

7 Ответы

00 голосов
GetCountryByID($arUser["PERSONAL_COUNTRY"], "ru")
ответил 04 Июнь, 13 от Nelegal (640 баллов)
00 голосов
Дмитрий
Спасибо большое. Помогло

А как по аналогии добавлять созданные мною поля? К примеру:

$UF_SPHEERE=$arUser[UF_SPHEERE];

$UF_MODEL=$arUser[UF_MODEL];

Буду очень рад, если поможете. А то в этой часте я вообще ламер...
ответил 11 Июнь, 13 от devilinus (160 баллов)
00 голосов
Код
$arSelect["SELECT"] = array("UF_TEXT_1", ...);

или
Код
$arSelect["SELECT"] = array("UF_*");


Код
$filter = Array("ID" => "1");
$rsUsers = CUser::GetList(($by="ID"), ($order="DESC"), $filter, $arSelect); 
while($arUser = $rsUsers->Fetch()) {
   echo "<pre>"; print_r($arUser); echo "</pre>";
}
ответил 13 Сен, 13 от Nelegal (640 баллов)
00 голосов
Эм...тут уже сложнее. Толи я не понял, толи что...

Что за третий код? куда его вставлять? Вставлял перед строкой с полем, которое надо настроить - сайт ошибку говорит. Пожалуйста, если не сложно распишите куда что вставлять. А то не получается.
ответил 11 Дек, 13 от devilinus (160 баллов)
00 голосов
Код
$arSelect["SELECT"] = array("UF_TEXT_1", ...);
$filter = Array("ID" => "1");
$rsUsers = CUser::GetList(($by="ID"), ($order="DESC"), $filter, $arSelect);
while($arUser = $rsUsers->Fetch()) {
   echo "<pre>"; print_r($arUser); echo "</pre>";
}

или
Код
$arSelect["SELECT"] = array("UF_*");
$filter = Array("ID" => "1");
$rsUsers = CUser::GetList(($by="ID"), ($order="DESC"), $filter, $arSelect);
while($arUser = $rsUsers->Fetch()) {
   echo "<pre>"; print_r($arUser); echo "</pre>";
}
ответил 26 Март, 14 от Nelegal (640 баллов)
00 голосов
Код
$arSelect["SELECT"] = array("UF_SPHEERE", "UF_MODEL");
$filter = Array("ID" => $USER->GetID());
$rsUsers = CUser::GetList(($by="ID"), ($order="DESC"), $filter, $arSelect);
while($arUser = $rsUsers->Fetch()) {
   echo "<pre>"; print_r($arUser); echo "</pre>";
}
ответил 18 Июль, 14 от Nelegal (640 баллов)
00 голосов
Спасибо, попробую. должно помочь ;)
ответил 19 Ноя, 14 от devilinus (160 баллов)

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

0 голосов
0 ответов
0 голосов
2 ответов
спросил 21 Апр, 14 от BAGIRA (560 баллов)
0 голосов
3 ответов
спросил 19 Фев, 14 от kukalka (180 баллов)
0 голосов
4 ответов