私はCodeigniterフォームの検証をconfig(手動でルールを設定しない)を使用しています。必要なのは、他のフィールドに応じて必要なルールを設定することです。たとえば、我々は次のルールを持っている想像:config内のCodeigniterフォームの検証は、別の入力に依存します
'user' => array(
array(
'field' => 'user[phone]',
'rules' => 'required'
),
array(
'field' => 'user[email]',
),
array(
'field' => 'user[foo]',
//'rules' => 'required'
)
),
foo
入力はemail
フィールドに基づいて必要とされなければなりません。
注:それは、コールバック機能で行うことができますが、それは大きなアプリケーションでは、それは少し難しくなります。何か案が?あなたのAPPPATH.'config/form_validation.php'
ファイルセット分離ルールアレイ
$config = array(
'yes_email' => array(
array(
'field' => 'user[phone]',
'rules' => 'required'
),
array(
'field' => 'user[email]',
),
array(
'field' => 'user[foo]',
'rules' => 'required'
)
),
'no_email' => array(
array(
'field' => 'user[phone]',
'rules' => 'required'
),
array(
'field' => 'user[email]',
),
array(
'field' => 'user[foo]',
)
),
);
で
javascriptまたはjQueryを使用してカスタム検証を記述することができます。 – jagad89
@ jagad89私はすでにAngularjsでjsバリデーションを実装しています。これは、サーバー側の検証に関するものです。 –
CI 3.xを使用している場合は、[こちら](https://www.codeigniter.com/userguide3/libraries/form_validation.html#callable-use-anything-as-a-rule) – jagad89