Foros del Web » Programando para Internet » PHP »

Problemas con GD, no muestra imagen.

Estas en el tema de Problemas con GD, no muestra imagen. en el foro de PHP en Foros del Web. Tengo el siguiente código (el link que viene en getimagesize es un ejemplo pero ahí el usuario pondría el link de una imagen). Quisiera que ...
  #1 (permalink)  
Antiguo 22/05/2014, 10:26
Avatar de iEnrique  
Fecha de Ingreso: abril-2013
Ubicación: España
Mensajes: 346
Antigüedad: 11 años
Puntos: 5
Problemas con GD, no muestra imagen.

Tengo el siguiente código (el link que viene en getimagesize es un ejemplo pero ahí el usuario pondría el link de una imagen). Quisiera que me mostrase la imagen, ¿cómo podría hacerlo?

En este caso no quiero que me muestre la imagen que ha puesto el usuario sino, que me muestre una imagen en blanco con las medias que correspondan dependiendo de la imagen que haya puesto el usuario en el input.

Código PHP:
Ver original
  1. <?php
  2. $furni = imagecreatefrompng("http://static.forosdelweb.com/customavatars/avatar498523_1.gif");
  3. $furnix = imagesx($furni);
  4. $furniy = imagesy($furni);
  5. if($furnix < 180){
  6.     if($furniy < 180){
  7.         $img = imagecreatetruecolor(200, 200);
  8.     }else{
  9.         $img = imagecreatetruecolor(200, ($furniy + 20));
  10.     }
  11. }else{
  12.     if($furniy < 180){
  13.         $img = imagecreatetruecolor(($furnix + 20), 200);
  14.     }else{
  15.         $img = imagecreatetruecolor(($furnix + 20), $furniy + 20));
  16.     }
  17. }
  18. imagefill($img, 0, 0, imagecolorallocate($img, 0, 0, 0));
  19. header('Content-type: image/png');
  20. imagepng($img);
  21. ?>

Parece un poco tonto, pero el código es más largo, solo que esa parte no me funciona. ¿Qué falla?

Muchas gracias a todos,
un saludo.

Última edición por iEnrique; 22/05/2014 a las 13:46
  #2 (permalink)  
Antiguo 23/05/2014, 08:58
Avatar de iEnrique  
Fecha de Ingreso: abril-2013
Ubicación: España
Mensajes: 346
Antigüedad: 11 años
Puntos: 5
Respuesta: Problemas con GD, no muestra imagen.

Siento el doble post, es urgente, ¿nadie sabe? Gracias.
  #3 (permalink)  
Antiguo 23/05/2014, 09:58
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Problemas con GD, no muestra imagen.

Cita:
$furni = imagecreatefrompng("http://static.forosdelweb.com/customavatars/avatar498523_1.gif");
Emmm... que te digo ?


Por otro lado aunque fuera un png ... primero deberias estar seguro (es default pero..) de que tienes habilitado allow_url_fopen para poder traerla de una url

Código PHP:
Ver original
  1. ini_set("allow_url_fopen", 1);
  2. $furni = imagecreatefrompng("http://xxxxxxxxxx.png");

Sino:

Código PHP:
Ver original 

Podrian haber mas cosas
__________________
Salu2!

Última edición por Italico76; 23/05/2014 a las 10:05
  #4 (permalink)  
Antiguo 23/05/2014, 10:53
Avatar de iEnrique  
Fecha de Ingreso: abril-2013
Ubicación: España
Mensajes: 346
Antigüedad: 11 años
Puntos: 5
Respuesta: Problemas con GD, no muestra imagen.

Cita:
Iniciado por Italico76 Ver Mensaje
Emmm... que te digo ?


Por otro lado aunque fuera un png ... primero deberias estar seguro (es default pero..) de que tienes habilitado allow_url_fopen para poder traerla de una url

Código PHP:
Ver original
  1. ini_set("allow_url_fopen", 1);
  2. $furni = imagecreatefrompng("http://xxxxxxxxxx.png");

Sino:

Código PHP:
Ver original 

Podrian haber mas cosas
Comprendo tu respuesta pero mira, te respondo.

1) Como dije arriba, la imagen no era real, la cogí rápidamente de una imagen de esta web, pero la que está normalmente es un link y sí es .png y siempre lo será por eso no pongo para que detecte la extensión jaja

2) Las partes por separado funcionan, me refiero:

Si pones esto:

Código PHP:
Ver original
  1. $furni = imagecreatefrompng("http://static.forosdelweb.com/customavatars/avatar498523_1.gif");
  2. $furnix = imagesx($furni);
  3. echo $furnix;
  4. $furniy = imagesy($furni);
  5. echo $furniy;

Funciona, me da las medidas y si pones esto:

Código PHP:
Ver original
  1. imagefill($img, 0, 0, imagecolorallocate($img, 0, 0, 0));
  2. header('Content-type: image/png');
  3. imagepng($img);

Te crea la imagen. Pero juntos no funcionan... Por lo que con eso te respondo a si está activado "allow_url_fopen", si funciona el primer código que te he puesto, es señal de que está activado... Gracias . ¿Se te ocurre alguna otra cosa? Yo sigo sin conseguirlo...

Etiquetas: muestra
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 02:15.