isValid in zend framework form returns FALSE

Kirill Reva picture Kirill Reva · Apr 13, 2012 · Viewed 11.1k times · Source

I have zend framework controller. In init method i create a form and fill the drop-down box with

$form = new FORM_NAME();
$form->getElement('ZdGroup')->addMultiOptions($zendesk_groups);

then in action i check

$formData = $this->getRequest()->getParams();
    if ($form->isValid($formData)) {
        ...
}

but isValid() returns FALSE if I delete this line $form->getElement('ZdGroup')->addMultiOptions($zendesk_groups); it return TRUE.

I don't understand why, does anybody have an idea?

Answer

Tim Lytle picture Tim Lytle · Apr 14, 2012

To answer the question of 'why', have you dumped the form error messages?

$form->getMessages(); //error messages
$form->getErrors(); //error codes
$form->getErrorMessages(); //any custom error messages

That might at least give you a better idea of 'why'.