Как я могу получить значение Zend_Form в проекте zend

#php #zend-framework

#php #zend-framework

Вопрос:

У меня есть вызываемая Zend_Form login.php в моем проекте zend.

В контроллере у меня есть

 $request = $this->getRequest();
        $request->setMethod('post')
                ->setPost(array(
                    'username' => 'admin',
                    'password' => '111111',
                ));
        $this->dispatch('/en/auth/login');
        $values = $form->getValues();
  

Интересно, как я могу получить значения из этой формы? $form->getValues() вернет массив? и как получить имя пользователя и пароль от него?

Ответ №1:

 if($this->getRequest()->isPost())
{
   if($form->isValid($this->getRequest()->getPost())
   {
      //Here is form->getValue() enabled
      echo $form->getValue('elementName');
   }
}
  

GetValue недоступен, пока форма не будет действительной

Ответ №2:

другой вариант:

 $values = $form->getValues();

$username = $values['username'];
$password = $values['password'];
  

и если вы используете:

 $form->setElementBelongsTo(´login');
  

затем вам нужно сначала вызвать ЭлементBelongsTo string.

 $values = $form->getValues();

$username = $values['login']['username'];
$password = $values['login']['password'];