Php – Form validation custom message in codeigniter

codeigniterPHPvalidation

In codeigniter I have used codeigniter form validation library in many controller,

ex: –

$this->form_validation->set_rules('rank', 'Rank', 'required');

If form validation failed, Then it displays

         "The Rank field is required."

Here I want to display custom message,One method I can follow is

$this->form_validation->set_message('required', '%s can not be blank');

If I using this method then I need to repeat this code in every controller wherever I am using "required" form validation method

My question is there is any method to declare this custom message in configure file and automatically use this custom message whenever I using form validation rule "required"?

Best Answer

If you want to permanently over-ride the error message just hard code it into the form_validation_lang.php file.
(Located at system/language/english)

It you want the choice the extend the form_validation class adding your custom required function and add the appropriate error message in the lang file.

For example;

class MY_Form_validation {
    public function custom_required($str) {
        if ( ! is_array($str)) {
            return (trim($str) == '') ? FALSE : TRUE;
        } else {
            return ( ! empty($str));
        }
    }
}

Then in the lang file;

$lang['custom_required'] = "%s can not be blank.";
Related Topic