oto przykladowy kod takiego formularza:
<? $action = 'index.php?model=users&action=register'; 'Dolno¶l±skie', 'Kujawsko-pomorskie', 'Lubelskie Lubuskie', 'Łódzkie', 'Małopolskie', 'Mazowieckie', 'Opolskie', 'Podkarpackie', 'Podlaskie', 'Pomorskie', '¦l±skie', '¦więtokrzyskie', 'Warmińsko-Mazurskie', 'Wielkopolskie', 'Zachodniopomorskie' ); $form = new HTML_QuickForm($formName, $method, $action); $form->addElement('header', '', $label); $form->addElement('text', 'newUserLogin', 'Login'); $form->addElement('password', 'pass1', 'Hasło'); $form->addElement('password', 'pass2', 'Powtórz hasło'); $form->addElement('text', 'firm', 'Firma'); $form->addElement('text', 'nip', 'NIP'); $form->addElement('text', 'fname', 'Imie'); $form->addElement('text', 'lname', 'Nazwisko'); $form->addElement('text', 'street', 'Ulica'); $form->addElement('text', 'zipCode', 'Kod pocztowy'); $form->addElement('text', 'city', 'Miejscowo¶ć'); $form->addElement('select', 'region', 'Województwo', $regions); $form->addElement('text', 'email', 'E-mail'); $form->addElement('text', 'tel', 'Telefon'); $form->addElement('text', 'gsm', 'Telefon kom.'); $form->addElement('submit', '', 'Potwierdzam'); $form->addRule('newUserLogin', 'To pole musi byc wypełnione!', 'required'); $form->addRule('pass1', 'To pole musi byc wypełnione!', 'required'); $form->addRule('pass2', 'To pole musi byc wypełnione!', 'required'); $form->addRule('fname', 'To pole musi byc wypełnione!', 'required'); $form->addRule('lname', 'To pole musi byc wypełnione!', 'required'); $form->addRule('street', 'To pole musi byc wypełnione!', 'required'); $form->addRule('zipCode', 'To pole musi byc wypełnione!', 'required'); $form->addRule('city', 'To pole musi byc wypełnione!', 'required'); $form->addRule('region', 'To pole musi byc wypełnione!', 'required'); $form->addRule('email', 'To pole musi byc wypełnione!', 'required'); $form->addRule('tel', 'To pole musi byc wypełnione!', 'required'); $form->addRule('gsm', 'To pole musi byc wypełnione!', 'required'); $form->addRule('newUserLogin', 'Nieprawidłowe znaki!', 'regex', '/^[a-zA-Z0-9_]{1,}$/' ); $form->addRule('newUserLogin', 'Nieprawidłowa liczba znaków!', 'rangelength', ); $form->addRule('pass1', 'To pole może zawierać tylko litery i cyfry!', 'alphanumeric' ); $form->addRule('pass1', 'Nieprawidłowa liczba znaków!', 'rangelength', ); // compare the passwords 'compare'); $form->addRule('firm', 'To pole może zawierac tylko litery alfabetu, cyfry o spacje!', 'regex', '/^[a-zA-Z0-9±·ćĆęńŃłŁ¶¦Ą¬żŻóÓ ]{1,}$/' ); $form->addRule('nip', 'Niepradidłowy numer', 'regex', '/^[0-9-]{1,}$/'); $form->addRule('fname', 'To pole może zawierać tylko znaki alfabetu!', 'regex', '/^[a-zA-Z±·ćĆęńŃłŁ¶¦Ą¬żŻóÓ ]{1,}$/' ); $form->addRule('lname', 'To pole może zawierać tylko znaki alfabetu!', 'regex', '/^[a-zA-Z±·ćĆęńŃłŁ¶¦Ą¬żŻóÓ -]{1,}$/' ); $form->addRule('street', 'Nieprawidłowy adres!', 'regex', '/^[a-zA-Z0-9±·ćĆęńŃłŁ¶¦Ą¬żŻóÓ'/ ,.]{1,}$/' ); $form->addRule('zipCode', 'Nieprawidłowy kod!', 'regex', '/^[0-9]{2}-[0-9]{3}$/' ); $form->addRule('city', 'Nieprawidłowa nazwa!', 'regex', '/^[a-zA-Z0-9±·ćĆęńŃłŁ¶¦Ą¬żŻóÓ' -]{1,}$/' ); $form->addRule('email', 'Nieprawidłowy adres!', 'email'); $form->addRule('tel', 'Nieprawidłowy numer!', 'regex', '/^[0-9-() ]{1,}$/' ); $form->addRule('gsm', 'Nieprawidłowy numer!', 'regex', '/^[0-9-() ]{1,}$/' ); $form->setRequiredNote ('<font color=\"red\" size=\"1\">*</font>To pole jest wymagane'); // try to validate the form if ( $form->validate() ) { $form->exportValue('newUserLogin'), $form->exportValue('pass1'), $form->exportValue('firm'), $form->exportValue('nip'), $form->exportValue('fname'), $form->exportValue('lname'), $form->exportValue('street'), $form->exportValue('zipCode'), $form->exportValue('city'), $regions [ $form->exportValue('region') ], $form->exportValue('email'), $form->exportValue('tel'), $form->exportValue('gsm') ); if ( $result = users::add ( $data ) ) { $this->tpl->assign('message', $result); } else { $this->tpl->assign('error', 'Bł±d podczas dodawania'); } } else { $renderer =& new HTML_QuickForm_Renderer_Array(true, true); $form->accept($renderer); $this->tpl->assign($formName, $renderer->toArray()); } ?>
problem w tym ze jesli klikne "OK" w dowolnym formularzu wszystkie probuja sie "wyslac". Macie pomysl jak temu zaradzic?