parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

(порядок перебора не определен) млин не досмотрел в документации, тогда как можно...

KLeN 09.09.2004 15:27

реализовать такую вещь, в классе forms я сделал метод рисующий форму:
@form[lparams][params]
$params[^hash::create[$lparams]]
^if($form:action eq "done"){
	<p>$params.message</p>
}{
	<form
		method="post"
		action="/$params.action"
		enctype="multipart/form-data"
	>
	<input type="hidden" name="$params.do" value="do" />
	^params.foreach[key;value]{
		^if($key eq action || $key eq do || $key eq message){}{
			$value <br />
			<input name="$key" value="$form:$key"><br />
		}
	}
	<input type="submit" name="action" value="Отправить" />
	</form>
}
вызываю я его из нужного места следующим образом:
^forms:form[
	$.action[index.html]
	$.login[Логин:]
	$.password[Пароль:]
	$.f_name[Имя:]
	$.s_name[Фамилия:]
	$.email[email:]
	$.do[form1]
	$.message[Спасибо что заполнили форму]
]
он работает, но выводит смешанные поля, то есть сначала имя, потом email, потом пароль, что ни есть хорошо. Как бы пофиксить? Конечно я могу в нужных местах и так писать нужные формы, но теперь мне интересно как вообще можно это красиво реализовать?