当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP技巧教程:setcookie语句的问题

PHP
EPSON打印机 连供墨水系统 维修有哪些保养窍门
最简便的MySql数据库备份方法MySQLdump
台湾中原大学php教程孙仲岳主讲
讲的非常不错的PHP编码规范
PHP读取目录下所有文件的代码
使用ETags减少Web应用带宽和负载
Http 1.1 Etag 与 Last-Modified提高php效率
优化使用mysql存储session的php代码
php下MYSQL limit的优化
深入解析php模板技术原理【一】
php框架Phpbean说明
Phpbean路由转发的php代码
php模板之Phpbean的目录结构
set_include_path在win和linux下的区别
php扩展ZF——Validate扩展
在PHP中使用Sockets 从Usenet中获取文件
逐步提升php框架的性能
ZF等常用php框架中存在的问题
php下使用SMTP发邮件的代码
让PHP支持页面回退的两种方法

PHP技巧教程:setcookie语句的问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 266 ::
收藏到网摘: n/a

出现的错误提示:

Warning: Cannot modify header information - headers already sent by

解决办法:

打开php_ini,搜索output_bufferfing,把前面的分号去掉,把off修改为on,或者设置一个数值。就可以了。

这类语句,造成这个原因是因为setcookie语句的问题。

cookie本身在使用上有一些限制,例如:
1.呼叫setcookie的?述必?放在标签之前
2.呼叫setcookie之前,不可使用echo
3.直到??被重新?入後,cookie才?在程式中出?
4.setcookie函数必?在任何?料?出至浏览器前,就先送出
5.……

基於上面?些限制,所以?行setcookie()函数时,常?碰到”Undefined index”、”Cannot modify header information - headers already sent by”…等??,解?”Cannot modify header information - headers already sent by”这个??的方法是在产生cookie前,先延缓?料输出至浏览器,因此,您可以在程式的最前方加上ob_start();这个函?。这样就可以解决了。