这不是重复,我的问题是关于br标记,而不是'标题已发送'错误。
我有一个PHP重定向设置来重定向未登录到登录页面的用户,这是创建“无法修改标头信息”错误,因为由于某种原因,在源代码的第1行上(在浏览器中查看源代码时)但我不明白为什么!
index.php的源代码如下:
<br />
<b>Warning</b>: Cannot modify header information - headers already sent by (output started at /home/webuser/public_html/beta/admin/index.php:1) in
<b>/home/webuser/public_html/beta/admin/inc/header.php</b> on line <b>3</b>
<br />
index.php的代码如下所示,我删除了除页面下方内容以外的所有内容,以确保该页面上没有任何内容。:
<?
include "inc/header.php";
?>
header.php的代码如下所示,我删除了除页面下方内容以外的所有内容,以确保该页面上没有任何内容。:
<?
if ($login == 0) {
header ("location:login?error[]=You must login to view this page!");
}
?>
正如你所看到的,br标签不在我的header.php或index.php的任何地方,所以我不知道它来自哪里。甚至更奇怪,header.php包含在我的其他页面中,他们没有遇到问题。此外,一旦登录,问题就不存在了,并且br标签不存在。
有什么想法吗?
编辑:我现在已经从index.php页面中删除了所有内容,并且只有以下内容:
<?php header("location:login?error[]=You must login to view this page!"); ?>
问题仍然存在。不知道为什么。创建了一个新页面并完成了相同的操作,没有发生问题。
编辑2:问题现已解决。不知道它是什么,我复制了index.php的内容,删除了文件,创建了一个新的index.php,将内容粘贴回来并且没有发生错误。确实非常奇怪。
答案 0 :(得分:0)
尝试删除和编码,或html或上面的任何空格
<?php
if ($login == 0) {
header ("location:login?error[]=You must login to view this page!");
}
?>