Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Валидация Zend_Form MultiCheckbox
Форумы портала PHP.SU » » Объектно-ориентированное программирование » Валидация Zend_Form MultiCheckbox

Страниц (1): [1]
 

1. maksmib - 24 Марта, 2014 - 12:51:49 - перейти к сообщению
Столкнулся с не совсем понятной проблемой.
Есть некая форма. В ней, в числе прочих, создается элемент:

PHP:
скопировать код в буфер обмена
  1.         $phases = new Zend_Form_Element_MultiCheckbox('phases', array(
  2.             'multiOptions' => array(
  3.                 '1' => 'bla bla 1',
  4.                 '2' => 'bla bla 2',
  5.             )
  6.         ));
  7.         $phases->setRequired(true);
  8.         $phases->addValidator(new Zend_Validate_NotEmpty());
  9.         $this->addElement($phases);


Так вот во время валидации формы, появляются сообщения об ошибках для всех элементов формы, кроме этого. При этом, если ничего не выбрать, $form->isValid возвращает false, как и положено, но вот как бы сделать чтобы появлялось стандартное или кастомное сообщение об ошибке?

Пробовал добавить:

PHP:
скопировать код в буфер обмена
  1. $phases->addValidator(new Zend_Validate_InArray(array(1,2)));

и/или

PHP:
скопировать код в буфер обмена
  1. $phases->setErrorMessages(array('At least one option is required!'));

Ничего...
Гуглежка ничего толком не дала.
2. armancho7777777 - 24 Марта, 2014 - 14:52:52 - перейти к сообщению
В доки не пробовали заглянуть ?
http://framework[dot]zend[dot]com/manual[dot][dot][dot]ntroduction[dot]html

 

Powered by ExBB FM 1.0 RC1