Foros del Web » Programando para Internet » PHP »

Warning Cannot modify header information

Estas en el tema de Warning Cannot modify header information en el foro de PHP en Foros del Web. Buenas a todos: Ante todo muchas gracias por vuestra atención. He estado mirando por muchos mensajes de este tipo dentro y fuera del foro, y ...
  #1 (permalink)  
Antiguo 22/03/2010, 10:27
 
Fecha de Ingreso: abril-2009
Ubicación: Vitoria
Mensajes: 160
Antigüedad: 15 años
Puntos: 1
Exclamación Warning Cannot modify header information

Buenas a todos:

Ante todo muchas gracias por vuestra atención.
He estado mirando por muchos mensajes de este tipo dentro y fuera del foro, y no he conseguido hayar la solución:

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\WebTV\registro.php:15) in C:\xampp\htdocs\WebTV\registro.php on line 28

Se trata de un sistema de registro de usuarios, utilizo el email como campo para diferenciar a los usuarios y a la hora de que un usuario se registre, si introduce un email que ya esta en la base de datos mustra un mensaje:

registro.php
Empezariamos a contar en la linea 15:
Código PHP:
<?php
        
include("includes/conection.php");
        
$link=conection();
        
        
$email $_POST['email'];
        
        
$result mysql_query("SELECT US_NOMBRE,US_EMAIL FROM usuario WHERE US_EMAIL = '$email'") or die (mysql_error());
        if((
mysql_num_rows($result)) != 0)
        {
            
?>
            <script language="javascript">
                alert("Existe un usuario con el mismo email.");
            </script>
            <?php
                        header
("Location:./prueba-registro-usuario.php");
            exit();
        }
        else
        {
?>
He probado tambien utilizando las "meta" en html para redireccionar pero se me añade un campo vacio en la base de datos y no mola.

Creo que el problema reside en que cuando el usuario pulsa el boton "Enviar" le mando a registro.php y aqui es donde se conecta y se comprueba la existencia del email.

Si alguno puede darme una solución o guiarme algo mejor a la hora de hacer las pruebas... estaré muy agradecido!

Un saludo a todos
  #2 (permalink)  
Antiguo 22/03/2010, 10:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Warning Cannot modify header information

El problema, si puedes ver es que NO puedes enviar con header() después de enviar texto al cliente.

En este caso tu estas enviando una salida en Javascript y luego haces un header(), esto te causa el warning. Para solucionarlo tienes que hacer una de dos: o quitas el alert de javascript o redireccionas usando javascript.

Saludos.
  #3 (permalink)  
Antiguo 22/03/2010, 11:07
 
Fecha de Ingreso: abril-2009
Ubicación: Vitoria
Mensajes: 160
Antigüedad: 15 años
Puntos: 1
Respuesta: Warning Cannot modify header information

Gracias GatorV, he optado por redireccionar con javascript.
Muchas gracias por responder tan rápido!
Un saludo...

Etiquetas: header, modify, warning
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:30.