Обработка данных форм

В статье "Публичные записи" описывались формы, данные которых были предназначены для записи в базу данных. При этом, было необходимо соблюдать некоторые правила, в частности, переменные формы должны были иметь имя dat, а элемент form должен был иметь следующий вид:

guestbook.tpl
...
<form action='?update&block={$block}&rec=new' method='post'>
...
Атрибут action приведенной формы говорит о том, что данные формы фактически поступают на скрипт update.php, и только после этого клиент перенаправляется на текущую страницу.

А для обработки данных формы можно было использовался предобработчик обновления данных

Однако, данные форм вовсе необязательно записывать в базу данных. Обработав их можно , вывести на экран, отправить по электронной почте и т.д. Чтобы после утверждения формы открылась та же страница, элемент form нужно записать так:

sendmail.tpl
...
<form action='' method='post'>
// action='?aa=bb&cc=dd' // Если нужно передать доп.данные методом GET или направить на другую страницу
...
При этом переменные формы могут иметь любые имена, а не только dat.

Данные формы (находящиеся в массиве $_POST) можно обработать с помощью предобработчика вывода (например, sendmail.tplh) или, если используется php-шаблон, обработать их прямо в шаблоне, как это сделано в шаблоне отправки сообщений с сайта.