Php 标题问题,尽管之前未发送标题

Php 标题问题,尽管之前未发送标题,php,Php,我知道在发送它们之前,屏幕上不应该有任何打印语句。我的代码中没有这样做。他们没有回音语句,也没有打印语句 警告无法修改标题信息-标题已由第21行/home/oxfordmo/public_html/php/user/header.php:18)中的/home/oxfordmo/public_html/php/user/index.php发送 它在头文件中显示错误 索引文件行21 标题(“location:user.php?f=“.base64_encode($_SESSION['firstnam

我知道在发送它们之前,屏幕上不应该有任何打印语句。我的代码中没有这样做。他们没有回音语句,也没有打印语句

警告无法修改标题信息-标题已由第21行/home/oxfordmo/public_html/php/user/header.php:18)中的/home/oxfordmo/public_html/php/user/index.php发送

它在头文件中显示错误

索引文件行21

标题(“location:user.php?f=“.base64_encode($_SESSION['firstname'])。”&l=“.base64_encode($_SESSION['lastname']))

和头文件15-20

<div id="wrapperheader">
  <div id="menu">
   <ul>
    <li class="active"><a href="">Company</a></li>
    <li><a href="">Services</a></li>
    <li><a href="">Gallery</a></li>


确保在标题之前没有输出-这包括但不限于PHP块之外的HTML输出,包括您可能执行的输出。还要检查
include
s中是否有不可见的空格,在它们关闭后
?>
(许多人正是出于这个确切的原因才将其删除)。

在发送标题之前,您似乎包括了header.php文件,也就是说,您有如下内容:

include( header.php );
...
header( 'Location: ...' );

如果是这种情况,则必须在包含文件之前将header命令移动到。在发送标题之前,不允许输出页面内容的任何内容。这包括在PHP标记之外输出“原始”HTML(
…?>是的,第18行有HTML输出。在创建HTML输出之后,您不能使用
header
函数。就是这么简单。

没有任何类型的空格,但还没有工作。
header('location:')行之后,执行
die()
是的,第18行有HTML输出。创建HTML输出后,您不能使用
header
功能。感谢您提到的相同问题。由于我希望在我的每个页面中包含头文件,因此我必须在每个页面中创建div类菜单。我不能单独使用它,也不能全部包含。也许您应该打开一个新任务对此,我不认为这与您有疑问的错误消息有什么关系。