2016-11-29 12 views
-1

最近、サーバソフトウェアをMySQL 5.6とPHP 5.6(PHP.iniの設定をデフォルトに戻すように見える)にアップグレードしました。PHPでsetcookie()が動作しない

突然、クッキーはWebサイトで動作しなくなりましたが、インストールされたpHpbbフォーラムのクッキーはまだ機能しています。しかし私ができる限りデバッグしたところ、次のコードと全く同じ2つのページがあり、1つはCookieを生成し、もう1つはそうではなく、すでにsetcookieの行に送られたヘッダーのエラーを取得します。

ページ1:

$exp = time() + 604800; 
setcookie("uid6", "6678", "$exp"); 
print_r($_COOKIE); 

ページ2:

$exp = time() + 604800; 
setcookie("uid7", "6678", "$exp"); 
print_r($_COOKIE); 

ノーの結果を関数内引用符とパラメータを変更しようとしました。

1つのファイルがBOMでUTF-8だったと言った人から、このWebサイトで1つの投稿を見ました。私は同じパーミッションと識別可能な違いがないこれらの個々のページのエンコーディングを設定していないので、これを特定する方法はわかりません。

+1

"代わりにすでにsetcookieの行に送信されているヘッダーのエラーを取得します。 ---なぜ、エラーが投げられたのか、なぜあなたは研究していないのですか? – zerkms

+1

エラーメッセージは、最初の出力がどこで起こったかを示します。 – CBroe

+0

アップグレードによって設定がデフォルトにリセットされた場合は、適切なアップグレードを行う代わりにファイルを置き換えた可能性があります。 – arkascha

答えて

0

(OPのために掲示される)

これは更新後の特異性です。出力バッファリングを4096に設定すると、CBroeの回答のおかげで問題は解決しました。

関連する問題