【发布时间】:2023-03-14 13:46:01
【问题描述】:
我有这个错误,我已经尝试修复它很长时间了。它似乎是凭空出现的,因为它所在的页面昨天运行良好。
错误是:
警告:无法修改标头信息 - 标头已由 /var/www/dev.racommerce.com/cart 中的(输出开始于 /var/www/dev.racommerce.com/includes/header.php:97)发送.php 在第 44 行
header.php 文件第 97 行的代码是:
<?for($i = 0; $i < $count; $i++)
{?>
<li><a class="dropDown" href="<?="http://" . $_SERVER['HTTP_HOST'];?>/products.php?cat=<?=$result[$i]['categoryID']?>"><?=$result[$i]['categoryName']?></a></li>
<?}?>
cart.php 文件第 44 行的代码是:
header("location: cart.php");
我一直在研究其他答案(例如 How to fix "Headers already sent" error in PHP)的解决方案,但我很难理解它们或在我的代码中实现它们。
有人可以帮我解决这个问题吗?
【问题讨论】:
-
在你发送header之前已经有输出了。标题信息应始终在任何 html 输出之前发送。
-
在修改标题之前不能向浏览器输出任何内容。
-
@Rikesh 我自己也提到过这个问题
-
@Kevlar - 我知道很抱歉,但你不会找到比这更好的答案。它包含与此错误相关的所有内容。
标签: php html http-headers location