2012-04-28 76 views
0

我正在开发w网站。在这里我已经包括一个thumnail页面。它在我的本地主机上运行良好。但是,当我上传它给我一个错误看到避免输出缓冲错误serevr

Warning: Cannot modify header information - headers already sent by (output started at /mydomain/demo1/admin/thumbnail.php:50) in /mydomain/demo1/admin/act-addVehicle.php on line 191 

我的代码

if(move_uploaded_file ($tmpName,$path.$actual_image_name)){ 
         $succ=1; 
         chmod("$add",0777); 
         $imgSucc=1; 
          //strt image thumbnail 
         include("./thumbnail.php"); 
         // ends 
         }else{ echo "Failed to upload file Contact Site admin to fix the problem"; 
         exit;} 

我如何避免这个错误 有没有在PHP INI任何设置?

有谁知道吗? 请回复

+0

您在尝试更改标题之前已发送内容。 – 2012-04-28 07:41:24

+0

请发布与问题相关的代码。你可以通过编辑你自己的问题并在问题的主体中添加它。它会帮助我们帮助你。的 – 2012-04-28 07:41:35

+0

可能重复[头已经通过PHP发送(http://stackoverflow.com/questions/8028957/headers-already-sent-by-php),你需要的一切知道这里:http://stackoverflow.com/ a/8028987/398242首先,我没有看到你在任何地方使用输出缓冲;你没有真正提供足够的信息来帮助你的案例。 – 2012-04-28 08:03:50

回答

1

没有看到缩略图。 PHP的代码,它很难说究竟发生了什么,但基本上线191之前ACT-addVehicle.php其输出的东西是设置另一个头。

最有可能在脚本的末尾一个空格。在?>之后检查也许线50,如果之后。

您可以将include('thumbnail.php')包装到ob_start()和ob_end_clean()中,但在设置新标头之前不会解决输出的基本问题。

1

这种错误通常来自于在您的文件之后有一个关闭php标签,后面跟着一些空格。在执行脚本之前,该空白区会发送到浏览器,然后执行“header()”函数。

举例来说,我不会感到惊讶,你的thumbnail.php或ACT-addverhicule.php以“?>”标记结束,并且有后,一些白色的空间。

作为一个很好的做法,它始终是更好地去除所有关闭PHP的标签(以下简称“?>”),在文件的结尾,以避免这些类型的问题...