Zend validators and error messages: addValidator and addErrorMessage

11,338

Solution 1

Typically it's done per validator error message, not per validator...

$element->setErrorMessages(array(Zend_Validate_...::CONSTANT => 'New Message'));

But I often prefer to override all of an element's errors to a single

$element->setErrorMessages(array('Single Error'));

or, if I need it per validator, this works...

$validator->setMessages('string error')

should override all a validator's errors to a single message. I could not find this documented anywhere, but it works for me. Because of this, it may not work for all versions?

To me, the error messaging handling is a bit messy unless you want to override every possible error message, but hopefully one of these solutions works for you.

Cheers

Solution 2

Add your message along with the validator as below. Example:

->addValidator('StringLength', false, array(0,255,'messages'=>'Cannot be more than 255 chars'))

->addValidator('NotEmpty', true, array('messages'=>'Cannot be empty'))

Solution 3

Add your message like this

->addValidator( 'Alpha', true, array( 'messages' => array( 'notAlpha' => "Please enter alphabetic character only in Product name.
") ));

Add validator message according to your error string

Share:
11,338
jblue
Author by

jblue

Updated on June 05, 2022

Comments

  • jblue
    jblue almost 2 years

    If I have a form element that has multiple validators attached to it (3 in this example), how would I use addErrorMessage to create custom error messages when each unique validator fails. Is there a way to add a custom message for each validator?

    $element = new Zend_Form_Element_Text()...
    $element->....
            ->addValidator(...)
            ->addValidator(...)
            ->addValidator(...)
            ->addErrorMessage()
    
  • Katia
    Katia almost 10 years
    I like the specified message handling via 'notAlpha'. can you guide me to where I can find more of those identifiers for the rest of validators? thanks anyway :^)
  • Walter Caraza
    Walter Caraza almost 10 years
    i have some aditional errors but using the first validation not working
  • Nilesh Gupta
    Nilesh Gupta over 9 years
    You find these varibale of error message from its validate file. go to below path project/library/Zend/Validate select your validate rule, Here you find list of "const" that is for error message