Foros del Web » Programando para Internet » PHP »

guardar imagen y extraerla en la base d datos usando mysql

Estas en el tema de guardar imagen y extraerla en la base d datos usando mysql en el foro de PHP en Foros del Web. Hola amigos tengo un problema, ya tengo resuelto el subir la imagen ala base de datos pero mi problema es que no puedo mostrarla en ...
  #1 (permalink)  
Antiguo 02/12/2006, 12:57
 
Fecha de Ingreso: diciembre-2006
Mensajes: 25
Antigüedad: 17 años, 11 meses
Puntos: 0
Pregunta guardar imagen y extraerla en la base d datos usando mysql

Hola amigos tengo un problema, ya tengo resuelto el subir la imagen ala base de datos pero mi problema es que no puedo mostrarla en el navegador es decir extraerla de la base de datos y mostrarla. tengo estos codigos porfavor ayudeme.

guardarfoto.php

<body>
<?php if (!isset($_POST['enviar']))
{
?>
<form name="form1" enctype="multipart/form-data" method="post" action="">
<input name="foto" type="file" id="foto" size="25">
<input name="enviar" type="submit" id="enviar" value="Aceptar">
</form>
<?php
}
else
{
$nombre_archivo=$HTTP_POST_FILES["foto"]["name"]; //Nombre del archivo
$tipo_archivo=$HTTP_POST_FILES["foto"]["type"]; //Tipo de archivo
$tamano_archivo=$HTTP_POST_FILES["foto"]["size"]; //Tamano de archivo
$archivo = $_FILES["foto"]["tmp_name"];

if ($nombre_archivo!="")
{
$fp = fopen($archivo,"rb");
$contenido = fread($fp,$tamano_archivo);
$contenido = addslashes($contenido);
fclose($fp);
$link = mysql_connect("localhost","root");
mysql_select_db("nuevo");
$inserta="INSERT INTO tabla VALUES ('','$contenido', '$tipo_archivo')";
$res=mysql_query($inserta,$link);
if($res)
{
echo "Resgistro adicionado";
}
else
{
echo "no inserto";
}
}}
?>
</body>


con este escript en php se carga perfectamente la imagen ala base de datos ahora con estos programas que me di cuenta en algunos ejemplos trato de extraer la imagen de base de datos y mostrarla en el navegador

imagen.php

<body>
<?php
//require_once('Tu_conexion.php');
$link= mysql_connect("localhost","root","") or die ("No conecto");
mysql_select_db("nuevo");
$id= 1; //$_GET["codigo"];
$sql_archivos="SELECT tipo, foto FROM tabla WHERE id ='".$id."'";
$res = mysql_query($sql_archivos,$link);
echo mysql_error($link);
$tipo = mysql_result($res,0,"tipo");
header("Content-type:$tipo");
echo mysql_result($res,0,"foto");
?>
</body>

vermagen.php

<body>
<img name="imgfoto" src="imagen1.php?codigo=<? echo $id;?>" width="247" height="316" border="1" align="bottom">
</body>

la tabla que uso en mi base de datos con nombre "nuevo" es la siguiente:
create table tabla (id int(2) PRIMARY KEY, foto mediumblob, tipo varchar (50));

si alguien encuentra mi error o si tiene un ejemplo que me podria ayudarme les agradeceria mucho su ayuda. muchas gracias
  #2 (permalink)  
Antiguo 04/12/2006, 08:07
 
Fecha de Ingreso: diciembre-2006
Mensajes: 25
Antigüedad: 17 años, 11 meses
Puntos: 0
Ayuda urgente helpme please

porfavor necesito que me ayuden please solo me falta mostrarla la imagen en el navegador no me sale ayuda con algun error en mi codigo. helpme
  #3 (permalink)  
Antiguo 04/12/2006, 08:19
Avatar de jimadri  
Fecha de Ingreso: julio-2006
Ubicación: Buenos Aires
Mensajes: 487
Antigüedad: 18 años, 4 meses
Puntos: 1
Hola, yo he realizado un formulario donde todavia no logré cargar la imagen en la base de datos desde el lugar que yo le digo al formulario.
Pero si puedo mostrar en pantalla las imagenes guardadas.
Si te conectas a eso de las 15:30hs de hoy 4/12/06 te dejo es script.
  #4 (permalink)  
Antiguo 04/12/2006, 09:18
 
Fecha de Ingreso: octubre-2006
Ubicación: Guadalajara, Mexico
Mensajes: 177
Antigüedad: 18 años, 1 mes
Puntos: 0
Que tal Axedrez


Mira basicamente veo un problema con tu codigo, hasta donde se MySql No acepta Imagenes, por que mejor no colocas un campo con el nombre del archivo y usando la funcion la funcion move_uploaded_file() la grabas en un directorio.

Al llamar las imagenes usas una sentencia SELECT pero con el nombre del archivo y dentro de tus tags img src colocas el nombre del campo que contiene el nombre del archivo.

Asi te funcionara ala perfeccion.
  #5 (permalink)  
Antiguo 04/12/2006, 09:27
Avatar de Bellenger  
Fecha de Ingreso: noviembre-2004
Ubicación: En un lugar del Mundo...
Mensajes: 599
Antigüedad: 20 años
Puntos: 4
Carpetas e Imagenes es mejor

Hola, jtv1972, MySQL no acepta imagenes o asi tengo entendido tambien , por que mejor no creas una carpeta donde guardas las imagenes, y en tu tabla creas un campo ruta en la cual almacenas la ruta de la imagen, y al moento de hacer la consulta, solo la buscas a traves de la ruta, y la muestras, te sera mas sencillo, mas facil, y ademas es lo que se hace siempre
  #6 (permalink)  
Antiguo 04/12/2006, 10:21
Avatar de Bellenger  
Fecha de Ingreso: noviembre-2004
Ubicación: En un lugar del Mundo...
Mensajes: 599
Antigüedad: 20 años
Puntos: 4
Carpetas e Imagenes es mejor

Hola, jtv1972, MySQL no acepta imagenes o asi tengo entendido tambien , por que mejor no creas una carpeta donde guardas las imagenes, y en tu tabla creas un campo ruta en la cual almacenas la ruta de la imagen, y al moento de hacer la consulta, solo la buscas a traves de la ruta, y la muestras, te sera mas sencillo, mas facil, y ademas es lo que se hace siempre
  #7 (permalink)  
Antiguo 04/12/2006, 12:47
Avatar de jimadri  
Fecha de Ingreso: julio-2006
Ubicación: Buenos Aires
Mensajes: 487
Antigüedad: 18 años, 4 meses
Puntos: 1
Dejo un ejemplo de lo que realice utilizando lo mismo que dijo Bellenger.
La verdad que funciona.
http://www.atrapandoimagenes.com.ar/buscador
  #8 (permalink)  
Antiguo 05/12/2006, 11:25
 
Fecha de Ingreso: diciembre-2006
Mensajes: 25
Antigüedad: 17 años, 11 meses
Puntos: 0
Hola amigos gracias por sus respuestas miren soy novato en esto del php por eso creo q me fui por el camino equivocado, alguien me puedo dar un ejemplo de como subir fotos ami servidor por medio de la ruta. se los agradecere mucho
  #9 (permalink)  
Antiguo 27/12/2006, 03:27
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 8 meses
Puntos: 25
Re: guardar imagen y extraerla en la base d datos usando mysql

usa header() para definit el tipo de archivo que es. Bellenger con todo respeto echale una leída a MYSQL.

Saludos
__________________
Hospedaje Web al mejor costo!
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 22:23.