WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:クッキーが有効にならない(><)

0:[投稿] きよちゃん [2006/04/21 01:21 ] [環境:ie6 Apache]

PHPをテキストを買って勉強しています。
Windows2000,最新のApache、PHPをダウンロードしました。
クッキー情報を取得するスクリプトをテキスト通りに書き、、IE6でクッキーを全て受け取ると設定を変えました。
スクリプトは以下です。
<cookie2.php>
<html>
<head>
<title>クッキーでデータを記録する</title>
</head>
<body>
<form method="POST" action="cookie_rec2.php">
E-Mailアドレス:
<input type="text" name="email" size="30" maxlength="50"
    value="<?php print($_COOKIE['email']); ?>" />
    <input type="submit" value="送信" />
</form>
</body>
</html>

<cookie_rec2.php>
<html>
<head>
<title>クッキーでデータを記録する</title>
</head>
<body>
<?php setcookie("email",$_POST['email'],time()+60*60*24*90); ?>

クッキー"email"を保存しました。

</body>
</html>

IEでieHTTPHeaderを表示し、ヘッダー情報にset_cookieがあるか確認していますが、私が書いたスクリプトでは見あたりません。
しかし、ネットサーフィンをしていると、set_cookieがみつかりmす。
何が原因でしょうか・・・行き詰まったまま進みません。
どうかよろしくお願い致します。


1:[回答] Iwa [2006/04/21 01:42 ][URL]

ヘッダーというのはHTML等、中身のデータを送る前に付けるものです。
HTMLを出力している途中でCookieを発行しようとしているようですが、既にHTMLを出力し始めているということはヘッダーの出力は終わっているのでそれはできなくて当たり前です。


2:[質問] きよちゃん [2006/04/21 21:07 ]

回答ありがとうございます。
しかし、内容が理解できないのです。すいません。
HTML内でcookieの発行はPHPできないのでしょうか?

このテキストでのヘッダ情報の意味は、リクエストヘッダ・レスポンスヘッダなどが含まれています。
テキストは上記のスクリプトで、Set-cookieというヘッダがieHTTPHeaderで確認することができます。
またこのスクリプトを動作させると、Warningがでます。
以下です。
Warning: Cannot modify header information - headers already sent by (output started at C:\Program Files\Apache Group\Apache2\htdocs\php10\day02-3\cookie_rec2.php:6) in C:\Program Files\Apache Group\Apache2\htdocs\php10\day02-3\cookie_rec2.php on line 6

また別のスクリプトでセッションをを使用しましたが、これもうまくいきませんでした。
よろしくお願い致します。

回答(必須): 状態:

お名前(必須):

URL:




[戻る]