Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Безымянный 25.07.2005 16:17
Давайте разберем по строкам:$answers.text <input type="text" name="asw_$answers.id_question">$answers - таблица со всеми вопросами.
$answers.text <input type="text" name="asw_$answers.id_question">Здесь выводим список вопросов, причем имена текстовых полей = asw_id_вопроса.
^form:fields.foreach[field;value]{Перебираем все поля формы.
^if(^fields.match[asw_[0-9]+][]){Здесь проверяем, если имя переменной из формы соответствует полю вопроса (asw_id_вопроса), то обрабатываем:
$asw_id[^fields.match[asw_([0-9]+)][]{$match.1}]Regexp'ом отсекаем у _имени_ переменной asw_, в $asw_id попадает только id_вопроса. А в $value соответственно содержится текст ответа на этот вопрос.
<form method="post"> $answers[^table::create{id_question txt 1 q1 2 q2 3 q3 4 q4 5 q5 }] ^answers.menu{ <input type="text" name="asw_$answers.id_question"> : $answers.txt }[<br />] <br /><input type="submit"><br /> Обработка: ^form:fields.foreach[field;value]{ ^if(^field.match[asw_[0-9]+][]){ $asw_id[^field.match[asw_([0-9]+)][]{$match.1}] $asw_id, '$value'<br /> } }