【问题标题】:zend date validation errorzend 日期验证错误
【发布时间】:2013-05-29 14:38:19
【问题描述】:

我正在为我的网站使用 Zend 表单。 dob 有一个日期字段。

 $date_of_birth      = $this->createElement('text','date_of_birth')
                        -> setAttrib('class','txt_feeld')
                        -> setAttrib('placeholder', 'dd-mm-yyyy')
                        -> setRequired(true);   
    $date_of_birth      -> addValidator('NotEmpty', true)
                        -> getValidator('NotEmpty')->setMessage('Enter date of birth');
    $date_of_birth      -> addValidator('date',true, array('dd-mm-yyyy'))
                        -> getValidator('date')->setMessage('Invalid Date');
    $date_of_birth      -> setDecorators(array('ViewHelper','Errors'));

输入此日期格式“dd-mm-yy”后,我想生成一条错误消息。因为我以这种格式 dd-mm-yyyy 验证日期。但我无法收到错误消息。

如果此代码有任何问题。请帮我。

【问题讨论】:

    标签: php zend-framework zend-form


    【解决方案1】:

    试试这样吧。这对我来说是有效的。

    $f = new Zend_Form();
    $f->addElement('text', 'date_of_birth', array(
        'required'   => false,
        'validators'  => array (
           array('date', false, array('MM/dd/yyyy'))
        ),
        'label'      => 'Date of Birth:',
        'class'      => 'form-date'
    ));
    
    $data = array(
        'projected-start' => '13/03/2011'
    );
    var_dump( $f->isValid( $data ) );
    var_dump( $f->getErrors() );
    die;
    

    如果我能帮助你更多,请告诉我

    【讨论】:

    • 我的基本要求是采用这种 'dd-mm-yyyy' 格式。我的代码中唯一的问题是“年”格式。当我输入 13 年时,它必须成为错误,并且必须输入 2013 年。感谢您的回复
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-12
    • 1970-01-01
    • 2017-11-09
    • 1970-01-01
    相关资源
    最近更新 更多