• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

session_start();报错问题

php 搞代码 3年前 (2022-01-23) 13次浏览 已收录 0个评论
文章目录[隐藏]

test.php文件内容
<?php
include(‘site_test.php’);
?>

site_test.php文件内容
<?php
session_start();
header(‘Content-Type: text/html; charset=utf-8’);
?>

当打开test.php时报以下错误,弄了很久也弄不明白,不知为什么?

Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at /home/cybertry/public_html/idearforyou.com/site_test.php:1) in /home/cybertry/public_html/idearforyou.com/site_test.php on line 2

Warning: Cannot modify header information – headers already sent by (output started at /home/cybertry/public_html/idearforyou.com/site_test.php:1) in 9来源gaodai#ma#com搞@代~码$网搞gaodaima代码/home/cybertry/public_html/idearforyou.com/site_test.php on line 3

回复讨论(解决方案)

session_start();前面不能有输出

检查site_test.php 中<?php 前面是否有空格或空行

但现在session_start();前面没有输出啊,想不明白,
就是在包含文件里是这样,如果直接写在test.php里就没有问题。

难道session_start();不能包含在文件里吗?

site_test.php 是什么编码,如果是utf-8编码,确认没有bom头。

而且我在本机电脑测试没有问题,就是上传到服务器后才有这个问题的。

Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at /home/cybertry/public_html/idearforyou.com/site_test.php:1) in /home/cybertry/public_html/idearforyou.com/site_test.php on line 2
是说:在 site_test.php 的第二行执行 session_start(); 时,发现 site_test.php 的第一行有输出
显然在 site_test.php 的 <?php 前有空格或者是 site_test.php 文件有 BOM 头

查过了,确实是BOM头的问题,用DR另存为不包含BOM头的就正常了,谢谢大家。

看看。。。。。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:session_start();报错问题
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址