为什么免费托管不允许创建cookie?

时间:2015-03-05 04:20:08

标签: php cookies

这是我的代码:

<?php
$value = 'something from somewhere';
setcookie("TestCookie", $value);
?>

我收到错误消息如下:

  

警告:无法修改标头信息 - 已发送的标头   (输出从/home/nairsoft/public_html/page1.php:2开始)   第4行/home/nairsoft/public_html/page1.php

我正在使用免费的虚拟主机服务器。

3 个答案:

答案 0 :(得分:1)

标头在服务器响应正文之前的请求开头发送。看起来您的代码已经发送了标题,因此您无法修改它们。正如Afaan所建议的那样,请确保在打开php标记之前不要输出任何内容。

一般情况下,在发送任何响应之前,最好在请求开始时处理您需要的所有内容。

答案 1 :(得分:1)

通过将代码保存为ANSI而不是UTF-8

来解决上述问题

答案 2 :(得分:0)

Cookie是标题的一部分,标题必须在 之前发送到浏览器的任何实际输出。在输出任何内容之前,请确保设置Cookie和其他标头。它与您拥有的任何类型的托管包没有任何关系。