[PHP-users 32279] Re: PEAR:HTML_QuickForm、advcheckboxのチェック個数制限
mamo k
mamomamok @ gmail.com
2007年 6月 5日 (火) 17:13:20 JST
須山さん、ありがとうございます!
$form->_submitValuesにすることと、「errors」の方も"_"が必要でした。
下記にて動作しました!
$fig = array_sum($form->_submitValues['good']);
if($fig < 3 || $fig > 5){
$form->_errors['good'] = '許可された選択数は3から5の範囲です。';
}
また、addFormRuleでも動作確認できました!
function cmpPass($fields){
if (array_sum($fields['good'])<3 || array_sum($fields['good'])>5) {
return array('good' => '許可された選択数は3から5の範囲です。');
}
return true;
}
$form->addFormRule('cmpPass');
さらにadvcheckboxでも同様に問題ないようですね。
これでサーバー側でのvalidateは解決しました。
結局_submitValuesの使い方がわかっていなかったようです。
大原さん、須山さん、誠にありがとうございました!
後は、advcheckboxでのjavascript制御ですね。name属性でなくid属性を持たせて
getElementByIDでアクセス⇒合計数判別すれば出来るのかなと考えています。
PHP-users メーリングリストの案内