2013-05-29 3 views
0

제 웹 사이트에 젠드 양식을 사용하고 있습니다. 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와 같습니다. 하지만 오류 메시지가 표시되지 않습니다.

이 코드에 이상이있는 경우. 도와주세요.

답변

2

이런 식으로 시도해보십시오. 이게 내 끝에서 일하고있어.

$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; 

내가 당신에게 도움이 될 수 있으면 알려 주시기 바랍니다 더

+0

내 기본적인 요구 사항이 'DD-MM-YYYY'형식을 채택하는 것입니다. 내 코드의 유일한 문제는 '연도'형식입니다. 내가 13 학년을 입력하면 오류가 발생해야하며 2013 학년도에 입학해야합니다. 답장을 보내 주셔서 감사합니다 –