- ベストアンサー
phpでcookieのセット
こんばんは。 php4 apache でプログラミングしています。 cookieをセットしようとして、マニュアル通り setcookie ("TestCookie", "Test Value"); と記述すると、 Warning: Cannot add header information - headers already sent by (output started at /url~ といったエラーが出ます。 原因に心当たりのある方はアドバイス宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
それはPHPの問題でも、cookieの問題でもありません。 httpの仕様です。 httpのheaderについて検索してみてください。
その他の回答 (1)
- kirin_f
- ベストアンサー率51% (44/85)
回答No.1
cookieは、一番最初に出力させるようにしなくてはいけないんです。 setcookieの前にechoとかprintでなにか出力してませんか? setcookieを最初にもっていけばうまくいくと思いますよ。
質問者
お礼
こんにちは。ありがとうございます。 返事が遅れて申し訳ありませんでした。 #2の方にアドバイスいただいたようにhttp headerの仕様を調べてみましたところ、やはりcookieは本文の前に送信しなければいけないようですね。 基本的なところでつまづいてしまいました。情けないです。 しかし、まだ「ではどうしたらいいの?」ってところが解決していませんので、新しくまた質問させていただきますので、もし気が向いたらまた色々教えてください。どうもありがとうございました。
お礼
こんにちは。ありがとうございます。 お礼が遅くなってしまって申し訳ありません。 教えていただいたとおり、http headerについて調べてみました。 基本的なところがわかっていなかったようです。 今までcookieなんて何も気にせず使っていたものですから・・・。 で、ではどうやってcookieをセットするか? というところがまだ解決できていませんので、新しく質問してまたお力を借りたいと思います。 気がむきましたらまた色々教えてください。 どうもありがとうございました。