繁体   English   中英

session_start()抛出错误

[英]session_start() throwing error

我目前使用PHP收到以下错误:

Warning: session_start() [function.session-start]: 
Cannot send session cache limiter - headers already sent 
(output started at /home/paramireze/madisonh3.com/calendar.php:1)
in /home/paramireze/madisonh3.com/includes/common.php on line 5

每个文件的第一行是include common.php ,并在第一行代码common.php是“如果(isset($ _ SESSION)!){在session_start();}`。

此错误仅发生在calendar.phpnews.php (如果您访问http://www.madisonh3.com/calendar.php,则可以看到错误)。 我的所有文件都是相同的,包括common.php 之后,我将编写html标记并从那里包含标题。

我已经阅读了有关session_start其他讨论,所有人都说要确保在session_start之前不输出任何html。 另外,如果我做错了什么,为什么它只发生在我的10个文件中的两个?

session_start()命令之前输出数据有一些东西。 由于会话cookie设置为HTTP标头,因此必须在任何HTML输出之前。

错误Cannot send session cookie - headers already sent by (output started at /home/paramireze/madisonh3.com/calendar.php:1) in /home/paramireze/madisonh3.com/includes/common.php on line 5之前输出。

因此,请查看您的代码,并在session_start()之前找到可以回显数据的内容。

你应该注意你的编辑器不存储utf-8 BOM头 ,这个头有时候存储在文件的开头有3个字节

编辑器将隐藏它们,因此如果您不确定您的文件是否包含这些字符,您可以使用非解释编辑器(十六进制编辑器)或这个精彩的在线W3C检查器 BOM标头被PHP视为输出,这可能导致讨厌Cannot modify header information - headers already sent错误。

检查您的URL显示,确实存在这样的BOM表头。 查看编辑器(IDE)的设置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM