Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Formularz w Zend Framework
Pozycjonowanie i Optymalizacja > Projektowanie stron > PHP i MySQL
ExPloiT
Witam, mam taki problem, stworzyłem sobie formularz:

KOD
<?php
class Form_LoginForm extends Zend_Form
{
        public function __contruct($option = null)
        {
            parent::__contruct($option);
            
            $this->setName('login');
            $username=new Zend_Form_Element_Text('username');
            $username->setLabel('Username:')
                    ->isRequired();
            
            $password=new Zend_Form_Element_Password('password');
            $password->setLabel('Password:')
                    ->isRequired(TRUE);
                    
            $login=new Zend_Form_Element_Submit('login');
            $login->setLabel('Login');
            
            $this->addElements(array($username,$password,$login));
            $this->setMethod('post');
            $this->setAction('/autoryzacja/login');
            
        }    
}


W kontrolerze wywołuje go tak:

KOD
$form = new Form_LoginForm();
            $this->view->form=$form;



W widoku mam echo $this->form;

Efekt jest taki, że nie widać formularza w ogóle, a w źródle widoku jest tylko:

KOD
<form enctype="application/x-www-form-urlencoded" action="" method="post"><dl class="zend_form">
</dl></form>invalid

 Walczę od paru minut i nie mam pojęcia co jest nie tak. To invalid to jest napis podczas podania złych danych w trakcie logowanie.


//Problem rozwiązany smile.gif zamiast construct było contruct smile.gif
//No i logowanie przy pomocy Zend_Auth zrobione smile.gif
Mion
Zend_Form_Element_Text ... ->isRequired();
Fajnie, ze jest wymagany, ale powinieneś określić reguły walidacji takich pól zwłaszcza jak budujesz w ten sposób formularze pobierające określone dane np rejestracji konta etc...
ExPloiT
Tutaj zamiast isRequired jest setRequired i jedyne co idzie wpisać to true smile.gif Czyli, że jest wymagany, bo wszelka walidacja itp jest dalej. Jedyne co mogę dodać to filtrowanie:
KOD
->addFilters(array('StringToLower'));
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2012 Invision Power Services, Inc.