Foros del Web » Programando para Internet » PHP »

Thumbnail de imagenes almacenadas en Mysql

Estas en el tema de Thumbnail de imagenes almacenadas en Mysql en el foro de PHP en Foros del Web. Tengo este código que muestra un resultado de una base de datos y uno de los campos es una imagen en miniatura: - El rollo ...
  #1 (permalink)  
Antiguo 26/10/2003, 19:14
 
Fecha de Ingreso: octubre-2003
Mensajes: 3
Antigüedad: 14 años, 1 mes
Puntos: 0
Thumbnail de imagenes almacenadas en Mysql

Tengo este código que muestra un resultado de una base de datos y uno de los campos es una imagen en miniatura:
- El rollo esta en que al hacer clic en la imagen pequeña me abra la misma imagen pero en formato grande. En javascript pillé este código para detectar la altura y anchura de la imagen grande y que abra la ventana justa en la medida de ella pero no me funciona.

Si alguien ve el error agradecería mucho esto. Llevo días dandole y no lo encuentro.

Ahí va el código:

<html>
<head>
<title>Muestra los datos</title>
<script language="javascript">
var ventana
var cont=0
var titulopordefecto = "Imagen ampliada"
function afoto(cual,titulo)
{
if(cont==1){ventana.close();ventana=null}
if(titulo==null){titulo=titulopordefecto}
ventana=window.open('','ventana','resizable=yes,sc rollbars=no')
ventana.document.write('<html><head><title>' + titulo + '</title></head><body style="overflow:hidden" marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" scroll="no" onUnload="opener.cont=0"><img src="' + cual + '" onLoad="opener.redimensionar(this.width, this.height)">')
ventana.document.close()
cont++
}
function redimensionar(ancho, alto)
{
ventana.resizeTo(ancho+12,alto+28)
ventana.moveTo((screen.width-ancho)/2,(screen.height-alto)/2) //centra la ventana. Eliminar si no se quiere centrar el popup
}
</script>
</head>
<body>
<H1>Ejemplo de uso de bases de datos con PHP y MySQL</H1>
<?php
include("conex.php");
$link=Conectarse();
$result=mysql_query("select * FROM $tabla WHERE apellidos LIKE 'Corcobado' ORDER BY apellidos",$link);
?>

<TABLE width="534" BORDER=1 align="center" CELLPADDING=1 CELLSPACING=1 >
<TR bgcolor="#FF0000"><TD width="102"> <div align="center"><strong><font color="#FFFFFF">Nombre</font></strong></div></TD><TD width="187" align="center"><strong><font color="#FFFFFF"> Apellidos </font></strong></TD> <TD width="227"> <div align="center"><strong><font color="#FFFFFF">Foto</font></strong></div></TD></TR>

<?php
while($row = mysql_fetch_array($result)) {
printf("<tr><td> %s</td><td> %s </td><td> <a href='#' onClick='afoto('%s','Ampliación de imagen');return false'><img src=%s></a></td></tr>", $row["Nombre"],$row["Apellidos"],$dir.$row["Fotogran"],$dir.$row["Foto"]);
}
mysql_free_result($result);
mysql_close($link);
?>
</table>
<br>
<br>
</body>
</html>
  #2 (permalink)  
Antiguo 26/10/2003, 19:53
 
Fecha de Ingreso: octubre-2003
Ubicación: Buenos Aires, Argentina
Mensajes: 15
Antigüedad: 14 años, 1 mes
Puntos: 0
che te recomiendo tener 1 sola imagen para la imagen grande y chica (si total es lo mismo pero mas pekeño...)

yo ayer empeze un pekeño pryecto de un programa parecido al coppermine (un album de fotos)

y te podria decir algo como esto
Código PHP:
<?php
function VerificarImagen($src)
{
  if(
is_file($src))
  {
// array getimagesize ( string filename [, array imageinfo])
    
$imagen_info getimagesize($src);// getimagesize() devuelve un array con los siguientes valores
//0 = ancho de la imagen (en pixeles)
//1 = alto de la imagen (en pixeles)
//2 = tipo de la imagen
//                                     1  -GIF
//                                     2  -JPG
//                                     3  -PNG
//                                     Desde aqui las proximas estan en PHP 4.30
//                                     4  -SWF
//                                     5  -PSD
//                                     6  -BMP
//                                     7  -TIFF(Orden de Bytes Intel)
//                                     8  -TIFF(Orden de Bytes Motorola)
//                                     9  -JPC
//                                     10-JP2
//                                     11-JPX
//                                     12-JB2
//                                     13-SWC
//                                     14-IFF
//                                     15-WBMP
//                                     16-XBM
//3 = una cadena de texto preparada para usar en un tag HTML img (no lo usamos aqui porque esperamos cambiarle los valores que la imagen tiene)

    
if($imagen_info[0] > 200)
    {
      
$imagen_info[0] = 200;
    }

    if(
$imagen_ifo[1] > 200)
    {
      
$imagen_info[1] = 200;
    }

    echo 
"<img src=\"" $src "\" border=0 width=" $imagen_info[0] . " height=" $imagen_info[1];
  }
  else
  {
    return 
false;
  }
}
?>
espero que te sirva porque lo escribi recien
para mas informacion
www.php.net/es/getimagesize ;)
suerte
__________________
Saludos
Jeropa

Vamos todos a Codear
www.program-ar.com.ar
  #3 (permalink)  
Antiguo 28/10/2003, 08:42
 
Fecha de Ingreso: octubre-2003
Mensajes: 3
Antigüedad: 14 años, 1 mes
Puntos: 0
Muchas gracias por tu respuesta. Me gustaría utilizar tu código pero, soy principiante, y me gustaría que me ayudases como aplico la funcion a mi pequeño script:

<?php
while($row = mysql_fetch_array($result)) {
printf("<tr><td> %s</td><td> %s </td><td> <a href='#' onClick='afoto('%s','Ampliación de imagen');return false'><img src=%s></a></td></tr>", $row["Nombre"],$row["Apellidos"],$dir.$row["Fotogran"],$dir.$row["Foto"]);
}
mysql_free_result($result);
mysql_close($link);
?>

El campo "Fotogran" es el campo de la tabla que tengo la foto grande.

Muchas gracias.-
  #4 (permalink)  
Antiguo 28/10/2003, 21:48
 
Fecha de Ingreso: octubre-2003
Ubicación: Buenos Aires, Argentina
Mensajes: 15
Antigüedad: 14 años, 1 mes
Puntos: 0
te juro que este mail va con la mejor onda del mundo

macho, te lo explique muy detalladamente
un consejo, mejor que te lo diga ahora que estas aprendiendo,
la programacion se estudia, como las matematicas
uno busca investiga se rompe el coco para saber como funcionan las cosas
te deje una pagina increible donde tmb te explican todo, y en español
QUE MAS SE PUEDE PEDIR

te vuelvo a decir que este mensaje fue con la mejor onda, si te doy todo masticado, nunca vas a aprender, y lo mejor de hacer esto, es que te das cuenta realmente si estas perdiendo el tiempo sabiendo programar o es algo que te gusta,
si seguis, te gusta, sino, estas perdiendo el tiempo
__________________
Saludos
Jeropa

Vamos todos a Codear
www.program-ar.com.ar
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:42.