Mi encabezado no se redirigirá. Después de que se ejecuta el código, está en blanco y no ejecuta la redirección. No hay espacios en blanco en el archivo. El código funciona completamente correctamente, aparte de la redirección.Cabecera de PHP que no redirige
Este código se invoca mediante un envío de formulario.
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");
}
}
¿Después de qué llamada 'header()' falla? Además, ** siempre ** llame a 'exit();' justo después de hacer 'header (" Location: ");' para detener la ejecución del script actual! ' –
¿Hay algo antes del código publicado en el * .php -¿archivo? – ChrFin
Ingrese las llamadas 'exit()' después de cada uno de los encabezados de su encabezado y vea si aún falla. Si no es así, entonces es posible que un error más adelante en la página aún se esté ejecutando y fallando. –