Здравствуйте, проблема такая:
1)Подключение компоненты для заполнения веб-формы:
2) Добавление списка пользователей в dropdown
Когда начинаю выбирать ответ в dropdown, то там отображаются старые ответы( картинка 1), а в самих ответах в админке битрикса получаются уже обновленные(картинка 2). Поэтому когда я выбираю ответ в dropdown и нажимаю "Отправить", то выходит ошибка что поле веб-формы не заполнено(как я понял из-за старых ID ответов). Как исправить данную ошибку? Если поменять код 1 и 2 местами, то "ошибка выполнения PHP скрипта".
1)Подключение компоненты для заполнения веб-формы:
| Код |
|---|
<?$APPLICATION->IncludeComponent(
"bitrix:form.result.new",
".default",
Array(
"CACHE_TIME" => "0",
"CACHE_TYPE" => "N",
"CHAIN_ITEM_LINK" => "",
"CHAIN_ITEM_TEXT" => "",
"COMPONENT_TEMPLATE" => ".default",
"COMPOSITE_FRAME_MODE" => "A",
"COMPOSITE_FRAME_TYPE" => "AUTO",
"EDIT_URL" => "",
"IGNORE_CUSTOM_TEMPLATE" => "N",
"LIST_URL" => "",
"SEF_MODE" => "N",
"SUCCESS_URL" => "",
"USE_EXTENDED_ERRORS" => "N",
"VARIABLE_ALIASES" => array("WEB_FORM_ID"=>"WEB_FORM_ID","RESULT_ID"=>"RESULT_ID",),
"WEB_FORM_ID" => "7"
),
false,
Array(
'ACTIVE_COMPONENT' => 'Y'
)
);?> |
2) Добавление списка пользователей в dropdown
| Код |
|---|
<?
$QUESTION_ID = 25;
$I=1;
$rsAnswers = CFormAnswer::GetList(
$QUESTION_ID,
$by="s_id",
$order="desc"
);
while ($arAnswer = $rsAnswers->Fetch())
{
if($arAnswer["C_SORT"]!=100)
CFormAnswer::Delete($arAnswer["ID"]);
}
$rsUsers = CUser::GetList();
while($arr = $rsUsers->GetNext()) :
$arFields = array(
"QUESTION_ID" => $QUESTION_ID,
"MESSAGE" => $arr["LOGIN"],
"C_SORT" => ++$I*100,
"FIELD_TYPE"=>"dropdown",
"ACTIVE" => "Y"
);
CFormAnswer::Set($arFields);
endwhile;
?> |
Когда начинаю выбирать ответ в dropdown, то там отображаются старые ответы( картинка 1), а в самих ответах в админке битрикса получаются уже обновленные(картинка 2). Поэтому когда я выбираю ответ в dropdown и нажимаю "Отправить", то выходит ошибка что поле веб-формы не заполнено(как я понял из-за старых ID ответов). Как исправить данную ошибку? Если поменять код 1 и 2 местами, то "ошибка выполнения PHP скрипта".