HTML_QuickFormをもう少しテスト。 HTML_QuickFormオブジェクトのaddRuleメソッドでは、未入力チェックだけでなく有効範囲などのチェックできます。 たとえば、ユーザー名を6桁とした場合、addRuleメソッドを使って条件判定することもできます。 次のサンプルではユーザー名について6~8文字で入力されているかどうかをチェックしてます。
<?php //ライブラリの読み込み require_once("HTML/QuickForm.php"); //オブジェクトの作成 $form = new HTML_QuickForm(); //フォーム要素の作成 $form->addElement("text","id","ユーザー名"); $form->addElement("submit","submit","送信"); //入力条件を設定 $form->addRule("id", "ユーザー名を入力!", "required"); $form->addRule("id", "ユーザー名は半角英数字", "alpanumeric"); $form->addRule("id", "ユーザー名は6~8文字", "rangelength",array(6,8)); $form->setRequiredNote("<font color='red'>*</font>必須入力"); //サーバー側で検証 $form->validate(); //フォームを表示 $form->display(); ?>
結果表示はつぎのとおり。 6文字未満ですと、入力エラーを出し、適切な文字数ですとそのまま入力できます。