-2

ログアウトしようとすると少し問題が発生します

    <?php
session_start();
session_unset();

session_destroy();
header("location:../");
?>

これは私のログアウトコードであり、それがエラーです:

警告: session_start() [function.session-start]: セッション キャッシュ リミッターを送信できません - ヘッダーは既に送信されています (出力は /home1/jota/public_html/adm/logout.php:1 で開始されています) /home1/jota/public_html/adm 2 行目の /logout.php

警告: ヘッダー情報を変更できません - 6 行目の /home1/jota/public_html/adm/logout.php の (/home1/jota/public_html/adm/logout.php:1 で開始された出力) によって既に送信されたヘッダー

4

2 に答える 2

0

<?php開始タグの前に空白があるようです。それを削除すると、その前に文字がなくなり、正常に動作するはずです。

ob_start()または、スクリプトの開始時に呼び出すかoutput_buffering、php.ini ファイルの変数を 1 に変更して、出力キャッシュを有効にすることもできます (これにより、サーバー上のすべての PHP ファイルに対して有効になることに注意してください。代わりに、そうしたい場合があります)。コードがあるディレクトリの .htaccess ファイルでそれを行います。)

于 2013-09-15T17:25:26.310 に答える
0

@Wesley Murch がコメントで述べたように、php ドキュメントのように、ページの先頭に空白があります。

Cookie ベースのセッションを使用するには、ブラウザーに何かを出力する前に session_start() を呼び出す必要があります。

ここに空白を出力しています。

于 2013-09-15T17:28:32.450 に答える