3

Kohana 3.1を使用していますが、非常に奇妙なエラーが発生します。コハナPOSTハンドラーは、インデックスがない場合、未定義のインデックスがあると考えているようです。

コントローラクラスの内部:

$post = $this->request->post();
var_dump(isset($post['jid'])); //true
$jid = $post['jid']; //Undefined Index error.

実際に使用すれば$post['jid']問題なく動作しますが、より便利な変数に割り当てられないのは面倒です。誰もがこれを引き起こす原因を知っていますか?

ErrorException [ Notice ]: Undefined index: jid
84       $jid = $post['jid'];

$ postのvar_dump:

array(4) { 
    ["jid"]   => string(1) "7" 
    ["topic"] => string(5) "Test1"
    ["entry"] => string(14) "CHECK ONE TWO" 
    ["enter"] => string(4) "POST" 
}
4

2 に答える 2

1

これはPEBKACだと思いますが$this->request->post('jid')、その変数のゲッターとして使用できます。

たぶん、実際のP​​OSTチェックをスキップしているだけですか?

于 2011-06-07T08:22:14.310 に答える
0

問題がエラーほど明白でない場合があります。ページは302でした-投稿チェックが行われるアクションを完了した後、それ自体にリダイレクト(投稿なし)しました。実際、最初の投稿は適切に実行されまし$thisたが、別のオブジェクトを使用する場合(少なくとも$thisコントローラーの場合)にメソッドを呼び出す場合は注意が必要です。コハナが墜落しなかった理由はまだわかりません。

于 2011-06-07T13:49:04.740 に答える