警告:无法修改标头信息-标头已由(

时间:2019-03-30 13:42:07

标签: php mysql

我想将变量传递给页面,但无法修改页眉...总是很麻烦

if(isset($_POST['send']))
{
$sender = $_SESSION['Email'];
$receiver = $_POST['email'];
$message = $_POST['textmessages'];
$date = date("Y-m-d h:i:sa");

$q = 'INSERT INTO `tblmessage`(`id`,`sender_name`,`receiver_name`,`message_text`,`date_time`,`userid`)
       VALUES("","'.$sender.'","'.$receiver.'","'.$message.'","'.$date.'","'.$user_id.'")';
$r = mysqli_query($con, $q);

if($r)
{
          header("location.href='messages.php?user=".$receiver);
}   
else
{
    echo $q;
}

}

我尝试将用户转到页面,但是:

  

输出从第38行的C:\ xampp \ htdocs \ MBPH(Beta)\ newmessage.php中的C:\ xampp \ htdocs \ MBPH(Beta)\ messages.php:79)开始

总是弹出,那第38行是

'header("location.href='messages.php?user=".$receiver);'

2 个答案:

答案 0 :(得分:0)

您可以在ob_end_flush()函数之前添加header()。它将清除当前的输出缓冲区,并应发送您的header()

参考:ob_end_flush()文档

答案 1 :(得分:0)

您可以尝试使用此代码

ob_start();
Your output here
ob_get_contents();