Аргерих Л. О языке РНР. Часть 1. Страница 119

Для управления несколькими формами нужен фактический объект FormEn- gine, который и будет у нас последним. Объект FormEngine будет средством управления несколькими формами и воспроизведения библиотечного кода JavaScript при работе с несколькими формами. Этот объект выступает также в качестве фабрики объектов, поскольку с его помощью можно создавать формы. Вот модель этого объекта (рис. 5.17):

Причина, по которой нам для создания форм понадобился объект F'ormEngine, состоит в том, что он может вносить в таблицы подробности, необходимые для кода JavaScript. Благодаря этому мы можем создавать множественные формы с проверкой данных на стороне клиента. В результате наша форма почти завершена. Вот пример кода, демонстрирующий, как просто построить форму, показанную ранее:
SformEngine = new FormEngineO;
$form = $formEngine->create("form", "FormName", $PHP_SELF, "post");
$form->addElement(new FormHeader('General Information'));
$form->addElement(new TextField('name', ", 'Name', ALPHA, "You have failed to enter your name", true));
$form->addElement(new HiddenField('userlD', '1'));
$form->addElement(new PasswordField('password", ", 'Password', PASSWORD,
"You have failed to choose a password larger than 4 characters", true));
Sform->addElement(new TextField('email', ", 'EmailAddress', EMAIL, "You have entered your email address incorrectly",, true));
$form->addElement(
new
"You have failed to enter any description about yourself", false, array("rows" => 10, "cols" =>40,)));
$form->addElement(new DateFieldCstartdate', ", 'Start Date', false));
$form->addElement(new:FileBrowser('file', 'File', false));
Scombo = new ComboBox('wagetype', 'S1, 'WageType', true); $combo->add('Hourly', 'H'); $combo->add('Salary', 'S'); $form->addElement($combo);
Scombo = new MultiQomboBox('position', Iposition, 'Position', false);
$combo->add('Planner', 'P');
$combo->add('Manager', 1M') ;
$combo->add('Engineer', 'E');
$combo->add('Analyst', 'A');
$form->addElement($combo);
$form->addButton(new SubmitButton('submit', 'Submit')); $form->addButton(new ResetButton('reset', 'Reset'));
if ($submit== 'Submit') {
SisValid = $form->validate();
if (SisValid 1 {
echo("everything okay");
// запись информации в базу данных или другая обработка } else {
Живете в Звенигороде и мечтаете найти работу, которая вас устроила бы и приносила в вашу семью достаточный доход? Тогда просмотрите
работу в Звенигороде вакансии на сайте job.ru и подберите для себя то, что желаете.