Zend fw, ошибки пользовательской проверки - PullRequest
1 голос
/ 18 октября 2010

Я создаю сайт с Zend_Form. В моем контроллере я назначаю объект формы представлению. В представлении я использую следующий код для визуализации формы:

<?php if ( isset( $this->success ) ): ?>
    <div class="message success"><p>Thanks!</p></div>
<?php elseif ( sizeof( $this->form->getMessages( ) ) > 0 ): ?>
    <div class="message success"><p>Something went wrong..</p></div>
<?php endif; ?>

<form>
    <label>Name:</label>
    <?php echo $this->form->name; ?>

    <label>E-mail:</label>
    <?php echo $this->form->name; ?>
</form>

До сих пор этот способ проверки наличия ошибок формы был достаточно хорош. Но мой клиент спросил меня, могу ли я указать неправильное поле. Так, например: «Внимание: вы забыли ввести свое имя». Я действительно понятия не имею, как это сделать с Zend. Кто-нибудь знает, с чего начать?

Спасибо

Мартейн

1 Ответ

0 голосов
/ 18 октября 2010

Вы должны увидеть его, запросив getErrors (); на объекте Zend_Form.

Возвращает массив ошибок, где ключом является имя поля возвращает что-то вроде этого.

array(
 'fieldname' => array('error1', 'error2'),
 'username' => array('errors')
);

Вы также можете вызвать $ form-> getElements () и выполнить итерацию по каждому элементу, чтобы увидеть, какой из них выбрасывает ошибки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...