I am not sure it is a problem. The error that is displayed is the first error that fails for a form field. Testing every rule and reporting on them all would lead to some really long form field error messages and lots of repeated or useless information.
Take for example
PHP Code:
$this->form_validation->set_rules('name', 'NAME', 'trim|required|min_length[10]|max_length[50]|alpha_numeric_spaces');
This might produce, when left blank, an error like:
Quote:The NAME field is required. The Name field must contain a minimum of 10 characters. The Name field must contain only alpha numeric characters or spaces.
Which in my opinion is too much information. Much better to simply say that the field is required.
Personally on my forms I like to indicate (in small help text) the expected submission. So in this case I would have something like:
Quote:e.g. John Jones [required, 10-50 chars, alpha numeric & spaces]
I then replace that help text with the error message if an error exists, with error delimiters making the text red, something like:
PHP Code:
<p class="help-text"><?php echo (form_error('name') != '' ? form_error('name') : 'e.g. John Jones [required, 10-50 chars, alpha numeric & spaces]'); ?></p>
Also in bootstrap you can easily mark the field input in red with the 'has-error' class:
PHP Code:
<div class="form-group <?php echo (form_error('name') != '' ? 'has-error' : ''); ?>">
Which has nothing to do with your question but I thought I would mention it anyway :-)