2
當訪問者將他們的電子郵件地址輸入到表單中時,我想檢查它是否是唯一的。所以我有一個簡單的電子郵件的形式:在Zend_Form中顯示手動設置的錯誤
class Form_Register extends Zend_Form
{
public function __construct($options = null)
{
parent::__construct($options);
$this->setName('register');
$email = new Zend_Form_Element_Text('Email');
$email->setLabel('Your email address:')
->setRequired(true)
->addFilter('StripTags')
->addFilter('StringTrim')
->addValidator('EmailAddress')
->addErrorMessage('Please check that email address is correct.');
$submit = new Zend_Form_Element_Submit('submit');
$submit->setAttrib('id', 'submitbutton');
$this->addElements(array($email, $submit));
}
}
然後,如果該請求後,我檢查,如果該電子郵件是獨一無二的。如果元素不是唯一的,我會向元素添加一條錯誤消息,但它不會顯示在我的視圖中。
if ($this->getRequest()->isPost())
{
$formData = $this->_request->getPost();
// check if email is unique
$isUnique = FALSE;
if (NULL != $member)
{
$form->Email->addErrors(array('That email is already in use.'))
->markAsError();
}
$form->populate($formData);
$this->view->form = $form;
我的觀點只是回聲形式:
<?php echo $this->form ?>
哪一個是正確的答案? – emaillenin 2011-06-28 10:12:32