header前面有输出,要么去掉前面的输出,要么是用缓冲

解决方案 »

  1.   

    你的header前有输出,所以出错
      

  2.   

    <?php的标记后面有空格也会引起这种提示,把前面的空格去掉
      

  3.   

    我详细的代码是:
    <HTML>
    <HEAD>
    <TITLE>最简单的交互程序</TITLE>
    </HEAD>
    <BODY>
    <FORM ACTION="6-2.PHP" METHOD="post">
    填写您的姓名:
    <INPUT TYPE="text" NAME="YourName"><BR>
    书籍单价(元): 
    <INPUT TYPE="text" NAME="CostOfOneBook"><BR>
    选购书籍数目(本):
    <INPUT TYPE="text" NAME="NumbersOfDaysBuying"><BR>
    <INPUT TYPE="submit" value="计算消费总金额">
    </FORM>
    <?php
    header('Location: index.php');
    ?> 
    </BODY>
    </HTML>
    可是显示的结果是:
    填写您的姓名: 
    书籍单价(元): 
    选购书籍数目(本): 
     Warning: Cannot modify header information - headers already sent by (output started at G:\site\6-1.PHP:15) in G:\site\6-1.PHP on line 16就是header出了问题
      

  4.   

    首先,把你的
    <?php
    header('Location: index.php');
    ?>
    放到最顶端。如果还不行,检查<?php这个标记后面是否有空格之类的。 
      

  5.   

    <?php这个标记后面有半角空格是没有关系的。有全角空格会编译错误。所以编辑器最好把全角空格显示出来。