2013-06-02 68 views
-1

我真的很想知道为什么发生这种警告。我想,我的代码是好的,但它表示,已经派出头(输出开始...../request.php:1)上线...../request.php 2警告:session_start()[function.session-start]:无法发送会话缓存限制器?

这里是我的代码

<?php 
session_start(); 
if(!isset($_SESSION['login'])){ 
session_destroy(); 
header("Location:login.php"); 
exit(); 
} 
include_once("action.php"); 
?> 

请帮我,谢谢提前

+0

你有什么确切的错误?看起来你发送了一些东西到浏览器之前() – bksi

+3

在你的'<?php'标签之前检查任何**空格**,如果它们存在,请删除它们。 – 2013-06-02 03:31:01

+1

如果您的文件有签名,您应该删除BOM签名。旧的服务器将无法识别BOM签名并将其作为输出发送。 –

回答

-1

尝试在session_start()

+0

之后?之前... – Musa

+1

这不是一个真正的解决方案。这可能只是一个黑客。 – 2013-06-02 03:40:39

+0

它也不起作用 – Sovat

0

试着在你页面的顶部放置此之后把ob_start():

<?php ob_start(); ?> 

然后在页面位置的底部这行代码:

<?php ob_flush(); ?> 
+0

至少,将你的'<?'改为'<?php'! – 2013-06-02 04:06:38

+0

它仍然没有工作:( – Sovat

0

尝试使用

<?php ob_get_clean(); ?> 

的在session_start前。这样,您可以放心,在调用输出缓冲区敏感函数(如session_start()和/或header())之前不会打印任何空白。

+0

我已经使用它,但它不工作。 – Sovat

+0

你可以告诉我整个文件的脚本? – Aldee

相关问题