[PHP-users 27670] Re: メールフォームの未入力チェック

神 谷 djr_kamiya @ hotmail.com
2005年 11月 28日 (月) 23:58:34 JST


神谷@sswです

>などとするのは、あまりに手間が掛かっていて馬鹿げているので処理を一つに
>まとめたい(例えば、$error_message='{変数}が未入力です。'; という風に)
>のですが、何を使えばよいのかが分からず困っています。
配列と連想配列で、項目ごとの入力必須か否か、表示用の項目名等を管理すれば
ループ処理で定常的なチェックは楽になるとは思います。

$item_property[0] = array( 'item' -> "to_address", 'input_chk' -> TRUE , 
'max_length' -> 128 , 'name' -> '宛先' );
$item_property[1] = array( 'item' -> "cc_address", 'input_chk' -> FALSE , 
'max_length' -> 512 , 'name' -> 'CC' );
$item_property[2] = array( 'item' -> "message", 'input_chk' -> TRUE , 
'max_length' -> 1024 , 'name' -> '本文' );

$idx = 0;
while($idx < count(item_property)){
  $post_value = $_POST["$item_property[0]['item']"];

  if ( ! $item_property[0]['input_chk'] ) {
    if ( ! strlen($post_value) ) {
      /* 未入力エラー */
    }
  }

  if ( strlen($post_value) > $item_property[0]['max_length'] ) {
      /* 文字数制限エラー */
  }
}

みたいな感じでいかがでしょうか?

_________________________________________________________________
MSN Hotmail が贈る Hot Xmas × VOGUE 
http://promotion.msn.co.jp/hotmail/xmas/index.html 素敵なクリスマスコフレを
プレゼント



PHP-users メーリングリストの案内