もし要素がグループであった場合は、それ全体が要素として扱われ、 個々の要素の値の配列が検証関数に渡されます。 グループ化された要素を個々の要素単位で検証するには、 addGroupRule() を使用します。
フォームの要素名。組み込まれている規則のうち、 このパラメータに配列を渡してもきちんと処理してくれるのは、現在は compare だけです。
$form->addElement('password', 'cmpPasswd', 'パスワード:'); $form->addElement('password', 'cmpRepeat', 'パスワード(もう一度):'); $form->addRule(array('cmpPasswd', 'cmpRepeat'), 'パスワードが一致しません', 'compare', null, 'client'); |
データが無効な場合に表示されるメッセージ。
規則の型。 getRegisteredRules() を使用して取得します。HTML_QuickForm_Rule の派生クラスの名前や、そのクラスのインスタンスを渡すことも可能です。
(オプション) 追加の検証データのために必要。
(オプション) 検証を行う位置。 "server" あるいは "client"。
クライアント側: エラーがあった場合に、 要素の内容をリセットして元の状態に戻すかどうか。
対象となるフォーム要素が存在しない場合にも強制的に規則を適用します。
表 47-1PEAR_Error の値
エラーコード | エラーメッセージ | 原因 | 対応 |
---|---|---|---|
QUICKFORM_NONEXIST_ELEMENT | Element '$element' does not exist in HTML_QuickForm::addRule() | 存在しない要素に規則を追加しようとしました。 | 要素名の綴りを調べるか、$force を使用してエラーを抑制します。 |
QUICKFORM_INVALID_RULE | Rule '$type' is not registered in HTML_QuickForm::addRule() | QuickForm が知らない規則を指定しています。 | 規則の型の綴りを調べるか、 HTML_QuickForm::registerRule() を使用します。 |