CodeIgniter ユーザガイド 日本語版 Version 1.6.3


フォーム・バリデーション(検証)


CodeIgniter:


(一)

(二)

(三)

(四)


:


(一)

(二)( )

(三) [ : XSSSQL使 ] 

(四)(HTML?)

(五)


HTML 退
CodeIgniter () 使HTML


 CodeIgniter ()3:


(一)

(二)""  

(三)


使3


使myform.php  applications/views/ :


使formsuccess.php   applications/views/ :


使form.php   applications/controllers/ :

!


URL:
example.com/index.php/form/


:

 (myform.php) 2web:


(一)from Form 使 HTML使form使 formactionURLURL URL

(二): <?php echo $this->validation->error_string; ?>




 (form.php)  index()  使 Form  URL 

"false" (FLASE)run()  "true" 


CodeIgniter 

 (form.php) :
$rules['username'] = "required";
$rules['password'] = "required";
$rules['passconf'] = "required";
$rules['email'] = "required";

$this->validation->set_rules($rules);
:



Note: 


 (<p>)  :
$this->validation->set_error_delimiters('<div class="error">', '</div>');
div 使


CodeIgniter  [ : UNIX( "|" ) ] :
$rules['username'] = "required|min_length[5]|max_length[12]";
$rules['password'] = "required|matches[passconf]";
$rules['passconf'] = "required";
$rules['email'] = "required|valid_email";
:


(一)username 512

(二)password 

(三)email 


!

Note: 


使 :
$rules['username'] = "trim|required|min_length[5]|max_length[12]|xss_clean";
$rules['password'] = "trim|required|matches[passconf]|md5";
$rules['passconf'] = "trim|required";
$rules['email'] = "trim|required|valid_email";
MD5  "xss_clean" 

htmlspecialcharstrimMD5 PHP 使

Note:  使

: 


使 調

"username" :
$rules['username'] = "callback_username_check"; 
 username_check :

 "test" 

"callback_" 

$this->validation->set_message 使  (1) 

Note:  "required" :
$this->validation->set_message('required', '');


:
$fields['username'] = '';
$fields['password'] = '';
$fields['passconf'] = '';
$fields['email'] = '';

$this->validation->set_fields($fields);


 index  :

 myform.php  value :



:

<p>

Note:  $this->validation->set_fields 使 "_error" "username" :
$this->validation->username_error.


使:
ルール パラメータ 説明
required なし フォームのデータが空のときに FALSE を返します。  
matches あり フォームのデータが他のフィールドの入力データと一致しないときに FALSE を返します。 matches[form_item]
min_length あり フォームのデータが指定したサイズよりも文字数が短いときに FALSE を返します。 min_length[6]
max_length あり フォームのデータが指定したサイズよりも文字数が長いときに FALSE を返します。 max_length[12]
exact_length あり フォームのデータが特定の長さでないときに FALSE を返します。 exact_length[8]
alpha なし フォームのデータがアルファベットでない文字を含むときに FALSE を返します。  
alpha_numeric なし フォームのデータが英数字でない文字を含むときに FALSE を返します。  
alpha_dash なし フォームのデータが英数字、アンダースコア("_")、ダッシュ("-") のいずれでないものを含むときに FALSE を返します。  
numeric なし フォームのデータが数字でないときに FALSE を返します。  
integer なし フォームのデータが整数以外の場合 FALSE を返します。  
valid_email なし フォームのデータがemailアドレスとして正しくないとき FALSE を返します。  
valid_emails なし コンマで区切られたリストのひとつでもメールアドレスとして正しくないとき FALSE を返します。  
valid_ip なし 渡されたIPが正しい形式でないときに FALSE を返します。  
valid_base64 なし 渡された文字列が正しい Base64 形式でないとき FALSE を返します。  

Note: また、これらのルールは、ふつうのメソッドとしても呼び出すことができます。例:

$this->validation->required($string);

Note: 引数を一つだけとるPHPの組み込み関数も使用できます。

整形処理のリファレンス

次のリストは、使用可能な整形メソッドのリストです:

名前 パラメータ 説明
xss_clean なし XSS フィルタリングメソッドを通過させます。XSSフィルタリングメソッドについては、入力クラスのページをご覧ください。
prep_for_form なし HTMLデータをフォームフィールドで崩れずに表示させるよう、HTML特殊文字を変換します。
prep_url なし もし、ない場合は、"http://" をURLに追加します。
strip_image_tags なし イメージへのURLをそのままにして、イメージタグからHTMLを取り除きます。
encode_php_tags なし PHP タグをHTMLエンティティに変換します[ 訳注: たとえば、"<?" を "&lt;?" に変換 ]。

Note:  trimhtmlspecialcharsurldecode  PHP使


: language/english/validation_lang.php

:
$this->validation->set_message('rule', 'Error Message');
 rule Error Message 


3:

set_select()


12 value  :
<select name="myselect">
<option value="one" <?php echo $this->validation->set_select('myselect', 'one'); ?> >One</option>
<option value="two" <?php echo $this->validation->set_select('myselect', 'two'); ?> >Two</option>
<option value="three" <?php echo $this->validation->set_select('myselect', 'three'); ?> >Three</option>
</select>

set_checkbox()


12  value :
<input type="checkbox" name="mycheck" value="1" <?php echo $this->validation->set_checkbox('mycheck', '1'); ?> />

set_radio()


12  value :
<input type="radio" name="myradio" value="1" <?php echo $this->validation->set_radio('myradio', '1'); ?> />