Foros del Web » Programando para Internet » PHP »

Obtener miniatura de una imagen subida a servidor:

Estas en el tema de Obtener miniatura de una imagen subida a servidor: en el foro de PHP en Foros del Web. Hola foreros: Al subir una imagen al servidor mediante un formulario, además de obtener valores como el nombre del archivo, sus dimensiones, etc., me gustaría ...
  #1 (permalink)  
Antiguo 20/03/2008, 05:48
Avatar de iontxu  
Fecha de Ingreso: marzo-2008
Mensajes: 65
Antigüedad: 16 años, 1 mes
Puntos: 7
Obtener miniatura de una imagen subida a servidor:

Hola foreros:

Al subir una imagen al servidor mediante un formulario, además de obtener valores como el nombre del archivo, sus dimensiones, etc., me gustaría saber si se puede obtener la imagen miniatura de previsualizacion que lleva asociada. No todas las imagenes tienen una 'vista previa' por así llamarla, pero otras muchas sí.

Un saludo!
  #2 (permalink)  
Antiguo 20/03/2008, 09:02
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Re: Obtener miniatura de una imagen subida a servidor:

Bueno, una imagen de previsualización la puedes hacer tú mismo usando las liberías GD. Este es un código que hace eso, yo creo que tú eres lo suficientemente inteligente como para adapatarlo a tus necesidades.

Código PHP:
// Se obtienen las nuevas dimensiones
    
list($width$height$tip) = getimagesize($filename);
    if (
$h) {
       
$newheight $h;
       
$newwidth round(($width/$height)*$newheight);
    }  else if (
$w) {
       
$newwidth $w;
       
$newheight round(($height/$width)*$newwidth);
    }
    
// Cargar la imagen
    
$thumb imagecreatetruecolor($newwidth$newheight);
    if (
$tip == 1$source imagecreatefromgif($filename);
    elseif (
$tip == 2$source imagecreatefromjpeg($filename);
    elseif (
$tip == 3$source imagecreatefrompng($filename);

    
// Redimensionar
    
imagecopyresampled($thumb$source0000$newwidth$newheight$width$height);

    
// Mostrar la nueva imagen
    
imagejpeg($thumb$archivo); 
  #3 (permalink)  
Antiguo 20/03/2008, 09:57
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: Obtener miniatura de una imagen subida a servidor:

Hola, perdon por seguir el hilo, pero es que el tema me interesa.

Es un buen codigo, Eljavista, pero es que yo no soy un entendido de php, solo que no se me da mal y aprendo rapido, siempre me gustaron los PC y ahora empiezo a programar y es un reto grande pero interesante.

Mira por lo mque he conseguido entender del codigo es que aqui, tomas la imagen ya subida con la veriable $filename,

Código PHP:
list($width$height$tip) = getimagesize($filename); 

pero lo que no entiendo bien es que luego a la hora de mostar la imagen asi,
no se de donde sacar la variable $archivo, pues en el resto del script veo nque usas siempre $filename

Código PHP:
// Mostrar la nueva imagen 
    
imagejpeg($thumb$archivo);  // 
de donde recojo $archivo???

Gracias. igual es simple la pregunta, pero es que no lo veo.
  #4 (permalink)  
Antiguo 20/03/2008, 10:09
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Re: Obtener miniatura de una imagen subida a servidor:

No lo recoges, lo defines tu mismo, con el valor que quieras.
  #5 (permalink)  
Antiguo 20/03/2008, 10:15
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: Obtener miniatura de una imagen subida a servidor:

pero que tengo que pasarle a $archivo?? una imagen??

Pero la imagen no es $filename

Lo siento pero es que no lo pillo.

Gracias.
  #6 (permalink)  
Antiguo 20/03/2008, 10:24
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Re: Obtener miniatura de una imagen subida a servidor:

Ok, mira, es solo una ruta del archivo. El archivo en el cual quieres que se guarde la imagen que has generado. Nada más.
  #7 (permalink)  
Antiguo 20/03/2008, 10:30
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: Obtener miniatura de una imagen subida a servidor:

Gracias Eljavista, ahora si lo cogi, ya me entere.
  #8 (permalink)  
Antiguo 20/03/2008, 11:31
Avatar de iontxu  
Fecha de Ingreso: marzo-2008
Mensajes: 65
Antigüedad: 16 años, 1 mes
Puntos: 7
Re: Obtener miniatura de una imagen subida a servidor:

Muchas gracias por las respuestas.

Me parece buena la solución que me ofreceis, pero lo cierto es que no tengo mucha idea de cómo utilizar la librería GD. Yo tengo una, pero no sé cómo interactuar con ella.
Si me pudieras explicar un poco o redirigirme a un post donde hablen de ello te lo agradecería un montón.

Saludos!
  #9 (permalink)  
Antiguo 20/03/2008, 16:05
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Re: Obtener miniatura de una imagen subida a servidor:

No hace falta hacer el trabajo que ya otros han hecho, buscate un manual en internet sobre las liberías GD, ahi te van a explicar mejor de lo que yo te explicaría. Una vez que lo hayas leído y tengas dudas, pues me avisas. Es mejor siempre hacer las cosas sabiendo. Tal vez uds. se pregunten como yo y los otros que respondemos sabemos las respuestas tan rápidas? Es que sabemos, hemos leído los manuales primeramente, la mayoría de problemas que se plantean en este foro se originan en el desconocimiento y la otra parte, en la falta de experiencia. Bien, solo hace falta informarse bien para solucionar los problemas de manera sencilla.
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 23:13.