Foros del Web » Programando para Internet » PHP »

Mostrar imagen de base de datos.....X FILE???

Estas en el tema de Mostrar imagen de base de datos.....X FILE??? en el foro de PHP en Foros del Web. Hola...busco un script que muestre imagenes procedentes de base de datos mysql...He conseguido crear un formulario que las inserta pero no hay manera de recuperarlas,(bueno ...
  #1 (permalink)  
Antiguo 23/02/2005, 15:27
CLK
 
Fecha de Ingreso: junio-2004
Mensajes: 3
Antigüedad: 13 años, 6 meses
Puntos: 0
Mostrar imagen de base de datos.....X FILE???

Hola...busco un script que muestre imagenes procedentes de base de datos mysql...He conseguido crear un formulario que las inserta pero no hay manera de recuperarlas,(bueno por lo menos yo no soy capaz)...Si a alguien le sirve de algo pongo el script que me ha funcionado para insertar las fotos en la base de datos(probe unos cuantos y ninguno lo hacia correctamente)

Bueno ahi va el de upload:
Código PHP:
<?php
//Bueno primero "cojo" el file procedente del formulario mediante 
$_FILES["binFile"]["tmp_name"];
$tamanio $_FILES["binFile"]["size"]; 
$tipo    $_FILES["binFile"]["type"]; 
$nombre  $_FILES["binFile"]["name"]; 



    
$fp fopen($archivo"rb");
    
$foto fread($fp$tamanio);
    
$foto=mysql_escape_string($foto);
    
    
    
fclose($fp); 

    
mysql_select_db('mibasedatos');
    
$qry "INSERT INTO mitabla SET Texto='".$descrip."',Imagen='".$foto."',bin_name='".$nombre."',bin_type='".$tipo."',bin_size='".$tamanio."'";
    
mysql_query($qry);[/COLOR]
// muy simple nada de complicaciones de momento...Decir que he tenido que usar SET para insertar los valores en cada campo porque con INSERT INTO ---VALUES pues no insertaba nada..bueno insertaba, pero los datos binarios no,no tengo ni idea de porque..
?>
---------------------------------------------------------------------
Ahora estoy atascado en el script para que muestre en una pagina la imagen prodedente de la base de datos...Es posible o la verdad esta ahi fuera¿¿?¿?..Gracias

Última edición por Cluster; 24/02/2005 a las 07:14 Razón: No uses centrado para el código .. usa el botón "PHP" se vé como lo estás viendo ahora, mas legible y fácil de seguir el código.
  #2 (permalink)  
Antiguo 23/02/2005, 16:49
 
Fecha de Ingreso: febrero-2005
Mensajes: 670
Antigüedad: 12 años, 10 meses
Puntos: 0
Podés crear un script que recupere la imágen de la db y la imprima con el header correcto:
Código PHP:
<?php

//...

//haces la consulta a la db y te quedas con dos variables, $imagen y $mime, no lo hago acá para no perder tiempo en algo que seguro sabes hacer

header("Content-type: $mime");
echo 
$imagen;

?>
Suerte
Fede
__________________
Federico H. García
Desarrollo Web
www.federicog.com.ar
  #3 (permalink)  
Antiguo 24/02/2005, 07:13
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Tienes un tutorial al respecto en:

http://www.forosdelweb.com/f18/tutorial-ejemplo-subir-archivos-bd-guardando-bd-binario-127775/

Un saludo,
  #4 (permalink)  
Antiguo 25/02/2005, 15:52
CLK
 
Fecha de Ingreso: junio-2004
Mensajes: 3
Antigüedad: 13 años, 6 meses
Puntos: 0
Muchas Gracias

Gracias a los dos y perdon a Cluster por no haber mirado a fondo en el foro antes ...Hacer la consulta seleccionando el tipo del archivo, el archivo en si y lo de la cabecera,lo he probado pero solo consigo mensajes de error del navegador como"la imagen sdfsd/jpeg no ha podido mostrarse porque contiene errores"(esto me pasa con todas las imagenes que inserto en la db)..Con otras variaciones del script pues me muestra el monton de caracteres tipico en vez de la foto...Voy a probar el de Cluster a ver que tal me va...
Por cierto tengo instalado el phpmyadmin...que instala php mysql y apache del tiron...¿no hay que habilitar nada o modificar en el .ini para poder mostrar imagenes de la bd verdad?...Bueno muchas gracias otra vez y en cuanto pruebe el script de Cluster lo comento aqui.
...
  #5 (permalink)  
Antiguo 25/02/2005, 16:00
 
Fecha de Ingreso: febrero-2005
Mensajes: 670
Antigüedad: 12 años, 10 meses
Puntos: 0
phpmyadmin no instala nada, es un administrador para bases de datos mySQL, apache, php y mysql tenés que instalarlos por separado.

Para instalar esos tres de una, podés probar el PHPTriad o el EasyPHP.

Suerte
Fede
__________________
Federico H. García
Desarrollo Web
www.federicog.com.ar
  #6 (permalink)  
Antiguo 26/02/2005, 03:35
CLK
 
Fecha de Ingreso: junio-2004
Mensajes: 3
Antigüedad: 13 años, 6 meses
Puntos: 0
Hola mis mas humildes disculpas thunder.scripts!!! queria decir <a href
="http://sourceforge.net/project/showfiles.php?group_id=14045&package_id=103438&rel ease_id=202620">EasyPhp</a>...Eso es lo que tengo instalado...asi que supongo que no me hace falta nada mas que eso..vamos que con eso instalado seria suficiente para poder mostrar una imagen de mi base de datos mysql....Gracias
  #7 (permalink)  
Antiguo 26/02/2005, 10:40
 
Fecha de Ingreso: febrero-2005
Mensajes: 670
Antigüedad: 12 años, 10 meses
Puntos: 0
Todo bien, no hace falta que seas tan solemne =P

Sí, con lo que tenés instalado ya es suficiente. Contanos cómo te fue

Suerte
Fede
__________________
Federico H. García
Desarrollo Web
www.federicog.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 14:30.