У меня есть набор полей для проверки. Вот сценарий.
Допустим, у меня есть поля, показанные ниже. Поскольку имена совпадают, я ставлю число и добавляю в конце.
job_title_1
company_name_1
responsibilities_1
job_title_2
company_name_2
responsibilities_2
job_title_3
company_name_3
responsibilities_3
На мой взгляд, я использовал (для оператора) цикл и присваивал этот номер в конце имени поля, а затем передавал переменную «ctr = 3» в моем контроллере.
Я использую валидацию вот так
$validation_errors = array();
for ($i = 1; $i <= $ctr; $i++)
{
$this->form_validation->set_rules('career_objectives_' . $i, 'Career objectives title', 'trim|required');
$this->form_validation->set_rules('job_title_' . $i, 'Job title / position', 'trim|required');
$this->form_validation->set_rules('company_name_' . $i, 'Company', 'trim|required');
$this->form_validation->set_rules('from_date_employment_' . $i, 'From date of employment', 'trim|required');
$this->form_validation->set_rules('to_date_employment_' . $i, 'To date of employment', 'trim|required');
$this->form_validation->set_rules('responsibilities_' . $i, 'Responsibilities type', 'trim|required');
$this->form_validation->set_error_delimiters('<div class="valid-err">', '</div>');
if ($this->form_validation->run() == FALSE)
{
$validation_errors[$i] = validation_errors();
}
}
Я решил поместить validation_errors в массив, чтобы я мог получить это в моем представлении и поместить ошибку строки в отдельном месте. Моя проблема сейчас в том, что даже у job_title_1 есть только ошибка. Все job_title от 1 до 3 выдавали ошибку. Я думаю, что validation_errors () не был понятен следующему циклу.
Любая помощь будет принята с благодарностью.
Я уже разместил его на CodeIgniter форумах, но у меня нет правильных решений.