2011-07-04 142 views
0

Zend_Form验证需要javascript吗?如果它发生了什么,如果JS关闭,它会回落到正常的PHP验证例如。做zend表单验证需要javascript吗?

对不起noob问题我只是无法找到任何文档。

干杯。

编辑:

这是我的形式:

class Application_Form_Test extends Zend_Form { 
    public function init() {} 
    public function testForm() { 
     $email = $this->createElement('text', 'email'); 
     $email->setLabel('E-Mail Address'); 
     $email->setRequired(true); 
     $email->addFilter('StripTags'); 
     $email->addErrorMessage('an email address is required'); 
     $email->addValidator('NotEmpty', true); 
     $email->addValidator('EmailAddress'); 

     $submit = $this->createElement('submit', 'submit', array('label'=>'Submit')); 
     $this->addElements(
      array(
       $email, $submit 
      ) 
     ); 
     return $this; 
    } 
} 

,这是我的控制器:

class testController extends Zend_Controller_Action { 
    public function init() { 
     /* Initialize action controller here */ 
     if(!Zend_Auth::getInstance()->hasIdentity()) { 
      $this->_redirect('login/index'); 
     } 
     $this->_acl = new MyAcl(Zend_Auth::getInstance()->getIdentity());    
    } 
    public function indexAction() { 
     $form = new Application_Form_Test(); 
     $form = $form->testForm(); 
     $form->setAction('/dev/public/test/update')->setMethod('post'); 
     $this->view->form = $form; 
    } 
    public function updateAction() { 
     $form = new Application_Form_Test(); 
     if($this->getRequest()->isPost()){ 
      $formData = $this->_request->getPost(); 
      if($form->isValid($_POST)){ 
       die('i seem to be valid....'); 
      } 
      else{ 
       die(var_dump($_POST)); 
      } 
     } 
    } 
} 

这似乎验证失败。有任何想法吗?

回答

2

无地,Zend_Form验证程序(我的意思是验证你addValidator的表单元素添加这样的过滤器:。

$element->addValidator (new Zend_Validate_StringLength (array ('max' => 5))); 

都处理服务器端所以你不必担心JavaScript的

您可以添加JavaScript验证程序客户端,以避免返回到服务器,如果你想要的,但这是另一回事