Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/05/2013, 08:16
Avatar de Dani_1270
Dani_1270
 
Fecha de Ingreso: noviembre-2009
Ubicación: España
Mensajes: 51
Antigüedad: 14 años, 5 meses
Puntos: 1
Pregunta Error de header al mandar una imagen para error 404

Buenas tardes,

Mi problema es que estoy intentando que cuando ocurra un error 404 al intentar abrir una imagen que no existe en el servidor, que se mande una imagen indicándolo. El script es el siguiente:

Código PHP:
if(strstr($_SERVER['REQUEST_URI'],"png") || strstr($_SERVER['REQUEST_URI'],"gif") || strstr($_SERVER['REQUEST_URI'],"jpg")){
header("Content-type: image/png"); /* AQUI ESTA EL ERROR */
$imagen=imagecreatefrompng("404errorImagen.png");
die(
imagepng($imagen));

La cuestión es que como Apache ya manda el error 404 de forma independiente, cuando intento ejecutar ese script salta el típico error de header y luego imprime la imagen, pero al no escribirme el header de image/png lo imprime como texto. Y el error, es el siguiente:

Código:
Warning: Cannot modify header information - headers already sent by (output started at /homepages/x/htdocs/error/404.php:1) in /homepages/x/htdocs/error/404.php on line 1
Entonces mi pregunta es ¿cómo puedo solucionar esto?
No me vale la respuesta de enviar la imagen como html con <img src=... porque metiendo html dentro de un <img> no va a salir nada.

Última edición por Dani_1270; 28/05/2013 a las 08:18 Razón: Puntualización