こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Cookieの設定について

PHPでCookieにデータを設定しているのですが以下のエラーメッセージが出て
正常に設定できません何か悪いのでしょうか?

よろしくお願いします。

○エラーメッセージ

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\index.php:59) in C:\xampp\htdocs\index.php on line 340

Cokkie NG

○ソースの関連部分

index.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<title>SAMPLE </title>
<meta http-equiv="Pragma" content="No-Cashe" />
<meta http-equiv="Cache-Control" content="No-Cache" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<link type="text/css" rel="stylesheet" href="search.css" />

<?php
$r = setcookie('win_width','800',time()+3600,"/");
if ($r) {
echo'<p>Cokkie OK</p>';
} else {
echo'<p>Cokkie NG</p>';
}

?>

</body>
<HEAD>
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
</HEAD>
</html>

投稿日時 - 2011-05-13 15:30:24

QNo.6734672

すぐに回答ほしいです

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

>正常に設定できません何か悪いのでしょうか?

マニュアル見ればわかりますがクッキーを設定できるのはあらゆる出力の前です。
(httpヘッダを利用しているから?)

文字だけでなく改行一つでも、極端にいえばBOM一つでもはいっても
仕様上エラーになります。
出力後クッキーを設定したいなら、javascriptでやってください。

参考URL:http://www.php.net/manual/ja/function.setcookie.php

投稿日時 - 2011-05-13 15:52:19

お礼

ありがとうございます。
そうですね、出力前ですね。
javascript でやってみます。

投稿日時 - 2011-05-13 15:59:50

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問