入力値検証(validation)機能をつける anchor.png

xCCKが備えている入力値検証の機能は、全くないといっていいほど貧弱です。
入力値検証が必要な場合は、デリゲートを使って実装してください。

第一引数に Xcck_PageEditFormオブジェクトが渡されますので、get() メソッドでhtmlフォームに対する入力値を取得できます。
モジュールディレクトリの情報が必要な場合は、$form->mDirname で取得できます。

サンプルプリロード:Validate.class.php

class Score_Validate extends XCube_ActionFilter
{
   /**
    * @public
    */
   public function preBlockFilter()
   {
       $this->mRoot->mDelegateManager->add('Xcck.Event.ValidateRegisterForm', array(&$this, 'validate'));
   }

   /**
    * validate score count
    * 
    * @param	Xcck_PageEditForm &$form
    * 
    * @return	bool
   **/
   public function validate(Xcck_PageEditForm &$form)
   {
       $ourscore = explode(' ', $form->get('ourscore'));
       $oppositionscore = explode(' ', $form->get('oppositionscore'));
       if(count($ourscore)!==count($oppositionscore)){
           $form->addErrorMessage('両チームのスコアの回数が違っています。回数を合わせてください。');
       }
   }
}

トップ   凍結 差分 バックアップ 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 1729, today: 1, yesterday: 1
初版日時: 2011-08-26 (金) 18:41:37
最終更新: 2011-08-26 (金) 18:41:37 (JST) (2037d) by admin