Foros del Web » Programando para Internet » PHP »

redimensionar imagen guardad en base de datos

Estas en el tema de redimensionar imagen guardad en base de datos en el foro de PHP en Foros del Web. Tengo una imagen almacenada en la base de datos que recupero con... echo '<img src="image.php?id='.$imagen.'" border="0" width="auto" height="100" alt="">' la cuesion es que quiero calcular ...
  #1 (permalink)  
Antiguo 15/02/2010, 13:41
 
Fecha de Ingreso: noviembre-2007
Mensajes: 118
Antigüedad: 16 años, 5 meses
Puntos: 0
redimensionar imagen guardad en base de datos

Tengo una imagen almacenada en la base de datos que recupero con...

echo '<img src="image.php?id='.$imagen.'" border="0" width="auto" height="100" alt="">'

la cuesion es que quiero calcular el alto y el ancho para que uno u otro sea auto dependiendo del valor mayor...


alguna ayuda?


Gracias de antemano
  #2 (permalink)  
Antiguo 15/02/2010, 13:46
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: redimensionar imagen guardad en base de datos

Hola,

Mira en el manual la función getimagesize,

Un ejemplo,

Código PHP:
<?php
list($ancho$altura$tipo$atr) = getimagesize("img/bandera.jpg");
echo 
"<img src=\"img/bandera.jpg\" $atr alt=\"ejemplo de getimagesize()\" />";
?>
  #3 (permalink)  
Antiguo 15/02/2010, 13:53
 
Fecha de Ingreso: noviembre-2007
Mensajes: 118
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: redimensionar imagen guardad en base de datos

Cita:
Iniciado por santris Ver Mensaje
Hola,

Mira en el manual la función getimagesize,

Un ejemplo,

Código PHP:
<?php
list($ancho$altura$tipo$atr) = getimagesize("img/bandera.jpg");
echo 
"<img src=\"img/bandera.jpg\" $atr alt=\"ejemplo de getimagesize()\" />";
?>
gracias por la rapida respuesta. el problema es que no tengo
img/bandera.jp
sino que tengo

"image.php?id='.$imagen.'"

y no se como compaginarlo
  #4 (permalink)  
Antiguo 15/02/2010, 14:04
 
Fecha de Ingreso: enero-2010
Mensajes: 152
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: redimensionar imagen guardad en base de datos

lo que te recomendaría más es modificar image.php para que te devuelva una imágen del tamaño adecuado una vez que la llames.
  #5 (permalink)  
Antiguo 15/02/2010, 14:12
 
Fecha de Ingreso: noviembre-2007
Mensajes: 118
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: redimensionar imagen guardad en base de datos

Cita:
Iniciado por paynalton Ver Mensaje
lo que te recomendaría más es modificar image.php para que te devuelva una imágen del tamaño adecuado una vez que la llames.
este es mi imagen.php

Código PHP:
                mysql_connect("$DBHost","$DBUser","$DBPass");
                
mysql_select_db ($DBName) or die ("DB does not exist or access is denied!");
                
                
$sql "SELECT * FROM ".$DBprefix."image WHERE image_id=".$HTTP_GET_VARS["id"];
                
                
$result mysql_query ($sql);
                
                if (
mysql_num_rows ($result)>0
                {
                    
$row = @mysql_fetch_array ($result);
                    
$image_type $row["image_type"];
                    
$image $row["image"];
                    
Header ("Content-type: $image_type");
                    print 
$image;
                }
                
mysql_close(); 
podrias guiarme un poco porque ando bastante perdido
  #6 (permalink)  
Antiguo 15/02/2010, 14:32
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: redimensionar imagen guardad en base de datos

La imagen está almacenada en la db o solo el nombre?
  #7 (permalink)  
Antiguo 15/02/2010, 14:38
 
Fecha de Ingreso: noviembre-2007
Mensajes: 118
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: redimensionar imagen guardad en base de datos

es la imagen la que esta almacenada en la base de datos
  #8 (permalink)  
Antiguo 15/02/2010, 15:07
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: redimensionar imagen guardad en base de datos

Esto te da las dimensiones de la imagen ancho=400, alto=relación ancho

Código PHP:
 <?php              mysql_connect("$DBHost","$DBUser","$DBPass");
                
mysql_select_db ($DBName) or die ("DB does not exist or access is denied!");
                
                
$sql "SELECT * FROM ".$DBprefix."image WHERE image_id=".$HTTP_GET_VARS["id"];
                
                
$result mysql_query ($sql);
                
                if (
mysql_num_rows ($result)>0
                {
                    
$row = @mysql_fetch_array ($result);
                    
//recogemos la imagen
                    
$image $row["image"];
                    
//almacenamos las dimensiones
                    
$ancho getimagesize($image);
                    
//establecemos el ancho
                    
$factor=400/$ancho[0];
                    
//nuevo ancho
                    
$newx=$ancho[0]*$factor;
                    echo 
$newx."<br/>";
                    
//nuevo alto
                    
$newy=$ancho[1]*$factor;
                    echo 
$newy;
                }
                
mysql_close();
?>
  #9 (permalink)  
Antiguo 15/02/2010, 15:40
 
Fecha de Ingreso: noviembre-2007
Mensajes: 118
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: redimensionar imagen guardad en base de datos

Gracias voy a probarlo y luego te comento como salio

Etiquetas: redimensionar
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 11:58.