• ベストアンサー

header関数が使えない

<html> <head> </head> <body> <?php header("Location: http://www.php.net/"); exit; ?> </body> </html> のように、単にheader関数を試したら Warning: Cannot add header information - headers already sent by (output started at /home/***/index.php:5) in /home/***/index.php on line 6 のようなエラーがでました。header関数が使えないようなのですが、これはどこの設定を直せば解決できるのでしょうか? 普通に、phpinfo.phpは表示できるので、phpそのものは使えています。 Apache/1.3.26 PHP 4.2.2

質問者が選んだベストアンサー

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.2

PHP のコードが間違ってます。 <?php header("Location: http://www.php.net/"); ?> <html> <head> </head> <body> </body> </html> マニュアル(→参考URL)に書いてあります。 PHP> 覚えておいて頂きたいのは、header() 関数は、通 常の HTML タグまたは PHP からの出力にかかわらず、 PHP> すべての実際の出 力の前にコールする必要があることです。

参考URL:
http://www.php.net/manual/ja/function.header.php
kyura
質問者

お礼

早速の回答ありがとうございます。マニュアルは目を通していたのですが、全然気がつきませんでした…恥ずかしいです(^^;

その他の回答 (1)

  • Mizyu
  • ベストアンサー率41% (245/593)
回答No.1

header関数は、PHPがレスポンスを生成する前でないとエラーになってしまいます。 この場合、 ************** <html> <head> </head> <body> ************* ここまでのレスポンスが先に生成されているため、エラーになってしまっています。

kyura
質問者

お礼

早速の回答ありがとうございます。どうしてエラーになるのか理解できました。

関連するQ&A