我正在使用登录脚本,在我的developmachine上它运行得很好但是当我把它移到我的webhost时它就停止了工作。
可以在此处查看代码:http://beta.yapaste.com/fm
我登录时遇到的错误是
Warning: Cannot modify header information - headers already sent by (output started at /*/*/*/*/*/*/login.php:10) in /*/*/*/*/*/*/inc/login.php on line 43
但是我找不到错误。
谢谢你的回答,Victor。
编辑:发现错误,我把yapaste上的文件包含在另一个文件中,所以php-code wasent首先。
答案 0 :(得分:1)
在login.php的第10行,会向浏览器发送一些内容(?>
和<?PHP
个标记之间的空格数),此时必须将标头发送到。当您尝试在第43行之后添加更多标题时,会触发警告。
您需要查看第10行并阻止输出发送,或使用输出缓冲 - 您以前的主机默认情况下可以启用它,这可以解释为什么它不再有效...
答案 1 :(得分:0)
使用ob_start();在你的脚本输入开始缓冲,但正如西蒙所说,可能有一些空白被发送到浏览器,因为你试图改变标题。
记住,如果之后没有任何输出代码,你可以省略结束php标签,这样可以保护你免受文件末尾的空格。
同时检查源文件的格式 - 如果它们以带有BOM的UTF-8编码,则在文件开头的编辑器中有一些起始字符无法显示。