Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Mysql (http://www.forosdelweb.com/f86/)
-   -   Imagenes en MySQL (http://www.forosdelweb.com/f86/imagenes-mysql-505087/)

zeoneo 12/07/2007 18:14

Imagenes en MySQL
 
Como podemos insertar una fotografia de no mas de 250 K en un campo de la tabla de My SQL????


Oajala lo detallen con la mayor claridad posible...


Gracias:-)

franco190453 12/07/2007 20:14

Re: Imagenes en MySQL
 
Zeoneo:
Este codigo yo lo utilizo para subir imagenes, audios, videos, etc
a mi base de datos:
Mi base de datos se llama franco7777org y mi tabla
se llama datos_binarios y esta es la forma de crearla:

CREATE TABLE datos_binarios (
id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY,
descripcion CHAR(56),
binarios LONGBLOB,
nombrearch CHAR(56),
tamanoarch CHAR(56),
tipoarch CHAR(56)
);

Este archivo lo debes llamar SubirArchivosMysql.php>:
<?php
if($enviar) {

MYSQL_CONNECT("localhost","Usuario","Contraseña");
mysql_select_db("franco7777org");

$datos = addslashes(fread(fopen($archivo_datos, "r"), filesize($archivo_datos)));

$resultados = MYSQL_QUERY("INSERT INTO datos_binarios (descripcion,binarios,nombrearch,tamanoarch,tipoar ch)".
"VALUES ('$descripcion','$datos','$archivo_datos_name','$a rchivo_datos_size','$archivo_datos_type')");

$id= mysql_insert_id();
echo "Archivo Subido Exitosamente<br>";
print "<p>Este Archivo Se Identifica Con ID#: <b>$id</b>";
echo "<br>Descripcion : $descripcion<br>";
echo "Nombre Del Archivo : $archivo_datos_name<br>";
echo "Tamaño Del Archivo : $archivo_datos_size >bytes<br>";
echo "Tipo De Archivo : $archivo_datos_type >MIME<br>";

MYSQL_CLOSE();
}
?>
La informacion la tomas de un archivo html asi:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Guardar Imagenes en Base De Datos MySql www.franco7777.org</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FF9900">
INICIO GUARDAR EN MYSQL:<br>
<form action="SubirArchivosMysql.php" method="post" enctype="multipart/form-data">
Descripcion Del Archivo:<br><input type="text" name="descripcion" size="44"><br>
<input type="hidden" name="MAX_FILE_SIZE" value="24000000">
Archivo Que Desea Subir:<br><input type="file" name="archivo_datos" size="44"><br>
<input name="enviar" type="submit" value="Subir Archivo!">
</form>
<p>www.franco7777.org</p>
</body>
</html>

Saludos
Y espero te ayude.
Franco:si: :arriba: :si: :arriba:

zeoneo 13/07/2007 10:24

Re: Imagenes en MySQL
 
Gracias Franco...

Lamentablemente he leido tu respuesta desde mi PDA... por lo cual no he podido probarla....

Lo probare cuando llegue a casa hoy en la noche....

Te Cuento


Nos Vemos

Renato:si:

zeoneo 17/07/2007 22:28

Re: Imagenes en MySQL
 
oye, y para ver los archivos ya subidos???

MARKWEB 18/07/2007 00:49

Re: Imagenes en MySQL
 
franco ando buscando lo mismo

no podrias darnos los codigos??


lo que pasa es que hice todo y no me funciono el codigo, osea no me subio la imagen ni me la guardo en la base de datos


la probe en mi servidor de mi pc y no en algujn servidor de afuera

franco190453 18/07/2007 12:01

Re: Imagenes en MySQL
 
MARKWEB: Este codigo debe funcionar, puede ser que en el copy and paste
haya habido algun error. Y observando el codigo hay un pequeño error en donde dice "tipo arch" que debe ser "tipoarch". Por lo demas yo utilizo windows y funciona muy pero muy bien.
Zeoneo:
Imagenes incluye fotografias.
Para poder ver lo que hemos subido a la base de datos Mysql,
debemos primero anotar con cuidado el ID o identificacion que nos
reporto el codigo cuando subimos los archivos.
Nota: Esto a mi me funciona con archivos .txt, .doc, gif, jpeg, pdf, etc.
Este archivo para ver lo que subistes:
Yo lo llamo > BajarArchivosMysql.php
<?php

$id = $_POST['id'];

@MYSQL_CONNECT("localhost","tu nombre de usuario","tu contraseña");
@mysql_select_db("franco7777.org");

$consulta = "select binarios, tipoarch from datos_binarios where id=$id";
$resultados = @MYSQL_QUERY($consulta);

$datos = @MYSQL_RESULT($resultados,0,"binarios");
$tipo = @MYSQL_RESULT($resultados,0,"tipoarch");

Header( "Content-type: $tipo");
echo $datos;
?>
Este es el codigo html que me pide el ID de el archivo
que quiero ver:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Guardar Imagenes en Base De Datos MySql</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FF9900">
INICIO GUARDAR EN MYSQL:<br>
<form action="BajarArchivosMysql.php" method="post">
ID Del Archivo Que Desea Bajar:<br><input type="text" name="id" size="7"><br>
<input name="submit" type="submit" value="Bajar Archivo!">
</form>
<p>www.franco7777.org</p>
</body>
</html>
Hasta aqui la simple revision de lo que hemos hecho:
AHORA VIENE LO MAS IMPORTANTE:
VIA UN LINK EN CUALQUIER PAGINA HTML PODEMOS BAJAR LO QUE HEMOS
SUBIDO VIA HACIENDO UN SIMPLE CLICK:
EN ESTO PRIMERO PRESENTAMOS EL LINK QUE NOS LLEVARA A UNO DE LOS ARCHIVOS YA SUBIDOS:
ESTO SE COLOCA EN CUALQUIER PAGINA HTML:
<a href="VerArchivosMysql.php?id=8">Ver Archivo #8 Foto jpg!</a>
OBSERVEN QUE ESTOY SOLICITANDO EL ARCHIVO NUMERO 8.
Y LA SOLICITUD VA DIRIGIDA A UN NUEVO ARCHIVO ESPECIAL PARA ELLO QUE YO LLAMO VerAarchivosMysql.php
Este nuevo archivo escrito en PHP debe contener lo siguiente:
<?php

if($id) {
@MYSQL_CONNECT("localhost","tu nombre de usuario","tu contraseña");
@mysql_select_db("franco7777.org");

$consulta = "select binarios,tipoarch from datos_binarios where id=$id";
$resultados = @MYSQL_QUERY($consulta);

$datos = @MYSQL_RESULT($resultados,0,"binarios");
$tipo = @MYSQL_RESULT($resultados,0,"tipoarch");

Header( "Content-type: $tipo");
echo $datos;
};
?>
NOTA: ES CASI IGUAL AL ANTERIOR CON LA SIGNIFICATIVA DIFERENCIA QUE RECIBE
EL ($id) DIRECTO NO OLVIDEN EL PUNTO Y LA COMA AL FINAL Y ANTES DE ?>.
Saludos
Y espero lo puedan utilizar
Franco:arriba: :arriba: :arriba: :arriba:

zeoneo 18/07/2007 21:23

Re: Imagenes en MySQL
 
Gracias Franco por tu paciencia....

pero quiero pedirte otro favor. hice un post hace poco titulado Ayuda con Dream WEaver y MySQL, o algo asi... me gustaria que lo revisaras y me pudieras dar tu opinion ya que nadie se ha interezado por el...


atte


Renato

MARKWEB 19/07/2007 13:28

Re: Imagenes en MySQL
 
listo solucionado, aunque encontre otro scrip el mismo tuyo pero mejorado, parece que es de la misma fuente lo sacque


gracias franco

franco190453 19/07/2007 15:20

Re: Imagenes en MySQL
 
MARKWEB:
Me interesa ese mejorado que tu dices.
Postealo para enriquecer mis conocimientos.
Saludos
Franco:si: :si: :si:

MARKWEB 20/07/2007 01:18

Re: Imagenes en MySQL
 
mira me parece que es este

http://www.programacionweb.net/desca...escarga/?num=7

si no es, entonces estara por ahi

en lo mejorado me refiero a que puedes darle un numero como id o bien un nombre o puedes usar los dos

CIBERDAVID 20/07/2007 08:33

Re: Imagenes en MySQL
 
hola, me ha dado por leer este tema y me parece interesante, pero lo que no entiendo es donde se carga la foto ¿? supongo q esto es para html, en flash se puede hacer? pero eso, donde se carga la foto de la tabla de la base d datos¿

franco190453 20/07/2007 12:18

Re: Imagenes en MySQL
 
MARKWEB:
Si tu interes es personalizar la subida, a manera de identificarla
con algo mas que sea como nombre, etc y/o eliminar la ID que genera el script, es perfectamente factible y la estructura del codigo que te he posteado prevalece y simplemente debes hacer pequeñas modificaciones; en cuyo caso estariamos hablando de algo diferente.
En lo que respecta a personalizar para permitir que los usuarios suban y bajen sus archivos, NO es recomendable utilizar Mysql para ello debido a lo que se llama "MySql Injection" en cuyo caso es mas recomendable hacer uploads y download a directorios dentro de tu misma web.
CIBERDAVID:
Los archivos que subes y bajas estan en tu computadora.
Para que comprendas esto mas claramente, sube alguna imagen y te vas a donde tienes instalado mysql y buscas el archivo donde estan las bases de datos y ahi encontraras la base de datos que MANEJA tu tabla donde tienes tu imagen y veras que la base de datos es pequeña y te preguntas ¿porque?; sencillo, Mysql almacena los links internos que le indican donde esta la imagen; si trasladas la imagen que subistes donde esta se encuentre hacia otro directorio dentro de tu computadora, veras que cualquier consulta fallara.
Saludos
Y espero les ayude.
Franco:arriba: :si: :arriba: :si:

lumorux 22/07/2007 16:48

Re: Imagenes en MySQL
 
Como puedo insertar una imagen en un campo de la tabla de My SQL????


Oajala lo detallen con la mayor claridad posible..., utilizando JAVA

niltza 01/08/2007 15:47

Re: Imagenes en MySQL
 
quisiera q me pasaras el codigo de esa pagina http://www.programacionweb.net/desca...ting.com/~eloi

la verdad llevo horas tratando de bajar el zip pero nada que baja
ayudame please

AdrianBlue 02/08/2007 09:12

Re: Imagenes en MySQL
 
Como puedo hacer para mostrar en una misma pagina varias de las imagenes guardadas, se puede agregar codigo html para que aparezca junta a las imagenes en la pagina VerArchivosMysql.php, se le podrian pasar varios valores para que muestre varias imagenes???? segun entiendo se muestra la pagina con la imagen de la misma forma que si refenciaramos a una imagen directamente lo que no permitiria mostrar codigo complementario o abrir mas imagenes en lamisma pagina ya que en realidad estamos abriendo una imagen o tengo idea erronea de lo que en realidad se hace en esta manera de mostrar la imagenes??

franco190453 02/08/2007 23:24

Re: Imagenes en MySQL
 
AdrianBlue:
Perfectamente puedes hacer esto:
<img src="VerArchivosMysql.php?id=8><br>
<img src="VerArchivosMysql.php?id=7>
Este codigo de arriba puesto dentro de una pagina html,
se iniciara mostrando las imagenes que estan en la base de
datos de Mysql con identificacion #8 y debajo aparecera otra imagen
que se identifica con #7.
Saludos
Y espero te ayude
Franco:arriba: :si: :arriba: :si:
P:S: Recuerda el archivo php debe estar en el mismo directorio
del archivo html que lo solicita!!!

franco190453 02/08/2007 23:31

Re: Imagenes en MySQL
 
Cita:

Iniciado por franco190453 (Mensaje 2087676)
AdrianBlue:
Perfectamente puedes hacer esto:
<img src="VerArchivosMysql.php?id=8><br>
<img src="VerArchivosMysql.php?id=7>
Este codigo de arriba puesto dentro de una pagina html,
se iniciara mostrando las imagenes que estan en la base de
datos de Mysql con identificacion #8 y debajo aparecera otra imagen
que se identifica con #7.
Saludos
Y espero te ayude
Franco:arriba: :si: :arriba: :si:
P:S: Recuerda el archivo php debe estar en el mismo directorio
del archivo html que lo solicita!!!

Asimismo, yo tengo un caso donde una imagen
aparece dentro de un IFRAME y utilizo un link (URL) y funciona igual.
<iframe src=http://MI-IP/imagenes/VerArchivosMysql.php?id=1 frameborder=0 scrolling=no width=648 height=436></iframe><br>

AdrianBlue 03/08/2007 10:19

Re: Imagenes en MySQL
 
Gracias franco190453 :-) me funcionó de maravilla llevaba dias intentando hacerlo y vaya que lo habia intentado de varias maneras y mira que no era tan complicado pero despues de mucho intentar y no poder como que me bloqueo, me has ayudado bastante. ahora abusando de tu tiempo, me podrias ayudar o decirme en que foro podria encontrar algo para resolver lo siguiente:
con lo que me ayudaste a resolver ya tengo desplegadas en la pagina todas las imagenes almacenadas y su id, ahora quiero darle formato y que en lugar de que las imagenes salgan en una sola columna quiero acomodarlas en una tabla de manera que aparcezcan 4 columnas y 'n' filas, ya que se va a ser dinamico el numero total de imagenes, por ahora este es mi codigo:

Código PHP:

<? 
    
include '../../../../Connections/conexion.php';
    
conectar();$query "SELECT imagen, codigo FROM imagenes WHERE
id_Familia=10 AND id_subfamilia=10 ORDER BY codigo ASC"

$result = @mysql_query($query)or die ("No se pudo ejecutar la consulta"); 
while(
$fila mysql_fetch_array($result)) 
{
echo 
"<img src='ver.php?codigo= $fila[codigo]'>";  
?> <a href="javascript:NewWindow ('ver.php?codigo= 
<?php  echo "$fila[codigo]')" ?>"> <?php echo 
<img src='../../../../Imagenes sitio/Productos/zoom.jpg' border='0' 
title='Zoom Imagen $fila[codigo]'/></a>
<br><br>"
;
}
?>

queriendo como resultado algo como esto:

http://www.subituimagen.com.ar/viewe...=209289img.jpg

y aqui viene otra pregunta un poco mas compleja, bueno por lo menos para mi.
esto creo que sera necesario usar JavaScript,
bueno la cuestion es que al pasar el puntero sobre la imagen, en el espacio d ela derecha deben aparecer sus caracteristicas las cuales estan tambien en una BD, las imagenes estan contenidas en un iframe, entonces debo pasar los datos a la pagina madre y mostrarlos podras ayudarme con esto u orientarme en que foro puedo postear mi problema.

gracias por tu atención:arriba:

BrujoNic 03/08/2007 23:39

Re: Imagenes en MySQL
 
Por favor...

Hay una sección para PHP, esto es de BD y específicamente MySQL.

Bien por la respuesta, pero tratemos de mantener el orden para que los nuevos usuarios sepan donde colocar sus consultas.


La zona horaria es GMT -6. Ahora son las 01:44.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.