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

GetDataByID

Описание и параметры

array
CFormResult::GetDataByID(
 int result_id,
 array field,
 array &result,
 array &answer
)

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

Формат массива, возвращаемого методом:

Array
(
  [символьный идентификатор вопроса 1] => массив описывающий ответы на вопрос 1
    Array
      (
        [0] => массив описывающий ответ 1
          Array
          (
            [RESULT_ID]           => ID результата
            [FIELD_ID]            => ID вопроса
            [SID]                 => символьный идентификатор вопроса
            [TITLE]               => текст вопроса
            [TITLE_TYPE]          => тип текста вопроса [text|html]
            [FILTER_TITLE]        => заголовок поля фильтра
            [RESULTS_TABLE_TITLE] => заголовок столбца таблицы результатов
            [ANSWER_ID]           => ID ответа
            [ANSWER_TEXT]         => параметр ответа ANSWER_TEXT
            [ANSWER_VALUE]        => параметр ответа ANSWER_VALUE
            [USER_TEXT]           => текст введенный с клавиатуры
            [USER_DATE]           => введенная дата (если FIELD_TYPE=date)
            [USER_FILE_ID]        => ID файла (если FIELD_TYPE=[file|image])
            [USER_FILE_NAME]      => имя файла
            [USER_FILE_IS_IMAGE]  => "Y" - FIELD_TYPE=image; "N" - FIELD_TYPE=file 
            [USER_FILE_HASH]      => хэш файла (если FIELD_TYPE=file)
            [USER_FILE_SUFFIX]    => суффикс к расширению файла (если FIELD_TYPE=file)
            [USER_FILE_SIZE]      => размер файла (если FIELD_TYPE=[file|image])
            [FIELD_TYPE]          => тип ответа
            [FIELD_WIDTH]         => ширина поля ответа
            [FIELD_HEIGHT]        => высота поля ответа
            [FIELD_PARAM]         => параметр поля ответа
          )
        [1] => массив описывающий ответ 2
        [2] => массив описывающий ответ 3
        ...
        [N-1] => массив описывающий ответ N
      )
  [символьный идентификатор вопроса 2] => массив описывающий ответы на вопрос 2
  [символьный идентификатор вопроса 3] => массив описывающий ответы на вопрос 3
  ...
  [символьный идентификатор вопроса N] => массив описывающий ответы на вопрос N
)

Параметры метода

Параметр Описание
result_id ID результата.
field Массив символьных идентификаторов вопросов или полей веб-формы, значения которых необходимо получить.
result Ссылка на массив полей результата, а также некоторых полей веб-формы и полей статуса. Структура данного массива:
Array
(
    [ID] => ID результата
    [TIMESTAMP_X] => время изменения результата
    [DATE_CREATE] => дата создания результата
    [FORM_ID] => ID веб-формы
    [USER_ID] => ID пользователя создавшего результат (автор)
    [USER_AUTH] => флаг авторизованности автора при создании результата [Y|N]
    [STAT_GUEST_ID] => ID посетителя создавшего результат
    [STAT_SESSION_ID] => ID сессии в которой был создан результат
    [STATUS_ID] => ID статуса в котором находится результат
    [STATUS_TITLE] => заголовок статуса в котором находится результат
    [STATUS_DESCRIPTION] => описание статуса в котором находится результат
    [STATUS_CSS] => имя CSS класса в котором находится результат
    [SID] => символьный идентификатор веб-формы
    [NAME] => заголовок веб-формы
    [IMAGE_ID] => ID изображения веб-формы
    [DESCRIPTION] => описание веб-формы
    [DESCRIPTION_TYPE] => тип описания веб-формы [text|html]
)
answer Ссылка на массив, описывающий значения ответов на вопросы или значения полей веб-формы для указанного результата result_id. Структура данного массива:
Array
(
  [символьный идентификатор вопроса 1] => массив описывающий ответы на вопрос 1
    Array
    (
      [ID ответа 1] => массив описывающий ответ 1
        Array
        (
          [RESULT_ID]           => ID результата
          [FIELD_ID]            => ID вопроса
          [SID]                 => символьный идентификатор вопроса
          [TITLE]               => текст вопроса
          [TITLE_TYPE]          => тип текста вопроса [text|html]
          [FILTER_TITLE]        => заголовок поля фильтра
          [RESULTS_TABLE_TITLE] => заголовок столбца таблицы результатов
          [ANSWER_ID]           => ID ответа
          [ANSWER_TEXT]         => параметр ответа ANSWER_TEXT
          [ANSWER_VALUE]        => параметр ответа ANSWER_VALUE
          [USER_TEXT]           => текст введенный с клавиатуры
          [USER_DATE]           => введенная дата (если FIELD_TYPE=date)
          [USER_FILE_ID]        => ID файла (FIELD_TYPE=[file|image])
          [USER_FILE_NAME]      => имя файла
          [USER_FILE_IS_IMAGE]  => "Y" - FIELD_TYPE=image; "N" - FIELD_TYPE=file 
          [USER_FILE_HASH]      => хэш файла (если FIELD_TYPE=file)
          [USER_FILE_SUFFIX]    => суффикс к расширению файла (FIELD_TYPE=file)
          [USER_FILE_SIZE]      => размер файла (если FIELD_TYPE=[file|image])
          [FIELD_TYPE]          => тип ответа
          [FIELD_WIDTH]         => ширина поля ответа
          [FIELD_HEIGHT]        => высота поля ответа
          [FIELD_PARAM]         => параметр поля ответа
        )
      [ID ответа 2] => массив описывающий ответ 2
      [ID ответа 3] => массив описывающий ответ 3
      ...
      [ID ответа N] => массив описывающий ответ N
    )
  [символьный идентификатор вопроса 2] => массив описывающий ответы на вопрос 2
  [символьный идентификатор вопроса 3] => массив описывающий ответы на вопрос 3
  ...
  [символьный идентификатор вопроса N] => массив описывающий ответы на вопрос N
)

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

<?
$RESULT_ID = 189; // ID результата

$arAnswer = CFormResult::GetDataByID(
	$RESULT_ID, 
	array("VS_INTEREST"),  // вопрос "Какие области знаний вас интересуют?" 
	$arResult, 
	$arAnswer2);

// выведем поля результата
echo "<pre>"; print_r($arResult); echo "</pre>";

// выведем значения ответов
echo "<pre>"; print_r($arAnswer); echo "</pre>";

// выведем значения ответов в несколько ином формате
echo "<pre>"; print_r($arAnswer2); echo "</pre>";
?>
<?
$RESULT_ID = 189; // ID результата

// получим данные по всем вопросам
$arAnswer = CFormResult::GetDataByID(
	$RESULT_ID, 
	array(), 
	$arResult, 
	$arAnswer2);

// выведем поля результата
echo "<pre>"; print_r($arResult); echo "</pre>";

// выведем значения ответов
echo "<pre>"; print_r($arAnswer); echo "</pre>";

// выведем значения ответов в несколько ином формате
echo "<pre>"; print_r($arAnswer2); echo "</pre>";
?>


© «Битрикс», 2001-2021, «1С-Битрикс», 2021
Наверх