Foros del Web » Programando para Internet » PHP »

ayuda generando thumbnails

Estas en el tema de ayuda generando thumbnails en el foro de PHP en Foros del Web. Hola estoy intentando usar una clase para generar thumbnails con php pero no lo consigo . El error que me tira es este cada vez ...
  #1 (permalink)  
Antiguo 02/02/2009, 13:53
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 5 meses
Puntos: 8
ayuda generando thumbnails

Hola estoy intentando usar una clase para generar thumbnails con php pero no lo consigo . El error que me tira es este cada vez que intento generar un thumbnail a partir de un archivo ya subido correctamente al sevidor:

El código que uso para crear la instancia (el thumbnail) es este:

Código HTML:
//Los nombres de las imágenes se guardan en variables de sesión pero eso es otra historia y he comprobado que llegan correctamente
 for ($i=0;$i<count($_SESSION['ImName']);$i++)  {
         //creamos los thumbnails de cada imagen
		 if ($_SESSION['ImName']!=NULL) {
	      $srcFile="../uploads/".$_SESSION['ImName'][$i];
$destPath="../uploads/thumbs/".$_SESSION['ImName'][$i];
echo $srcFile."<br/>";
   
    $oResize = new ImageResize($source);
$oResize->resizeWidthHeight(80, 80);
$oResize->save($destPath);
               }
	       }
	  
	    }
Código HTML:
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /opt/lampp/htdocs/yuju/fns/imageresize.class.php on line 78
../uploads/

Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /opt/lampp/htdocs/yujur/fns/imageresize.class.php on line 78

Warning: imagepng() [function.imagepng]: Unable to open '../uploads/' for writing: Is a directory in /opt/lampp/htdocs/yujur/fns/imageresize.class.php on line 86
../uploads/

Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /opt/lampp/htdocs/yujur/fns/imageresize.class.php on line 78

Warning: imagepng() [function.imagepng]: Unable to open '../uploads/' for writing: Is a directory in /opt/lampp/htdocs/yujur/fns/imageresize.class.php on line 86
He comprobado que la ruta que la paso donde está el archivo es la correcta , si hago un echo a $srcFile me sale esto
echo $srcFile;
../uploads/8155140.jpg

He comprobado también los permisos de el directorio donde quiero que los thumbs se suban y tiene 777.

Gracias de antemano
  #2 (permalink)  
Antiguo 02/02/2009, 14:12
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: ayuda generando thumbnails

Hola Dundee,

Al parecer y viendo tu código creo pasas las fotos por una sesión, esto es incorrecto ya que si lees el Manual de PHP explicitamente dice que al finalizar la ejecución del script termina este borra todas las imagenes temporales, por lo que para resolver tu problema debes de copiar la imagen a un directorio, y entonces guardar esa ruta en la sesión, no la del temporal.

Saludos
  #3 (permalink)  
Antiguo 02/02/2009, 15:04
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 5 meses
Puntos: 8
Respuesta: ayuda generando thumbnails

Cita:
Iniciado por GatorV Ver Mensaje
Hola Dundee,

Al parecer y viendo tu código creo pasas las fotos por una sesión, esto es incorrecto ya que si lees el Manual de PHP explicitamente dice que al finalizar la ejecución del script termina este borra todas las imagenes temporales, por lo que para resolver tu problema debes de copiar la imagen a un directorio, y entonces guardar esa ruta en la sesión, no la del temporal. La sesión lo único que guarda es el nombre de cada imagen , la ruta la formo juntando ../uploads/$_SESSION['img'][$i] (o como se llame la variable de sesión que ahora no la puedo ver).

Saludos
Humm , creo que eso no es correcto o q yo no me he explicado bien.
La ruta que le paso es de una imagen que ya está subida al servidor , pero NO a la carpeta tmp (la termporal) sino a una llamada uploads que no es accesible a traves de root www/ sino que está por encima de este, pero insisto que la imagen ya se ha subido antes y existe. No se si yo no entiendo bien el tema.

Un saludo y gracias por tu ayuda como siempre
  #4 (permalink)  
Antiguo 02/02/2009, 16:55
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: ayuda generando thumbnails

Prueba ejecutar este código:
Código php:
Ver original
  1. //Los nombres de las imágenes se guardan en variables de sesión pero eso es otra historia y he comprobado que llegan correctamente
  2. for ($i=0;$i<count($_SESSION['ImName']);$i++)  {
  3.     //creamos los thumbnails de cada imagen
  4.     if ($_SESSION['ImName']!=NULL) {
  5.         $srcFile="../uploads/".$_SESSION['ImName'][$i];
  6.         $destPath="../uploads/thumbs/".$_SESSION['ImName'][$i];
  7.         echo $srcFile."<br/>";
  8.        
  9.         if(!file_exists($srcFile)) {
  10.             echo "No existe el archivo!";
  11.         } else {  
  12.             $oResize = new ImageResize($source);
  13.             $oResize->resizeWidthHeight(80, 80);
  14.             $oResize->save($destPath);
  15.         }
  16.     }
  17. }

Saludos
  #5 (permalink)  
Antiguo 02/02/2009, 18:22
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años, 7 meses
Puntos: 33
Respuesta: ayuda generando thumbnails

Dundee:

Si el codigo que te ha presentado el amigo GatorV, al correrlo,
NO sale el echo "No Existe El Archivo";
Entonces revisa el phpinfo() o el php.ini
a ver si tienes activada la libreria GD.
O Prueba con una imagen que No este fuera del root
ya que si el error continua significa que hay problemas
con la libreria GD.

Saludos
Franco
  #6 (permalink)  
Antiguo 03/02/2009, 01:59
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 5 meses
Puntos: 8
Respuesta: ayuda generando thumbnails

Bueno me sale lo mismo:

Acabo de comprobar si tengo GD (daba por hecho que si porque creo que con php5 viene por defecto) y la respuesta es SI:

<? phpinfo(); ?>
GD Support :enable
GD Version :bundled (2.0.34 compatible)
FreeType Support enabled
y mas cosas ...todas enable

Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /opt/lampp/htdocs/yupi/fns/imageresize.class.php on line 78
../uploads/1658651.jpg

Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /opt/lampp/htdocs/yupi/fns/imageresize.class.php on line 78

Un saludo

Última edición por Dundee; 03/02/2009 a las 02:13
  #7 (permalink)  
Antiguo 03/02/2009, 10:59
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años, 7 meses
Puntos: 33
Respuesta: ayuda generando thumbnails

Dundeee:

Entonces es obvio que el problema esta en la clase
que utilizas.
Pareciera que las varibles que utiliza la funcion
imagecopyresampled() no estan conpletas o no
son las adecuadas.

Saludos
Franco
  #8 (permalink)  
Antiguo 03/02/2009, 11:44
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: ayuda generando thumbnails

Exacto en ese caso por alguna razón la clase que usas no esta recibiendo correctamente el path a la imagen y por eso te sale el error.

Saludos
  #9 (permalink)  
Antiguo 03/02/2009, 14:36
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 5 meses
Puntos: 8
Respuesta: ayuda generando thumbnails

Vale gracias a todos , jejeje me he cargado el sistema operativo con tantos cambios de chmod que algo he hecho mal y no hay narices de recuperarlo así que cuando termine de instalar todo de nuevo veremos si soluciono este tema , hasta pronto y gracias.
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 12:55.