3

My Usersコントローラーでcakephp 2.0を使用しています。ログインアクションでSESSIONを設定しています

$this->Session->write('Users',$value);

セッションが設定されると、homeという名前の次のアクションにリダイレクトされます。ログインアクションでは、値をログに記録して確認しましたが、リダイレクト後、ホームアクションで次を使用してセッション値を読み取りました

$this->log($this->Session->read('Users'));

何も表示されません。しかし、ローカルサーバーでは正常に動作しています。

4

3 に答える 3

2

サーバーで次のことを確認してください。

  • セッションが有効かどうか、php.ini ファイルを確認してください。
  • session.cookie.domain がサーバーに設定されているかどうか。
  • php ファイルに空白行が?>あるかどうかを確認し、削除してください。

そして、試してみてください。

于 2012-08-10T05:24:46.033 に答える
1

私が理解したのは、セッション値をログファイルに書き込んでいるということです。値は画面に表示されませんが、代わりにファイルでこの値を見つけることができapp/tmp/logs/error.logます。

このリンクは、概念を理解するのに役立ちます。

セッション値を表示するには、pr($this->Session->read('Users'));

それがうまくいかなかったかどうか尋ねてください。

于 2012-08-10T04:43:36.573 に答える
0

debug toolkitセッション値を確認するには、ユーザー cakephpを使用します。これを使用すると、次のような多くのことを監視できます

  • リクエスト履歴。
  • セッション。
  • SQL ログ。
  • タイマー。
  • ログ(質問で使用しているもの)。
  • ビューに設定された変数。

https://github.com/cakephp/debug_kit/ Cake のバージョンごとに異なるバージョンのデバッグキットが利用可能です。

于 2012-08-10T04:49:30.463 に答える