无法修改标题信息

这个问题在这里已经有了答案:

  • 如何解决PHP 11中的“Headers already sent”错误
  • 参考 - 这个错误在PHP中意味着什么? 30个答案

  • 我有更简单的解决方案 - 这很简单! 只需在php源代码的最开始处添加此命令即可:

    ob_start();
    

    这将开始缓冲输出,这样在PHP脚本结束之前(或者直到您手动刷新缓冲区)才会真正输出任何内容),并且直到那个时候才会发送标题! 所以你不需要重新组织你的代码 ,只需在你的代码的一开始就添加这一行,就是这样:-)


    在发送任何东西来查看(浏览器中的文本)之前。 检查你的模型,如果id是有效的或不。 如果id无效,则重定向到您的错误页面

    header("HTTP/1.1 301 Moved Permanently");
    header( 'Location: http://examplesite.domain/errorpage' ) ;
    

    在使用php header()重定向之前,不应将内容发送到浏览器。 如果标题已经发送,您可以尝试使用JavaScript重定向。

    if( mysql_num_rows( $qselect ) === 0 )
    {
       echo "<script type='text/javascript'>window.location.href='{http://examplesite.domain/errorpage}'</script>";
       exit;
    }
    

    但我不确定javascript重定向是否对搜索引擎友好

    链接地址: http://www.djcxy.com/p/69393.html

    上一篇: Cannot modify header information

    下一篇: PHP How to fix Notice: Undefined variable: