Error: cannot modify header information – headers already sent by

warning cannot modify header information – headers already sent by

Es un error muy común que sucede cuando programamos en PHP. La solución a él es eliminar las lineas en blanco, texto no incluido en los tags de php () ó echos antes del envío de headers.

Para poner un ejemplo sobre esto, imaginemos un código PHP en donde deben enviar “header(“location: http://www.codenb.com”); ” esta linea, debe ir antes que cualquier otra linea (inclusive espacios en blanco fuera de los tags de php) para que no genere dicho error.

Muchas veces, inclusive en los documentos .php nos queda algo así:

1-
2- <?
3- header(“location: http://www.codenb.com”);
4- ?>

Fijense que en la primer linea, tenemos un espacio en blanco, el mismo se encuentra FUERA de los tags PHP por ende, se procesará como código HTML simple. Causando el error antes descripto.

Nuevamente, la función “header” debe ser enviada antes de cualquier otro caracter, espacio ó echo.

¿por qué?
Porque una vez enviado un simple caracter (como el espacio) el explorador ya recibió todos los headers, es decir que no podemos enviarle más headers al mismo y por dicho motivo, PHP falla al ejecutar la función.


bookmark bookmark bookmark bookmark bookmark bookmark bookmark bookmark bookmark bookmark bookmark bookmark
tabs-top

3 comentario to “Error: cannot modify header information – headers already sent by”

  1. joha says:

    gracias gracias! habia leido un monton de soluciones a este problema pero esta fue la unica que funciono…. gracias!

  2. Akira16 says:

    Hace 3 dias que estoy dando vueltas con esto del header, gracias a esto se que lo que quiero hacer es imposible en el estado que esta.

  3. Akira16 says:

    Y muchas gracias!.

Deja un comentario