Кохана: неопределенный индекс, когда его нет - PullRequest
3 голосов
/ 07 июня 2011

Я использую Kohana 3.1 и получаю очень странную ошибку.Кажется, что обработчик Kohana 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'];

var_dump из $ post:

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

Ответы [ 2 ]

1 голос
/ 07 июня 2011

Хотя я считаю, что это PEBKAC, вы можете использовать $this->request->post('jid') в качестве получателя для этой переменной.

Может быть, вы просто пропускаете фактическую проверку POST ?

0 голосов
/ 07 июня 2011

Иногда проблема не так очевидна, как ошибка. Страница 302-перенаправляла (без публикации) на себя после завершения действия, когда выполняется проверка записи. Фактически, первоначальная публикация прошла правильно, но будьте осторожны с вызовом метода на $this, когда вы хотите использовать другой объект (по крайней мере, когда $this является контроллером). Мне до сих пор неясно, почему Кохана не разбилась.

...