Я работаю над проверкой формы в codeigniter, я создаю правила проверки для своей формы в My Controller. У меня есть два окна выбора, и я хочу проверить оба, теперь проблема в том, что в поле выбора отображается одно и то же сообщение об ошибке, которое я хочу отображать для каждого поля выбора.
Основная проблема заключается в том, что сообщение об ошибке будет отображать одну и ту же ошибку города для обоих окон выбора. Я хочу, чтобы разные сообщения об ошибке для разных окон выбора.
и еще один вопрос: когда я получаю сообщение об ошибке проверки для любого поля, вся форма становится пустой. Я хочу показать это, когда я получу ошибку проверки для любого поля, другие данные поля будут там.
Это мой контроллер:
public function addEmployeeController()
{
$this->load->library('form_validation');
$abcd = $this->input->post('city_id');
$abc = $this->input->post('desi_id');
$this->form_validation->set_rules('emp_name', 'Name', 'trim|required');
$this->form_validation->set_rules('emp_jdate', 'Joining Date', 'trim|required');
$this->form_validation->set_rules('emp_addr', 'Address', 'trim|required');
$this->form_validation->set_rules('emp_sal', 'Salary', 'trim|required');
$this->form_validation->set_rules('emp_descr', 'Description', 'trim|required');
$this->form_validation->set_rules('emp_mobile', 'Mobile Number', 'trim|required|min_length[10]');
$this->form_validation->set_rules('city_id', 'City', 'trim|required|callback_select_validate');
$this->form_validation->set_rules('desi_id', 'Designation', 'trim|required|callback_select_validate');
if($this->form_validation->run() == FALSE)
{
$this->index();
}
else
{
if($query = $this->Emp_model->addEmployeeModel('$data'))
{
$data['main_content'] = 'signup_successful';
$this->load->view('emp_view', $data);
}
else
{
$this->load->view('emp_view');
}
}
}
public function select_validate($abcd)
{
// 'none' is the first option that is default "-------Choose City-------"
if($abcd == "none")
{
$this->form_validation->set_message('select_validate', 'Please Select Your City.');
return false;
}
else
{
// User picked something.
return true;
}
}
public function select_validate1($abc)
{
// 'none' is the first option that is default "-------Choose City-------"
if($abc = "none")
{
$this->form_validation->set_message('select_validate', 'Please Select Your Designation.');
return false;
}
else
{
// User picked something.
return true;
}
}
И в представлении у меня есть поле выбора, подобное этому. когда я отправляю форму, не выбирая поле выбора, отображается сообщение об ошибке «Пожалуйста, выберите свой город» для обоих полей выбора. Я хочу показать другое сообщение.
<p>
<lable for="desi_id">Designation:</lable><?php echo form_error('desi_id'); ?>
<select name="desi_id">
<option selected="selected" value="none">Select Post</option>
<?php foreach ($records as $row) { ?>
<option value="<?php echo $row->desi_id ?>"><?php echo $row->post_name ?></option>
<?php } ?>
</select>
</p>
Город: выберите город city_id?> "> City_name?>
Здравствуйте, ваше другое сообщение, которое вам нужно определить:
Для сообщения:
$this->form_validation->set_rules('emp_name', 'Name', 'trim|required');
$this->form_validation->set_rules('emp_jdate', 'Joining Date', 'trim|required');
$this->form_validation->set_rules('emp_addr', 'Address', 'trim|required');
$this->form_validation->set_rules('emp_sal', 'Salary', 'trim|required');
$this->form_validation->set_rules('emp_descr', 'Description', 'trim|required');
$this->form_validation->set_rules('emp_mobile', 'Mobile Number', 'trim|required|min_length[10]');
$this->form_validation->set_rules('city_id', 'City', 'trim|required|callback_select_validate');
$this->form_validation->set_rules('desi_id', 'Designation', 'trim|required|callback_select_validate1');
$this->form_validation->set_message('city_id', 'Your message');
$this->form_validation->set_message('desi_id', 'Your other message');
Для пустых других полей: вы должны использовать set_value ('field_name') во всех полях.
<input type="text" name="city" value="<?php echo set_value('city'); ?>" />
Ваша небольшая ошибка: callback_select_validate и callback_select_validate1
$this->form_validation->set_rules('city_id', 'City', 'trim|required|callback_select_validate');
$this->form_validation->set_rules('desi_id', 'Designation', 'trim|required|callback_select_validate1');
Надеюсь, что это поможет вам :)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다