PHP标头不重定向

nba*_*van 5 php header

我的标题不会重定向.代码执行后,它只是空白,不执行重定向.文件中没有空格.除了重定向之外,代码完全正确.

此代码由表单提交调用.

if(!empty($_POST['addSubscriber'])){
  $name = $_POST['name'];
  $email = $_POST['email'];
  if(!empty($name) && !empty($email) && eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email) != FALSE){
    $conn = connect();
    $sql = "SELECT id FROM subscribers WHERE email=?";
    if($stmt = $conn->prepare($sql)){
      $stmt->bind_param("s", $email);
      $stmt->execute();
      if($stmt->fetch()){
        header("Location: http://bcp350.org.uk/index.php?message=1");
      } else {
        $password = md5(uniqid());
        $sql2 = "INSERT INTO subscribers(name, email, password) VALUES(?, ?, '$password')";
        if($stmt2 = $conn->prepare($sql2)){
          $stmt2->bind_param("ss", $name, $email);
          $stmt2->execute();
          if($stmt2->affected_rows == 1)
            header("Location: http://bcp350.org.uk/index.php?message=1");
        }
      }
    }
  } else {
    header("Location: urlnotallowedbecauseofstackoverflowlimit");
  }
}
Run Code Online (Sandbox Code Playgroud)

Jus*_*ier 8

根据文件的PHP文档:

请记住,在发送任何实际输出之前,必须通过普通HTML标记,文件中的空行或PHP来调用header().使用include()或require(),函数或其他文件访问函数读取代码是一个非常常见的错误,并且在调用header()之前输出空格或空行.使用单个PHP/HTML文件时存在同样的问题

您确定在呼叫之前没有输出到页面的输出header吗?