私は新しいユーザーを追加するためのライブラリを作成しています。CodeIgniter - フィールド名に対応するエラーメッセージにアクセスできません
class Register
{
private $CI;
public function add_new_user()
{
$CI =& get_instance();
$CI->form_validation->set_rules('email', 'Email', 'required|callback_is_email_exist');
if ($CI->form_validation->run() == TRUE)
{
$email = $_POST['email'];
$insert_data = array('email' => $email);
$CI->new_data->add_user($insert_data);
}
}
private function is_email_exist($email)
{
$CI =& get_instance();
$email_result = '';
$query = $CI->check->find_email($email);
foreach ($query->result_array() as $row)
{
$email_result = $row['email'];
}
if ($email_result == $email)
{
$CI->form_validation->set_message('is_email_exist', 'Such email already exist!');
return FALSE;
}
else
{
return TRUE;
}
}
}
私は、自動ロードにform_validationとモデルチェック、NEW_DATAを追加します。エラーの代わりにフォームを送信すると(そこにある場合)フィールド名のユーザー名(is_username_exist)に対応するエラーメッセージにアクセスできません。正しいエラーを得るにはどうすればよいですか?
あなたがしたことを説明する必要があります。さもなければ、OPはこれを貼り付けてコピーし、次に彼がエラーに遭遇したときに新しい投稿をするかもしれません。 – Goose
はい、でも、このコードを多くのコントローラで使う必要がある場合は、このコードをすべてのコントローラにコピーするか、ライブラリを作成して、 '$ this-> my_library-> my_method'を使ってください。 – Stormkeeper