ホームページ  >  記事  >  バックエンド開発  >  setcookie中ヘッダー情報を変更できません - ヘッダーはすでにs_PHP教程

setcookie中ヘッダー情報を変更できません - ヘッダーはすでにs_PHP教程

WBOY
WBOYオリジナル
2016-07-21 15:10:52966ブラウズ

コードをコピーします コードは次のとおりです:

setcookie("username","bu",time()+3600);
echo "aaaaa";
?>

运行有警告Warning: Cannot modify header information - headers already sent by 

下面是别人建议

方法 1:
PHP での Cookie の使用にはいくつかの制限があります。
1. setcookie は タグの前にある必要があります
2. setcookie を使用する前に、コンテンツを入力するために echo を使用することはできません
3. Web ページが読み込まれるまで、Cookie は表示されません。 4 、setcookie は送信する前にデータ出力ブラウザの前に配置する必要があります
...
上記の制限により、setcookie() 関数を使用すると、「未定義のインデックス」および「ヘッダーを変更できません」という問題が発生します。 「情報 - ヘッダーが既に送信されている」などの問題を解決するには、プログラムの先頭に関数 ob_start() を追加します。出力バッファ
関数形式: void ob_start(void)

説明: バッファがアクティブ化されると、PHP プログラムからのファイル以外のヘッダー情報はすべて送信されず、内部バッファに保存されます。バッファの内容を出力するには、ob_end_flush() または flash() を使用してバッファの内容を出力します。

方法 2:


警告の解決策: ヘッダー情報を変更できません - ヘッダーは既に送信されています...数日前、テストのために php 写真投稿システムをインストールしたところ、警告: というエラーが発生することがわかりました。報告されたヘッダー情報は変更できません - ヘッダーはすでに ......
によって送信されています。今日、再度 openads をインストールしましたが、この問題は依然として発生します。怒り。長い間オンラインで検索した後、誰かがファイルの先頭で

ob_start();
を書くと失敗すると言いました。
後で php.ini を開き、output_buffering を on に設定します。 Appache を再起動します。OK。これが解決策のようです。

特記事項: (これを読んだ直後に問題が解決しました)
utf-8 エンコーディングを使用している場合は、必ず UTF-8 の BOM を削除してください。これはすべて utf- のせいです。 8 エンコーディング ファイルには BOM が含まれていますが、PHP4 および 5 は BOM をサポートしていません。 BOM を削除するには、Notepad++ で開いて変換します。 (これを読んで問題が解決しました)

自分で解決してください

PHP4 および 5 は、utf-8 でエンコードされたファイルの BOM をサポートしません

ファイルに BOM が含まれている場合、Cookie またはセッションの設定時にエラーが報告されます。
ファイルの BOM を素早く簡単に削除する方法。
非常に優れた無料ソフトウェアである Notepad++ を使用することをお勧めします。
1. デフォルトで、[設定] -> [環境設定] -> [新規] で新しい UTF-8 (BOM なし) を作成できます。
2. 別の場所で新しく作成されたphpファイルの場合、エンコードをUTF-8(BOMなし)に変換する方法をnotpad++で開きます
フォーマット --> UTF-8 (BOM なし)
これでトランスコードできます。
http://www.bkjia.com/PHPjc/327005.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/327005.html技術記事次のようにコードをコピーします: ?php setcookie("username","bu",time()+3600); echo "aaaaa"; 実行時に警告が表示されます: ヘッダー情報は変更できません - ヘッダーは既に送信されています。以下は...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。