1

セッションaoをチェックする機能を追加したい。のように1つの関数を作成checkSessionしましたapp_controller。これで、アプリケーションが初めてロードされるときに、admin / users/login ページにリダイレクトされます。

このログインフォームで、正しいデータを挿入すると、アプリケーションのホームページにリダイレクトされます。ログインに成功した後、ユーザーadminのプレフィックスを付けて、localhost / appName / adminapplication.soにリダイレクトしたいので、次のコードを記述しました。

$this->redirect(Router::url("/admin",true));

ローカルでは正常に動作しますが、サーバーにアップロードすると、次のようなエラーが表示されます

Warning (2): Cannot modify header information - headers already sent by (output started at /Applications/MAMP/htdocs/pms/app/controllers/users_controller.php:192)

192行のコードは

$this->redirect(Router::url("/admin",true));

その代替オプションを提案してもらえますか?

4

1 に答える 1

2

「警告 (2): ヘッダー情報を変更できません - ヘッダーは既に送信されています (出力は /Applications/MAMP/htdocs/pms/app/controllers/users_controller.php:192 で開始されました)」

「ヘッダーは既に送信されました」というメッセージは、何かを印刷してから、リダイレクトに使用される Location ヘッダーなどのヘッダーを設定しようとすると発生します。$this->redirect メソッドを呼び出す前に、ブラウザーに何も送信 (印刷) していないことを確認してください。

于 2012-06-11T22:19:38.540 に答える