[PHP-users 27741] Re: PEAR:HTML_QuickForm_Rule による入力数値チェック
T Kammori
kammoridensya @ yahoo.co.jp
2005年 12月 2日 (金) 23:04:43 JST
TKです。
何度もすいません。
大原様のアドバイスをよく読んでおりませんでした。
NumericRange という ruleがあるのではなく、
HTML_QuickForm_Rule_Range を参考に、というお話だったのですね。
早速クラスを作り、検証が終了しましたので
ご報告いたします。
<?php
require_once "HTML/QuickForm.php";
require_once('HTML/QuickForm/Rule.php');
class HTML_QuickForm_Rule_NumericRange extends
HTML_QuickForm_Rule
{
function validate($value, $options)
{
return $options[0] <= $value && $value <= $options[1];
}
}
$form = new HTML_QuickForm('frmTest', 'get');
$form->registerRule('NumericRange', null,
'HTML_QuickForm_Rule_NumericRange');
$form->addElement('text', 'MyTextBox', '数値を入力');
$form->addElement('submit', 'btnSubmit', '送信');
$form->addRule('MyTextBox', '5-10までの値を入力してください',
'NumericRange', array(5, 10));
if ($form->validate()) {
// フォームの検証が成功したら、凍結する。
$form->freeze();
}
$form->display();
?>
ありがとうございました!!!
>お世話になっております。
>
>
>(>大原様、ご返信が遅れまして申し訳ありません。)
>
>>HTML_QuickForm_Rule_Rangeが参考になると思います。
>>
>>
>>で、呼び出すとるとこんな感じ。
>>test_valueというのがチェックするテキストボックスの名前とすると、
>>
>>$form->addRule( 'test_value', 'error_msg', 'NumericRange', array( 0,
>>10 ) );
>
>
>
>なるほど!NumericRangeなんていうものがあったのですね。
>マニュアルなどを血眼になって呼んだつもりだったのですが、
>見落としていたのかもしれません。
>
>マニュアルになかったらソースを追っかけるという習慣を
>身に着けるべきですね。
>
>検証はまだ行えていないのですが、
>取り急ぎお礼申し上げます。
>
>ありがとうございました!
>
>TK
>_______________________________________________
>PHP-users mailing list PHP-users @ php.gr.jp
>http://ns1.php.gr.jp/mailman/listinfo/php-users
>PHP初心者のためのページ - 質問する前にはこちらをお読みください
>http://www.php.gr.jp/php/novice.php3
PHP-users メーリングリストの案内