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

PHP
PHP入门指导:如何学习PHP?
PHP环境配置IIS5.0+PHP5.23+MYSQL5+phpMyAdmin
PHP学习入门的一些基础知识(菜鸟必看)
详解用phpmyadmin建立MYSQL数据库的过程
PHP简单演示如何使用模板制作静态页面
PHP程序员都应该会用的五个工具
php+fastcgi遭遇No input file specified.错误
PHP开发者都应该知道10个项目
Apache设置PHP环境方法
安全问题:编写安全的PHP代码
PHP初学:发散思维学习PHP
Windows XP下PHP+MySQL环境搭建
PHP和IIS 7.0的FastCGI模块
httpd.conf设置一个IP两个域名的方法
PHP基础:认识PHP
隐蔽木马,插入到PHP文件中
PHP实例:避免重复提交和检查数据来路
php教程:php设计模式之前言
php教程:php设计模式之编程惯用法
php教程:php设计模式介绍之值对象模式

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 197 ::
收藏到网摘: 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();这个函?。这样就可以解决了。