GetList
Описание и параметры
CDBResult CFormResult::GetList( int form_id, string &by = "s_timestamp", string &order = "desc", array filter = array(), bool &is_filtered, string check_rights = "Y", mixed limit = false )
Возвращает список результатов веб-формы в виде объекта класса CDBResult. Метод нестатический.
Примечание
Возвращаемый список содержит только поля результата. Значения ответов и полей можно получить с помощью метода CForm::GetResultAnswerArray или CFormResult::GetDataByID.
Параметры метода
| Параметр | Описание |
|---|---|
| form_id | ID веб-формы. |
| by | Ссылка на переменную с полем для сортировки; может принимать значения:
|
| order | Ссылка на переменную с порядком сортировки. Допустимы следующие значения:
|
| filter | Массив содержащий параметры фильтра. Необязательный параметр. В массиве допустимы следующие ключи:
|
| is_filtered | Ссылка на переменную хранящую флаг отфильтрованности результирующего списка. Если значение равно "true", то список был отфильтрован. |
| check_rights | Флаг необходимости проверки прав текущего пользователя. Возможны следующие значения:
|
| limit | Максимальное количество результатов, которые войдут в результирующий список. По умолчанию ограничивает выборку 5000 строками.
Параметр необязательный. |
Смотрите также
Примеры использования
<?
// ID веб-формы
$FORM_ID = 4;
// фильтр по полям результата
$arFilter = array(
"ID" => "12", // ID результата
"ID_EXACT_MATCH" => "N", // вхождение
"STATUS_ID" => "9 | 10", // статус
"TIMESTAMP_1" => "10.10.2003", // изменен "с"
"TIMESTAMP_2" => "15.10.2003", // изменен "до"
"DATE_CREATE_1" => "10.10.2003", // создан "с"
"DATE_CREATE_2" => "12.10.2003", // создан "до"
"REGISTERED" => "Y", // был зарегистрирован
"USER_AUTH" => "N", // не был авторизован
"USER_ID" => "45 | 35", // пользователь-автор
"USER_ID_EXACT_MATCH" => "Y", // точное совпадение
"GUEST_ID" => "4456 | 7768", // посетитель-автор
"SESSION_ID" => "456456 | 778768", // сессия
);
// фильтр по вопросам
$arFields = array();
$arFields[] = array(
"CODE" => "GAME_ID", // код поля по которому фильтруем
"FILTER_TYPE" => "integer", // фильтруем по числовому полю
"PARAMETER_NAME" => "USER", // по значению введенному с клавиатуры
"VALUE" => $arGame["ID"], // значение по которому фильтруем
"PART" => 0 // прямое совпадение со значением (не интервал)
);
$arFields[] = array(
"CODE" => "GAME_NAME", // код поля по которому фильтруем
"FILTER_TYPE" => "text", // фильтруем по числовому полю
"PARAMETER_NAME" => "USER", // фильтруем по введенному значению
"VALUE" => "Tetris", // значение по которому фильтруем
"EXACT_MATCH" => "Y" // ищем точное совпадение
);
$arFields[] = array(
"CODE" => "GENRE_ID", // код поля по которому фильтруем
"FILTER_TYPE" => "integer", // фильтруем по числовому полю
"PARAMETER_NAME" => "ANSWER_VALUE", // фильтруем по параметру ANSWER_VALUE
"VALUE" => "3", // значение по которому фильтруем
"PART" => 1 // с
);
$arFields[] = array(
"CODE" => "GENRE_ID", // код поля по которому фильтруем
"FILTER_TYPE" => "integer", // фильтруем по числовому полю
"PARAMETER_NAME" => "ANSWER_VALUE", // фильтруем по параметру ANSWER_VALUE
"VALUE" => "6", // значение по которому фильтруем
"PART" => 2 // по
);
$arFilter["FIELDS"] = $arFields;
// выберем первые 10 результатов
$rsResults = CFormResult::GetList(
$FORM_ID,
($by="s_timestamp"),
($order="desc"),
$arFilter,
$is_filtered,
"Y",
10
);
while ($arResult = $rsResults->Fetch())
{
echo "<pre>"; print_r($arResult); echo "</pre>";
}
|
Антон Антипов
| ||
|
По последнему параметру (limit), в методе происходит следующая обработка:
![]() | ||
|
serjramone
| ||
|
Если необходимо найти результаты у которых поле|вопрос не заполнен, то фильтр будет примерно таким:
| ||
© «Битрикс», 2001-2025, «1С-Битрикс», 2025

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