2011-08-04 2 views
1

CUserIdentityクラスの標準のYii認証システムを使用しています。私はログインして、ユーザに数日間覚えておくように指示します。これには、durationパラメータをYii::app()->user->loginに設定します。システムの他の部分でユーザーがまだログインしていると思っていても、Yii :: app() - > userがnullなのはなぜですか?

サイトをしばらく使用してから、おそらく1日後に戻ってくるでしょう(期間が設定されていないとセッションがタイムアウトすると思います)。そして、Yii::app()->userオブジェクトにアクセスしようとすると、内部サーバーエラーが発生します。

これを引き起こす可能性のあるアイデアはありますか?ユーザーが実際にログアウトした場合、少なくともログインページにリダイレクトされると思います。

答えて

1

私はあなたのコードで問題を知らないが、単に参照の、

のYii ::アプリ() - >ユーザがログインしていない場合でも、nullではないデフォルトでは、それはCWebUserの目的です。 、設定ファイルで変更されていない場合

ユーザがログインしていない場合、Yii :: app() - > user-> isGuestがtrueに設定されています。

関連する問題