Foros del Web » Programando para Internet » PHP »

Crear thumbnail

Estas en el tema de Crear thumbnail en el foro de PHP en Foros del Web. Estoy haciendo un sitio web y necesito crear miniaturas (thumbnails) de algunas fotografías que el usuario sube al servidor y en los testeos estoy teniendo ...
  #1 (permalink)  
Antiguo 26/07/2009, 21:05
Avatar de Adolfiten  
Fecha de Ingreso: enero-2008
Ubicación: Frente a mi monitor...
Mensajes: 572
Antigüedad: 16 años, 10 meses
Puntos: 7
Crear thumbnail

Estoy haciendo un sitio web y necesito crear miniaturas (thumbnails) de algunas fotografías que el usuario sube al servidor y en los testeos estoy teniendo problemas. Les dejo el código a ver si alguien me sabe ayudar.

Código PHP:
<?php

$original 
imagecreatefromjpeg("house2.jpg");
$thumb imagecreatetruecolor(150,150); // Lo haremos de un tamaño 150x150

$ancho imagesx($original);
$alto imagesy($original);
imagecopyresampled($thumb,$original,0,0,0,0,150,150,$ancho,$alto);

$nombresalida "miniatura.jpg";

imagejpeg($thumb,$nombresalida,90); // 90 es la calidad de compresión

?>

<img src="<?php echo $nombresalida ?>" alt="Imagen no encontrada" />
El error que me tira con imágenes medias grandes es:
Código ERROR:
Ver original
  1. Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 6000 bytes) in ... on line 47
  2.  
  3. o
  4.  
  5. Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 6400 bytes) in ... on line 47

Es un problema de memoria, pero no tengo ni idea de cómo solucionarlo. Además, estoy trabajando en un servidor montado en mi terminal, desconozco la cantidad de memoria que permite el servicio de hosting para este tipo de tareas.

¿Existe alguna manera de crear miniaturas sin importar el tamaño de la fotografía? ¿cómo puedo solucionar este problema?

Les agradezco de antemano, siempre obtengo alguna respuesta que me sirve.
  #2 (permalink)  
Antiguo 27/07/2009, 02:53
Avatar de blekia  
Fecha de Ingreso: julio-2009
Mensajes: 204
Antigüedad: 15 años, 4 meses
Puntos: 6
Respuesta: Crear thumbnail

puedes intentar modificar el limite de memoria impuesto a través de htaccess, claro que esto no significa que te permitan hacerlo (puede no funcionar):

php_value memory_limit 16M

salu2


Cita:
Iniciado por Adolfiten Ver Mensaje
Estoy haciendo un sitio web y necesito crear miniaturas (thumbnails) de algunas fotografías que el usuario sube al servidor y en los testeos estoy teniendo problemas. Les dejo el código a ver si alguien me sabe ayudar.

Código PHP:
<?php
 
$original 
imagecreatefromjpeg("house2.jpg");
$thumb imagecreatetruecolor(150,150); // Lo haremos de un tamaño 150x150
 
$ancho imagesx($original);
$alto imagesy($original);
imagecopyresampled($thumb,$original,0,0,0,0,150,150,$ancho,$alto);
 
$nombresalida "miniatura.jpg";
 
imagejpeg($thumb,$nombresalida,90); // 90 es la calidad de compresión
 
?>
 
<img src="<?php echo $nombresalida ?>" alt="Imagen no encontrada" />
El error que me tira con imágenes medias grandes es:
Código ERROR:
Ver original
  1. Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 6000 bytes) in ... on line 47
  2.  
  3. o
  4.  
  5. Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 6400 bytes) in ... on line 47

Es un problema de memoria, pero no tengo ni idea de cómo solucionarlo. Además, estoy trabajando en un servidor montado en mi terminal, desconozco la cantidad de memoria que permite el servicio de hosting para este tipo de tareas.

¿Existe alguna manera de crear miniaturas sin importar el tamaño de la fotografía? ¿cómo puedo solucionar este problema?

Les agradezco de antemano, siempre obtengo alguna respuesta que me sirve.
  #3 (permalink)  
Antiguo 27/07/2009, 14:40
Avatar de Adolfiten  
Fecha de Ingreso: enero-2008
Ubicación: Frente a mi monitor...
Mensajes: 572
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: Crear thumbnail

Intentaremos, te agradezco tu tiempo...

Saludos.
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 13:00.