HTML_QuickForm::addFormRule() -- 全体的な検証規則を追加する
説明
複数のフィールドにまたがる規則を追加したい場合、
あるいはフォームにまったく独自の検証を適用したい場合に
これを使用します。検証に成功した場合は、
関数/メソッドは TRUE を返します。また、エラーが発生した場合は
配列 array('要素名' => 'エラー') が返されます。
例外・エラー
表 47-1PEAR_Error の値
エラーコード | エラーメッセージ | 意味 | 解決 |
---|
QUICKFORM_INVALID_RULE | Callback function does not exist in HTML_QuickForm::addFormRule() | callback として存在しない関数の名前を使用しようとします。 | スペルチェックをしてください。 |
注意
since 3.1
この関数は、スタティックにコールする
ことはできません。
例
例 47-1addFormRule() の使用法 <?php
require_once ('HTML/QuickForm.php');
$form = new HTML_QuickForm();
// この関数は、パスワードが同じかどうかを調べます
function cmpPass($fields)
{
if (strlen($fields['passwd1']) && strlen($fields['passwd2']) &&
$fields['passwd1'] != $fields['passwd2']) {
return array('passwd1' => 'パスワードが違います');
}
return true;
}
$form->addElement('password', 'passwd1', 'パスワードを入力してください');
$form->addElement('password', 'passwd2', 'もう一度パスワードを入力してください');
$form->addFormRule('cmpPass');
?> |
|