2012-11-09 53 views
0

在我的控制,我有Zend的形式定製驗證

if(isset($username) && trim($username)!=='') 
{ 
    $exist = $user_obj->checkUsernameExist($username); 
     if($exist == '1') 
     { 
      $form->getElement('username')->addError('This username exists.'); 
     } 
} 
if ($form->isValid($_POST)) { 
$user_obj->insertUser($_POST); 
$this->_helper->flashMessenger->addMessage('User Added Successfully.'); 
$this->_redirect('/users/usersadministration/'); 
exit();  
}else { //echo 'failure'; 
    //print_r($form->getErrors()); 
} 

但不顯示我的錯誤消息,即使的$exist1

+0

我看不到任何引用zend_form對象的代碼。 – GordonM

+0

您需要在添加錯誤後呈現您的表單。 – janenz00

回答

0

嘗試

if(isset($username) && trim($username)!=='') 
{ 
    $exist = $user_obj->checkUsernameExist($username); 
     if($exist == '1') 
     { 
      $form->getElement('username')->addError('This username exists.'); 
      $form->markAsError(); 
     } 
} 
+0

這會使表單無效或僅顯示錯誤消息嗎? –

0

您的代碼看起來是正確的您需要提供更多的代碼行以供審閱。