title
My Products - PHP Form Library
Введение
Предлагаю вашему вниманию библиотеку для построения веб-форм на стороне сервера. Библиотека представляет собой набор контролов(FormElement) которые наполняют объект формы(Form). Размещение елементов на странице задается отдельным файлом-темплейтом.
Download
Последнюю версию библиотеки вы можете получить здесь (~125Kb).
Пример использования
index.php
require_once("lib/common.lib.php");
import('smarty.Smarty');
import('html.HttpRequest');
import('form.Form');
import('form.ActionForm');
$smarty=new Smarty;
$request = new HttpRequest();
$form = new Form("myForm");
$form->addInput(array("type"=>"textfield", "name"=>"subject"));
$form->addInput(array("type"=>"calendar", "name"=>"date"));
$form->addInput(array("type"=>"hidden", "name"=>"flag"));
$form->addInput(array("type"=>"submit","name"=>"save","value"=>"Save"));
// init form's element
$form->setValueByElement("subject", "New subject");
$bean = new ActionForm("myBean", $form, $request);
if ($request->getMethod()=="POST") {
print "Date: ".$bean->getAttribute("date");
print "<br>";
print "Subject: ".$bean->getAttribute("subject");
}
$smarty->assign("forms",array($form->getName()=>$form->toArray()) );
$smarty->display("index.tpl");
index.tpl
{$forms.myForm.open}
| Date: | {$forms.myForm.date.control} |
| Subject: | {$forms.myForm.subject.control} |
| {$forms.myForm.save.control} | |
form view:
Struts,Jakarta,Tiles,Templates,Template,темплейт,темплейты,framework,web-application,веб-приложение,приложение,веб

