Foros del Web » Programando para Internet » PHP »

como pedo hacer...

Estas en el tema de como pedo hacer... en el foro de PHP en Foros del Web. tengo un upload de imagenes que se guarda en una bases de datos... y tengo una carpeta (Imagenes) tengo los campos: categoria,small,big,size1,size2,reso y quiero que ...
  #1 (permalink)  
Antiguo 04/06/2005, 17:07
 
Fecha de Ingreso: noviembre-2004
Mensajes: 68
Antigüedad: 13 años
Puntos: 0
como pedo hacer...

tengo un upload de imagenes que se guarda en una bases de datos...
y tengo una carpeta (Imagenes)

tengo los campos: categoria,small,big,size1,size2,reso

y quiero que se guarde haci: Cate1,small_imagen_id,big_imagen_id,532,1258,1028x 1028

como puedo para que se achique la imagen y quede a 100x100 ... pero si es una imagen de 1028x1028... quede a 100x100, pero si es 1028x600, quede a 100,57 (algo asi seria) y se guarde el nombre haci:

small_imagen_id => imagen= nombre de la imagen - id = ID de la imagen
y se guarde el tamaño de la imagen chica en el campo "size1"

y en el campo big... que no se achique solo que tome la resolucion y la guarde en el campo "reso" y la en el campo "big" quede haci:

big_imagen_id => imagen= nombre de la imagen - id = ID de la imagen

y saque el tamaño de la imagen y se guarde en el campo "size2"

El ID de la imagen grande y de la imagen chica sea el mismo...

y que todas las imagenes se guarden en la carpeta "Imagenes"

y al hacer una consulta a la categoria "Cate1"

salga: (Esto lo se)

||IMAGEN||
532 KB

y al final salga :(Esto no)

En la categoria "Cate1" (si se hacerlo) hay 24 Imagenes (tambien se hacerlo) ocupando 2,5 MB (eso no se hacerlo, siempre que se MB y no KB)

y al apretar en la Imagen salga la imagen grande (se hacerlo)

Esta imagen tiene un tamaño de 1,2MB con una resolucion 1028x1028...

||IMAGEN||


y aqui abajo (eso no se hacerlo) que muestre la imagen chica de la imagen anterior y siguiente...

||IMAGEN CHICA ANTERIOR|| - ||IMAGEN CHICA SIGUIENTE||


que me explique o si alguien tiene algun sistema parecido que me lo faciliten

GRACIAS
  #2 (permalink)  
Antiguo 04/06/2005, 17:38
Avatar de dwaks  
Fecha de Ingreso: agosto-2002
Ubicación: Panamá
Mensajes: 962
Antigüedad: 15 años, 4 meses
Puntos: 15
Bueno deberias aprender a desarrollar imagenes con la libreria GD de php, investiga sobre ella en google y aqui en el faq existen buenas referencias.
  #3 (permalink)  
Antiguo 04/06/2005, 18:03
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 14 años, 4 meses
Puntos: 0
Con la librería GD puedes crear una imagen pequeña a partir de una grande, ya no necesitas dos tamaños y dos imágenes, basta con almacenar la grande y obtener el resto dinámicamente.

Aquí te dejo un script (llamado miniatura.php) que crea una imagen pequeña a partir de una grande (a escala):

<?php

$extension=strrchr($_REQUEST['img'],".");

if ($extension==".jpg") $imgcache=imagecreatefromjpeg($_REQUEST['img']);
elseif ($extension==".gif") $imgcache=imagecreatefromgif($_REQUEST['img']);
else $imgcache=imagecreatefrompng($_REQUEST['img']);

$ancho=imagesx($imgcache);
$alto=imagesy ($imgcache);

if ($ancho>100) $nuevo_ancho=$_REQUEST['ancho'];
else $nuevo_ancho=$ancho;

$nuevo_alto=($nuevo_ancho*$alto)/$ancho;

if ($nuevo_alto>100) $nuevo_alto=$_REQUEST['alto'];

$nuevo_ancho=($nuevo_alto*$ancho)/$alto;


$imgmini=imagecreatetruecolor($nuevo_ancho,$nuevo_ alto);
imagecopyresampled($imgmini,$imgcache,0,0,0,0,$nue vo_ancho,$nuevo_alto,imagesx($imgcache),imagesy ($imgcache));

if ($extension==".jpg") imagejpeg($imgmini);
elseif ($extension==".gif") imagegif($imgmini);
else imagepng($imgmini);

imagedestroy ($imgmini);
imagedestroy ($imgcache);
?>

Para llamar a este script hazlo así:

<html>
<head><title>Ejemplo</title>
</head>

<body>
<img src="miniatura.php?img=avatares/008.gif&alto=80&ancho=80">
</body>
</html>


Saludos.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)

Última edición por DjNelson; 04/06/2005 a las 18:19
  #4 (permalink)  
Antiguo 04/06/2005, 19:51
 
Fecha de Ingreso: noviembre-2004
Mensajes: 68
Antigüedad: 13 años
Puntos: 0
y es necesario poner el &alto y el ancho??

o puede ponerse solamente la img???

gracias. por el codigo...
  #5 (permalink)  
Antiguo 05/06/2005, 00:39
Avatar de CORE
Usuario no validado
 
Fecha de Ingreso: abril-2002
Ubicación: Merida
Mensajes: 2.165
Antigüedad: 15 años, 8 meses
Puntos: 3
Puedes poner el img pero debes poner esto dentro del imagen.php

Código PHP:
$alto "80";
$ancho "80"
saludos
  #6 (permalink)  
Antiguo 05/06/2005, 12:55
 
Fecha de Ingreso: noviembre-2004
Mensajes: 68
Antigüedad: 13 años
Puntos: 0
pero yo digo sin poner esa informacion y que la rescate sola, si poner ninguna variabless....
  #7 (permalink)  
Antiguo 05/06/2005, 13:56
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 14 años, 4 meses
Puntos: 0
Las variables están para hacernos la vida más fácil, pero si las quieres eliminar tú mismo, para ello sustituye en todo el script el nombre de la variable por el valor que le quieres dar, esto es: $_REQUEST['ancho'] y $_REQUEST['alto'] por un valor, por ejemplo 90.

Pero recuerda cambiar este valor en TODOS LOS SITIOS cuando necesites en vez de 90 un tamaño de 120 o de 60...

Saludos.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)
  #8 (permalink)  
Antiguo 05/06/2005, 14:50
 
Fecha de Ingreso: noviembre-2004
Mensajes: 68
Antigüedad: 13 años
Puntos: 0
ok, gracias....

lo probare y vere que sale... ;)
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 10:43.