1
是否有笨表單驗證庫的方式來確定一個人的數據的重複錄入,如果我認爲像這樣的情況很多條件: 名字,中間名,姓,出生日期是在db中匹配。名,中間名,姓和生日:笨表單驗證在檢查重複
例如,我需要檢查,如果這個人已經是如果數據匹配來自DB認爲,同樣存在。
在這種情況下,我不能使用每種輸入類型的is_unique
,因爲如果此人具有相同的名字,姓氏和中間名,但生日是不同的。我如何在codeigniter中做這樣的表單驗證?
事情是這樣的查詢:
SELECT COUNT(patient_id) AS patient_id FROM patients WHERE patients.firstname = "" AND patients.middlename = "" AND patients.lastname = "" AND patients.birthdate = ""
如果查詢結果大於1,那麼它被認爲是一個重複的條目。我怎麼能在codeigniter表單驗證中做到這一點?
這是我在控制器代碼:
public function addpatient() {
$this->form_validation->set_rules('pafname', 'pafname', 'trim|required',
array('required' => 'First name is required')
);
$this->form_validation->set_rules('pamname', 'pamname', 'trim|required',
array('required' => 'Middle name is required')
);
$this->form_validation->set_rules('palname', 'palname', 'trim|required',
array('required' => 'Last name is required')
);
$this->form_validation->set_rules('paaddress', 'paaddress', 'trim|required',
array('required' => 'Address is required')
);
$this->form_validation->set_rules('pacontact', 'pacontact', 'trim|required',
array('required' => 'Contact # is required')
);
$this->form_validation->set_rules('pabdate', 'pabdate', 'trim|required',
array('required' => 'Birthdate is required')
);
$this->form_validation->set_rules('psex', 'psex', 'trim|required',
array('required' => 'Gender is required')
);
$this->form_validation->set_rules('pmartialstat', 'pmartialstat', 'trim|required',
array('required' => 'Martial status is required')
);
if ($this->form_validation->run() == TRUE) {
$result['status'] = true;
$result['message'] = "This patient has no duplicate";
}else {
$result['status'] = false;
$result['message'] = $this->form_validation->error_array();
}
echo json_encode($result);
}
謝謝您的回覆,先生,你已經回答是隻爲姓,如果認爲我需要FNAME,中間名,姓氏和生日我的病情? .. –
Codeigniter表單驗證一次只傳入一個參數。由於您的驗證需要所有字段,因此您需要從自定義驗證中的$ _POST數據中提取所有字段 –