わかりました、何が機能していないのかわかりません。他のすべての機能が正常に機能するため、フォーム検証が確実に機能していることはわかっていますが、メッセージが true または false であり、どれも表示されないため、検証ルールをスキップしているように感じます..これは奇妙です.. .
$this->form_validation->set_rules('region', 'required|valid_region');
私のライブラリフォルダーの MY_Form_validation.php のルール。ライブラリが最初にロードされます。私が言ったように、私の reCaptcha など、他のすべての検証は適切に機能します。
function valid_region($str) {
$this->load->database();
if($this->db->query('SELECT id
FROM region
WHERE name = ?
LIMIT 1', array($str))->num_rows() == 0) {
//not a valid region name
$this->set_message('valid_region', 'The %s field does not have a valid value!');
return false;
}
$this->set_message('valid_region', 'Why is it validating?');
}
どのメッセージも設定されないので、何も検証されていないように感じます!