Controller
if ($this->_request->isPost()){
if ($form->isValid($_POST)){
$data = $form->getValues();
$query = new Query_Model_Query();
$query = $this->prepareQueryObj($query, $contactId, $developerId, $investmentId);
if($query->save($data)){
$this->_helper->FlashMessenger($this->view->t->_('Query has been send'));
$this->dialogRefresh();
}
else{
$this->_helper->FlashMessenger($this->view->t->_('red$Query has not been send'));
$this->dialogRefresh();
}
} else {
$form->populate($_POST);
$this->view->form = $form;
$form->removeElement('pesel');
foreach($form->getErrors() as $element_errors) {
foreach($element_errors as $error) {
if($error == 'isEmpty') {
$this->view->error_messages = $this->view->t->_("Please fill in all required fields");
}
}
}
}
}
$this->view->form = $form;
}
Po kliknięciu submit jezeli formularz nie przeszedł walidacji chciałbym zrobić rzecz X dla tych inputów, które przeszły już wlidację ("dezaktywować je" tylko zeby wartosc byla widoczna) i rzecz Y, dla tych które nie przeszły walidacji. Sporo już się tego naszukałem, ale niestety nie umiem sobie poradzić.
Potrzebna mi jest metoda isValid, dzieki której bede mógł np. przejść przez poszczególne pola formularza i uzyskać te, które przeszły walidację i w osobnej tablicy te, które nie przeszły walidacji. Dobrze by było gdybym mógł również sprawdzić np. isValid($poleFormularza) i otrzymać true/false.