PHPエラー:Warning: Cannot modify header information
フォームの2重投稿を防ぐために、cookieで制御してみる。
⇒元々のシステムは他の人が構築したので、
私はHTML部分のカスタマイズとアップ作業のみを行なう。
すると、、
Warning: Cannot modify header information – headers already sent by…
というエラーが!!
でも、スクリプトは間違っていないはず。(私が作成していないから!)
調べた結果、正しい文字コードで保存されていないことが原因でした。
文字コードは「UTF-8」。BOMがはきだされてはダメらしい。
<PHPマニュアルより>
setcookie() は、その他のヘッダ情報と共に 送信するクッキーを定義します。 ほかのヘッダ情報と同様に、 クッキーは、スクリプトによる他のあらゆる出力よりも前に 送信される必要があります(これはHTTPプロトコルの制約です)。 <html>や<head>タグはもちろん 空白も含め、あらゆる出力よりも前にこの関数をコールするようにしなければなりません。(以下略)
PHPマニュアル setcookie()
BOMがはきだされる⇒先頭に余分なものが入ってしまうらしい。
<結論>
UTF-8nで保存する
参考記事
http://oubakiou.blog8.fc2.com/blog-entry-69.html
トラックバックURL:http://r77.jp/blog/2009/10/1022/trackback/








2009年10月15日 @ 3:48 PM
hatch さんからのコメント
はじめまして。
いつも楽しく読ませてもらっています。
スクリプトは間違っていないはず。
(私が作成していないから!)
っていうのがおもしろかったです。
自分もデザイナーですが、PHPはさっぱりわかりませんです、はい。
2009年11月20日 @ 8:34 PM
reikow さんからのコメント
こんにちは!しばらく更新が止まってしまいました。
PHPは、見よう見まねでチョコチョコ変更するだけで精一杯です。
ところで、ミスチルツアー行ったんですね!私も行きました。
DVDも買いました。ドームツアーも行きます。エソラいいですよねー。