2012-02-09 20 views
0

は私のベースコントローラは、以下があります。Kohanaの3:セット/取得フラッシュメッセージとセッション

protected $session; 

public function before() 
{ 
    parent::before(); 

    $this->session = Session::instance(); 
} 

ユーザー名/パスワードがされていない場合、ユーザは、私はユーザーをリダイレクトログインしようとしているとき、私はこのコントローラを拡張し、

ただし、$ errorパラメータは返されると常にNULLです。これは、セッションがベースコントローラ経由でリセットされるためですか?これを避けるために私は何をすべきですか?

答えて

0

なぜ簡単なことが複雑になるのですか?私はセッション変数をリセットし、回避策があるかどうかである理由を理解することを好むだろうがエラー処理のためのセッションを使用する必要が、おかげで@martino

if($this->request->method() == Request::POST) 
{ 
    $username = $this->request->post('username'); 
    $password = $this->request->post('password'); 

    if(strlen($username) == 0) 
    { 
     $error = 'Please enter a Username'; 
    } 

    if(strlen($password) == 0) 
    { 
     $error = 'Please enter a Password'; 
    } 
} 

$view = View::factory('user/login') 
    ->bind('title', $title) 
    ->bind('error', $error); 
echo $view->render(); 
+0

...ありません。 – xylar

+1

2つのリダイレクトだけを削除してみて、何が起こったのかを確認してください。 – matino

+0

ありがとうございました。別のコントローラへのリダイレクトがあった場合、セッション値を保持するために何を変更する必要がありますか? – xylar

関連する問題