【PHP】PEAR Part2 ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
758:nobodyさん 07/03/01 12:37:31 >それにフレームワーク固有のコードを書いていたら汎用性が全く無くなってしまう。 フレームワークをなんだと思ってるんだ? 759:nobodyさん 07/03/01 15:51:00 DBからMDB2に移ろうとしているんですが、 MDB2って、なんかDBに比べて不便になってる 気がするんですが、気のせいでしょうか? insertやupdateの手順がまんどくさくなってるよな。。。 760:nobodyさん 07/03/08 12:27:01 Html_QuickFormでprocess()を2回使用しようとするとエラーになります。 Fatal error: Cannot redeclare callback1() (previously declared in c:\path\file.php:100) 以下のようにしたい場合はどうすればいいでしょうか? if($objForm->validate()){ $objForm->process('callback1'); $objForm->process('callback2'); } 761:nobodyさん 07/03/08 12:31:50 単にcallback1()を2回定義しちゃってるだけじゃないの? 762:760 07/03/08 14:00:23 >761 仰る通りでした。ありがとうございました。 補足としては、実はと言っては怒られそうではありますが、 クラス内にprocess()を呼び出すメソッドを作り、その中にコールバック関数を定義しておりました。 このような感じ。 class Form extends HTML_QuickForm{ function actProcess($callbackFuncName){ function callbackFunc1(){...} function callbackFunc2(){...} return $this->process($callbackFuncName, false); } } ですので、actProcess()を2回目に呼び出すと、 callbackFunc1(),callbackFunc2()がもう一度定義されエラーになっていた模様です。 調べたところ、コールバック関数をprocess()呼び出しのメソッド外に置き、 process()の第一引数をarray(&$this, 'callbackFuncName')のようにすると良い事が分かりました。 以下のような感じ。 class Form extends HTML_QuickForm{ function actProcess($callbackFuncName) { return $this->process(array(&$this, $callbackFuncName), false); } function callbackFunc1(){...} function callbackFunc2(){...} }
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4358日前に更新/213 KB
担当:undef