Zend Framework Part4
■ このスレッドは過去ログ倉庫に格納されています
0624nobodyさん
2010/11/04(木) 00:39:38ID:1iy2rlVwlocalhost/diary/edit/y/2010/m/11/d/1 って形で入力画面(editアクション)を開くとします。
そうすると、まずこの時点でパラメータが日付にふさわしい型か
パラメータチェックする必要があると思うんですが、その処理を外部化したいんです。
↓こんな感じで(diaryコントローラ)
public function init(){
require('paramChk.func.php');//検証機能の外部化
}
public function editAction(){
$param=$this->getRequest()->getUserParam();
$checkAry = array(
array($param['y']=>array('required', 'numeric'),//パラメータyが必須かつ数値かチェック
array($param['m']=>array('required', 'numeric'),
array($param['d']=>array('required', 'numeric')
);
paramChk($checkAry);
}
このとき、実際の検証用外部関数paramChk()の中でエラー(不正の発見)があったとき、
エラーコントローラにリダイレクトさせたいんですが
function paramChk($ary){
//チェック処理省略
if($err) return $this->_redirect('/error/pt/paramerr');
}
とするとエラーが起きます(Using $this when not in object context in /var/www/application/inc/paramChk.func.php)
どうしたらいいんでしょうか? 検証処理は外部化しつつ検証エラーの時のリダイレクトまで実装したいです。
意見よろしくお願いします
■ このスレッドは過去ログ倉庫に格納されています