原因分析:在PHP里Cookie的使用是有一些限制的。
1、使用setcookie必须在标签之前
2、使用setcookie之前,不可以使用echo输入内容
3、直到网页被加载完后,cookie才会出现
4、setcookie必须放到任何资料输出浏览器前,才送出
解决方案:
1,文件开头写上ob_start();
ob_start :打开输出缓冲区
函数格式:void ob_start(void)
说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。为了输出缓冲区的内容,可以使用ob_end_flush()或flush()输出缓冲区的内容。
2,php.ini 把 output_buffering 设为 on 重起apache
3,部分情况是多出现在UTF编码的文件。因为在一般的文本编辑器(记事本),尤其是微软的各种产品,在编辑完保存完后,总是会自动在最前面缀上一个BOM,在windows 托管的服务器上没问题,而在UNIX服务器上就会产生问题。比如在代码中用到session或header时,因前有看不见的BOM
你可以用写字板打开,光标移到最前面,先退行,在按delete键去掉刚才加的那一空行。在保存的时候,写字板总是回保存为UTF-8编码的格式;同样你可以在dreamweaver的专业编辑器中已定为UTF-8格式进行编辑。
相关日志
- 2010-02-23 -- 无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装的错误解决办法
在设置phpmyadmin时,经常会遇到“”的错误,网上查了很多资料发现,这个办法比较靠谱
1.确保您的php安装正确。phpinfo可以正常预览
2.打开您的php.ini配置文件session... - 2009-06-11 -- 原来PHP也有命令行模式(CLI)
从 PHP 4.3.0开始,CLI/CGI 二进制执行文件的文件名、位置和是否存在会根据 PHP 在系统上的安装而不同。在默认情况下,当运行 make 时,CGI 和 CLI 都会被编译并且分别放置在... - 2008-10-05 -- 如何跨主域实现SSO
不同主域的SSO的实现,好多都是用一些特殊的软件系统来支撑的。同一主域(即:同一个一级域名下的所有子域名)下包括多服务器共享SESSION数据实现的方法很多。
SESSION也是需要COOKIE... - 2010-05-18 -- 如何解决PHP Error: Permission denied in Unknown on line 0
今天在UCHOME的时候,自己新建了个文件,并上传到新的服务器,可是却莫名其妙的出现这样的出错:
PHP Warning: Unknown(/*****/***.php): failed to op... - 2010-05-14 -- 如何找回Windows显示桌面图标快捷方式
本人是个糊涂人,经常把xp的显示桌面的快捷方式,然而用的有thinkpad,键盘没有windows键,这就郁闷了,没得替换。找了很多发现了制作Windows XP显示桌面图标快捷方式。
步骤如下:
... - 2010-05-13 -- Windows蓝屏代码含义和解决方案
1、0x0000000A:IRQL_NOT_LESS_OR_EQUAL
◆错误分析:主要是由问题的驱动程序、有缺陷或不兼容的硬件与软件造成的. 从技术角度讲. 表明在内核模式中存在以太高的进程内部...
技术研究 关键字(Tags): already,
BOM,
COOKIE,
header,
ob_end_flush,
ob_start,
PHP,
SESSION,
setcookie,
Warning,
Windows
如果你觉得这篇文章不错,你可以 给我留个回复或订阅它。无论如何,谢谢你的支持!
评论
还没有评论。
发表评论