
mostrar imagenes de una base de datos
Publicado por mina (4 intervenciones) el 11/11/2014 16:00:15
Hola que tal! Estoy haciendo un pequeño formulario en php para subir varias imágenes, a la base de datos y también a una carpeta que llamo "imagenes"
El tema es el siguiente, no se como hacer que se "muestren" al archivo lo hice en base a un ejemplo que vi en internet..
Este es archivo de conexión (conexión.php)
este es el formulario (formulario.php)
este es archivo que lo procesa (procesarArchivos.php) -- no quiero q en este archivo se muestren las imagenes, solo que haga el proceso de subirlas a la base de datos y a la carpeta-- puse idUsuario e idProducto, porque la tabla Imagen (tendra los campos: idImg, IdUsuario,IdProducto,nombImg,tipoImg), en donde idProducto= se relacionará con la tabla productos
E idUsuario = se relacionará con la tabla usuario( es decir que usuario subio esa imagen de producto).. Por ahora los deje con valores estaticos, ("1" y "2") para no complicarme con eso todavia
Ahora hice este archivo que me va tomar las imagenes de la base de datos: (obtenerFotografia.php)
Y por ultimo hice otro archivo para que utilice esa funcion y muestre la imagen final (mostrarImagen.php), le puse el valor "2" porque por ahora quiero que me muestre las imagenes de "X" producto..
Bueno el tema es que si bien se inserta en la tabla; imagen (idImg, idUsuario, idProducto, nombImg, tipoImagen) no se como hacer para que muestre las imágenes.. Porque podría mostrarlas desde la carpeta "imagenes" que tengo creada, pero quisiera saber como hacer de la otra forma
aclaracion: la base de datos se llama: imagenesbd, y la tabla imagen: tiene los campos
idImg: int Auto
idUsuario: int
idProducto: int
nombImg: MEDIUMBLOB
tipoImagen: varchar(30)
muchas gracias a todos lo que lo lean, y dejaran sus comentarios :))))
El tema es el siguiente, no se como hacer que se "muestren" al archivo lo hice en base a un ejemplo que vi en internet..
Este es archivo de conexión (conexión.php)
1
2
3
4
5
6
7
8
9
10
<?php
function conectarse(){
$server="localhost";
$username="root";
$password="";
$bd='imagenesbd';
$conexion= new mysqli($server,$username,$password,$bd)or die("no se ha podido establecer la conexion");
return $conexion;
}
?>
este es el formulario (formulario.php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Multifile Upload by elporfirio.com</title>
</head>
<body>
<?php
$max_upload = (int)(ini_get('upload_max_filesize'));
$max_post = (int)(ini_get('post_max_size'));
$memory_limit = (int)(ini_get('memory_limit'));
$upload_mb = min($max_upload, $max_post, $memory_limit);
echo "Tamaño maximo permitido <strong>$upload_mb Mb</strong><br>";
?>
<form action="procesarArchivos.php" method="post" enctype="multipart/form-data">
<br>
<label>Archivo 1</label>
<input type="file" name="archivo[]">
<br>
<label>Archivo 2</label>
<input type="file" name="archivo[]">
<br>
<label>Archivo 3</label>
<input type="file" name="archivo[]">
<br>
<label>Archivo 4</label>
<input type="file" name="archivo[]">
<br>
<label>Archivo 5</label>
<input type="file" name="archivo[]">
<br>
<input type="submit" value="Guardar Archivos">
</form>
</body>
</html>
este es archivo que lo procesa (procesarArchivos.php) -- no quiero q en este archivo se muestren las imagenes, solo que haga el proceso de subirlas a la base de datos y a la carpeta-- puse idUsuario e idProducto, porque la tabla Imagen (tendra los campos: idImg, IdUsuario,IdProducto,nombImg,tipoImg), en donde idProducto= se relacionará con la tabla productos
E idUsuario = se relacionará con la tabla usuario( es decir que usuario subio esa imagen de producto).. Por ahora los deje con valores estaticos, ("1" y "2") para no complicarme con eso todavia
Ahora hice este archivo que me va tomar las imagenes de la base de datos: (obtenerFotografia.php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
function mostrarImgs($val,$conexion){
$consulta= "SELECT * FROM imagen WHERE idProducto = '$val'";
$resultado = $conexion->query($consulta);
while ($f= $resultado->fetch_assoc()){
//ahora solamente debemos mostrar la imagen
echo $f['nombImg'];
}
}
?>
Y por ultimo hice otro archivo para que utilice esa funcion y muestre la imagen final (mostrarImagen.php), le puse el valor "2" porque por ahora quiero que me muestre las imagenes de "X" producto..
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
include 'conexion.php';
$conexion = conectarse();
include 'obtenerFotografia.php';
?>
<! DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<?php
mostrarImgs(2,$conexion);
?>
</body>
</html>
Bueno el tema es que si bien se inserta en la tabla; imagen (idImg, idUsuario, idProducto, nombImg, tipoImagen) no se como hacer para que muestre las imágenes.. Porque podría mostrarlas desde la carpeta "imagenes" que tengo creada, pero quisiera saber como hacer de la otra forma
aclaracion: la base de datos se llama: imagenesbd, y la tabla imagen: tiene los campos
idImg: int Auto
idUsuario: int
idProducto: int
nombImg: MEDIUMBLOB
tipoImagen: varchar(30)
muchas gracias a todos lo que lo lean, y dejaran sus comentarios :))))
Valora esta pregunta


0