[PHP-users 32270] Re: PEAR:HTML_QuickForm、advcheckboxのチェック個数制限

mamo k mamomamok @ gmail.com
2007年 6月 4日 (月) 19:40:50 JST


大原さん、ありがとうございます。
せっかくご返信いただいたのに返信が遅くなり申し訳ありません。

   > 例えば趣味だったら、
   > hoby_fishing
   > hoby_reading
   > hoby_travel

   > という感じで、一部を共通にすれば、
   > form ruleあたりでチェックするのも楽ではないでしょうか?
   > (javascriptは自分で書く必要があると思いますけど。)


私もそのような方法だろうなと思い、PEAR入門も片手に挑戦しているのですが・・
 例えば数個の「good[0],good[1],・・・・」というnameを持ったチェックボックスに対して、
3個まで選択可とする、こんな感じの関数をaddGroupRuleすればいいのかなと思うのですがいかがでしょうか。

$data=array('good[0]'=>1,'good[1]'=>0,'good[2]'=>0,'good[3]'=>1,'good[4]'=>0,'good[5]'=>1,'good[6]'=>1,'good[7]'=>0);
$dataArray=array_values($data);

function CheckNum($value){
    for($i=0;$i<count($value);$i++){
        if($value[$i]==1) $x++;//チェックされているものをカウント
        if($x>3) return FALSE; //3以上のカウントでFALSE
    }
   return TRUE;
}

CheckNum($dataArray);


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