Foros del Web » Programando para Internet » PHP »

Problema con librería gd

Estas en el tema de Problema con librería gd en el foro de PHP en Foros del Web. Hola Después de que una aplicación no me funcionara correctamente, he creado un pequeño script de prueba, para descartar cosas. El script es el siguiente: ...
  #1 (permalink)  
Antiguo 15/04/2008, 14:41
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 2 meses
Puntos: 0
Problema con librería gd

Hola

Después de que una aplicación no me funcionara correctamente, he creado un pequeño script de prueba, para descartar cosas. El script es el siguiente:

Código:
<?php
header("Content-type: image/jpeg");

$archivo = $_SERVER['DOCUMENT_ROOT'] . "/8.jpg";
$imagen = imagecreatefromjpeg($archivo);
imagejpeg($imagen, "8_thumb.jpg");
imagedestroy($imagen);
?>
El problema está en que no me crea la imagen 8_thumb.jpg.
8.jpg es una imagen ya alojada en el servidor. He probado con un path relativo. La librería gd está activada y la versión de esta en el servidor es de las últimas. La carpeta destino tiene permisos. En el servidor local me funciona correctamente. El caso es que si creo una imagen sin hacerlo desde un jpg me funciona bien, es decir, con el siguiente script:

Código:
$prueba = imagecreate(150,100);
imagejpeg($prueba, "prueba.jpg");
imagedestroy($prueba);
Así que el fallo tiene que ver con la imagen de partida, preo no sé qué puede ser. Os agradecería una ayudita.

Un saludo
  #2 (permalink)  
Antiguo 15/04/2008, 14:45
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
Re: Problema con librería gd

Prueba hacer esto:
Código PHP:
<?php
header
("Content-type: image/jpeg");

$archivo $_SERVER['DOCUMENT_ROOT'] . "/8.jpg";
$imagen imagecreatefromjpeg($archivo);
if(!
$imagen) {
         die(
"No se puede leer $archivo" );
}
imagejpeg($imagen"8_thumb.jpg");
imagedestroy($imagen);
?>
Saludos.
  #3 (permalink)  
Antiguo 15/04/2008, 14:47
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Problema con librería gd

No muestra el error.
  #4 (permalink)  
Antiguo 15/04/2008, 14:48
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
Re: Problema con librería gd

¿Como estas llamando al archivo? vía un tag <img>? o ¿directo desde la barra de dirección?.

Saludos.
  #5 (permalink)  
Antiguo 15/04/2008, 14:54
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Problema con librería gd

Cita:
Iniciado por GatorV Ver Mensaje
¿Como estas llamando al archivo? vía un tag <img>? o ¿directo desde la barra de dirección?.

Saludos.
He probado de las 2 formas y no funciona.
  #6 (permalink)  
Antiguo 15/04/2008, 15:04
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
Re: Problema con librería gd

Prueba así:
Código PHP:
<?php
function LoadJpeg($imgname)
{
    
$im = @imagecreatefromjpeg($imgname); /* Attempt to open */
    
if (!$im) { /* See if it failed */
        
$im  imagecreatetruecolor(15030); /* Create a black image */
        
$bgc imagecolorallocate($im255255255);
        
$tc  imagecolorallocate($im000);
        
imagefilledrectangle($im0015030$bgc);
        
/* Output an errmsg */
        
imagestring($im155"Error loading $imgname"$tc);
    }
    return 
$im;
}
header("Content-Type: image/jpeg");
$archivo $_SERVER['DOCUMENT_ROOT'] . "/8.jpg";
$imagen LoadJpeg($archivo);
imagejpeg($imagen"8_thumb.jpg");
imagedestroy($imagen);
?>
Saludos.
  #7 (permalink)  
Antiguo 15/04/2008, 15:08
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Problema con librería gd

Me sigue ocurriendo lo mismo: si lo ejecuto con un <img> me muestra el icono de la imagen partida y si lo hago desde url me muestra la misma url.
  #8 (permalink)  
Antiguo 15/04/2008, 15:50
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
Re: Problema con librería gd

Mmmm a ver prueba esto:
Código PHP:
<?php
if( !function_exists"imagecreatefromjpeg" ) ) {
       die( 
"No existe la funcion imagecreatefromjpeg" );
}
?>
  #9 (permalink)  
Antiguo 16/04/2008, 06:30
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Problema con librería gd

Supuestamente si la función no existiese ya me mostraría un error el propio php, no? Aún así he probado el script y no muestra el error.
  #10 (permalink)  
Antiguo 16/04/2008, 08:41
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
Re: Problema con librería gd

A ver ultima prueba:
Código PHP:
<?php

$archivo 
$_SERVER['DOCUMENT_ROOT'] . "/8.jpg";
if( !
file_exists$archivo ) ) {
      die( 
"No existe $archivo" );
}
$imagen imagecreatefromjpeg($archivo);
if(!
$imagen) {
         die(
"No se puede leer $archivo" );
}
header("Content-type: image/jpeg");
imagejpeg($imagen"8_thumb.jpg");
imagedestroy($imagen);
?>
Saludos.
  #11 (permalink)  
Antiguo 16/04/2008, 08:43
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
Re: Problema con librería gd

Ahora meditando más sobre tu script, es normal que no te muestre salida, ya que si tu a imagejpeg le pasas el segundo parámetro, entonces guarda la imagen y no la muestra.

Prueba esto:
Código PHP:
<?php

$archivo 
$_SERVER['DOCUMENT_ROOT'] . "/8.jpg";
if( !
file_exists$archivo ) ) {
      die( 
"No existe $archivo" );
}
$imagen imagecreatefromjpeg($archivo);
if(!
$imagen) {
         die(
"No se puede leer $archivo" );
}
header("Content-type: image/jpeg");
imagejpeg($imagen);
imagedestroy($imagen);
?>
Saludos.
  #12 (permalink)  
Antiguo 16/04/2008, 08:54
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Problema con librería gd

Cita:
Iniciado por GatorV Ver Mensaje
Ahora meditando más sobre tu script, es normal que no te muestre salida, ya que si tu a imagejpeg le pasas el segundo parámetro, entonces guarda la imagen y no la muestra.
En realidad ese no es el problema, porque ni me la muestra ni me la guarda.

He probado los 2 últimos scripts y sigue sin funcionar pero tampoco muestra los errores
  #13 (permalink)  
Antiguo 16/04/2008, 09:11
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
Re: Problema con librería gd

¿Lo haz probado leerlo directo desde el explorador? (usando http://host/script.php)

Saludos.
  #14 (permalink)  
Antiguo 16/04/2008, 12:49
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Problema con librería gd

Sí, lo digo por ahí arriba y tampoco...
  #15 (permalink)  
Antiguo 16/04/2008, 12:52
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
Re: Problema con librería gd

Entonces puede que el problema sea tu librería GD, contacta a tu hosting para que te den el soporte necesario y poder reparar el problema.

Saludos.
  #16 (permalink)  
Antiguo 17/04/2008, 06:43
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Problema con librería gd

No me actualizan la librería. Esta es su respuesta:

Cita:
Buenas noches;

No podemos actualizar estás librerias, pues vienen por defecto de plesk y se actualizan con su actualizador automatico.
  #17 (permalink)  
Antiguo 17/04/2008, 09:18
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
Re: Problema con librería gd

Entonces no podrás arreglar el problema, más que cambiando de hosting.

Saludos.
  #18 (permalink)  
Antiguo 17/04/2008, 12:44
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Problema con librería gd

Qué remedio... Pues nada muchas gracias por la ayuda. Un saludo
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 09:25.