![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 686 Pomógł: 0 Dołączył: 10.11.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Witam.
Napisalem sobie formularz w QuickForm w ktorym znajduje sie checkbox formularz wyglada nastepujaco: Kod <? require_once 'HTML/QuickForm.php'; $formularz = new HTML_QuickForm('formularz'); $formularz->setDefaults( array('login' => 'Mati') ); $formularz->addElement('header', null ,'Zgłoszenie nowego użytkownika'); $formularz->addElement('checkbox', 'check1', null, 'checkMe', null); $formularz->addElement('text', 'login', 'Login:', null); $formularz->addElement('password', 'password', 'Hasło (5-10 znaków) ', array('size' => 12, 'maxlength' => 10)); $formularz->addElement('password', 'repeat', 'Hasło (powtórz)', array('size' => 12, 'maxlength' => 10)); $formularz->addElement('text', 'name', 'Imie i nazwisko', null); $formularz->addElement('text', 'mail', 'Adres e-mail', null); $formularz->addElement('text', 'age', 'Wiek', null); $formularz->addElement('text', 'phone', 'Telefon', null); $formularz->addElement('select', 'prenumerata', 'Czy prenumerujesz <br /> magazyn INTERNET?:', array('Tak' => 'Tak', 'Nie' => 'nie')); $formularz->addElement('submit', null, 'Wyslij'); //addRule($name, $msg, $option) $formularz->addRule('login', 'Niepoprawny format pola login', 'regex', '/^[-_a-z0-9]+$/i'); $formularz->addRule('login', 'Wypełnij pole', 'required'); $formularz->addRule('password', 'Podaj haslo', 'required'); $formularz->addRule('password', 'Haslo musi miec 5-10 znakow', 'rangelength', array(5,10)); $formularz->addRule('repeat', 'Powtorz podane haslo', 'required'); $formularz->addRule(array('password','repeat'), 'Hasla musza byc takie same', 'compare'); $formularz->addRule('mail', 'Podaj adres e-mail', 'required', null, 'client'); $formularz->addRule('mail', 'Podaj poprawny adres e-mail', 'email'); $formularz->addRule('age', 'Podaj wiek', 'required', null, 'client'); $formularz->addRule('age', 'To nie moze byc Twoj wiek', 'numeric'); $formularz->addRule('name', 'Podaj imie i nazwisko', 'required', null, 'client'); $formularz->addRule('phone', 'To nie moze byc Twoj numer', 'numeric'); if($formularz->validate()){ echo '<h1> Formularz </h1>'; echo '<b> Imie i nazwisko </b>'.htmlspecialchars($formularz->exportValue('name')).'<br />'; echo '<b> Hasło </b>'.htmlspecialchars($formularz->exportValue('password')).'<br />'; echo '<b> Login </b>'.htmlspecialchars($formularz->exportValue('login')).'<br />'; echo '<b> E-mail </b>'.htmlspecialchars($formularz->exportValue('mail')).'<br />'; echo '<b> Wiek </b>'.htmlspecialchars($formularz->exportValue('age')).'<br />'; echo '<b> Czy prenumerujesz : </b>'.htmlspecialchars($formularz->exportValue('prenumerata')).'<br />'; echo '<b> Telefon </b>'.htmlspecialchars($formularz->exportValue('phone')).'<br />'; exit; } $formularz->display(); ?> Szukalem w necie ale ciezko znalezc cos na temat QuickForm Problem polega na tym, iz chce po zaznaczeniu checkboxa "zaslonic" powiedzmy pole 'age' aby nie mozna bylo tam nic wpisac. Po odznaczeniu checkbox-a chcialbym aby to pole bylo znowu dostepne do edycji. Jakies pomysly? Ewentualnie zamias checkbox uzyc radio POzdrawiam Ten post edytował Wolfie 18.12.2008, 16:34:51 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 686 Pomógł: 0 Dołączył: 10.11.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Skowron Twoj sposob niestety wywala bład :
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in C:\Program Files\WebServ\httpd\Formularz\formularz.php on line 10 linia 10-ta to ta : Kod if(document.getElementById('box') == true){ Przenioslem za to kod javascript poza znacznik php i nie wywala bledu Plik wyglada nastepujaco : Kod <? require_once 'HTML/QuickForm.php'; /* $defaults = array('name' => 'Matt', 'age' => 25, 'phone' => 445); */ $formularz = new HTML_QuickForm('formularz'); $formularz->setDefaults( array('login' => 'Mati') ); $attr = array('id'=>'box', 'onClick' => 'dis_area();'); $formularz->addElement('header', null ,'Zgłoszenie nowego użytkownika'); $formularz->addElement('checkbox', 'check1', null, 'checkMe', $attr); $formularz->addElement('text', 'login', 'Login:', array('id'=>'log')); $formularz->addElement('password', 'password', 'Hasło (5-10 znaków) ', array('size' => 12, 'maxlength' => 10)); $formularz->addElement('password', 'repeat', 'Hasło (powtórz)', array('size' => 12, 'maxlength' => 10)); $formularz->addElement('text', 'name', 'Imie i nazwisko', null); $formularz->addElement('text', 'mail', 'Adres e-mail', null); $formularz->addElement('text', 'age', 'Wiek', null); $formularz->addElement('text', 'phone', 'Telefon', null); $formularz->addElement('select', 'prenumerata', 'Czy prenumerujesz <br /> magazyn INTERNET?:', array('Tak' => 'Tak', 'Nie' => 'nie')); $formularz->addElement('submit', null, 'Wyslij'); //addRule($name, $msg, $option) $formularz->addRule('login', 'Niepoprawny format pola login', 'regex', '/^[-_a-z0-9]+$/i'); $formularz->addRule('login', 'Wypełnij pole', 'required'); $formularz->addRule('password', 'Podaj haslo', 'required'); $formularz->addRule('password', 'Haslo musi miec 5-10 znakow', 'rangelength', array(5,10)); $formularz->addRule('repeat', 'Powtorz podane haslo', 'required'); $formularz->addRule(array('password','repeat'), 'Hasla musza byc takie same', 'compare'); $formularz->addRule('mail', 'Podaj adres e-mail', 'required', null, 'client'); $formularz->addRule('mail', 'Podaj poprawny adres e-mail', 'email'); $formularz->addRule('age', 'Podaj wiek', 'required', null, 'client'); $formularz->addRule('age', 'To nie moze byc Twoj wiek', 'numeric'); $formularz->addRule('name', 'Podaj imie i nazwisko', 'required', null, 'client'); $formularz->addRule('phone', 'To nie moze byc Twoj numer', 'numeric'); if($formularz->validate()){ $formularz->freeze(); /* echo '<h1> Formularz </h1>'; echo '<b> Imie i nazwisko </b>'.htmlspecialchars($formularz->exportValue('name')).'<br />'; echo '<b> Hasło </b>'.htmlspecialchars($formularz->exportValue('password')).'<br />'; echo '<b> Login </b>'.htmlspecialchars($formularz->exportValue('login')).'<br />'; echo '<b> E-mail </b>'.htmlspecialchars($formularz->exportValue('mail')).'<br />'; echo '<b> Wiek </b>'.htmlspecialchars($formularz->exportValue('age')).'<br />'; echo '<b> Czy prenumerujesz : </b>'.htmlspecialchars($formularz->exportValue('prenumerata')).'<br />'; echo '<b> Telefon </b>'.htmlspecialchars($formularz->exportValue('phone')).'<br />'; exit; */ } //$formularz->setDefaults($defaults); $formularz->display(); ?> <script type="text/javascript"> function dis_area() { if(document.getElementById('box') == true){ document.getElementById('log').disabled = true; } else{ document.getElementById('log').disabled = false; } } </script> Formularz sie wyswietla ale niestety zastosowanie checkbox-a ("zaslanianie" elementu login) niestety nie dziala Jakies pomysly gdzie moze byc blad ? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 11:54 |