utilizando una subir solo ruta mostrar modificar imagenes imagen guardar guardadas eliminar desde datos con campo almacenadas almacenada php html mysql image blob

una - mostrar imagenes guardadas en base de datos php



¿Cómo mostrar una imagen BLOB almacenada en la base de datos MySql? (3)

Esto es lo que usé cuando quería hacer algo así ... ¡hace mucho tiempo! = P

$sql = "SELECT image FROM table WHERE cond ORDER BY xxxx DESC LIMIT 5"; $result = mysqli_query($db,$sql); while($arraySomething = mysqli_fetch_array($result)) { echo "<img src=''php/imgView.php?imgId=".$arraySomething."'' />"; }

Estoy tratando de mostrar las últimas 5 imágenes cargadas en mi tabla "store" en MySql. Soy un novato completo para PHP y bases de datos y he estado leyendo mucho sobre cómo hacer esto, pero no tuve suerte.

Puedo almacenar y mostrar imágenes una a la vez, pero me gustaría poder tener una galería de clases para mostrar los últimos 5 cargados.

cualquier consejo o ayuda sería muy apreciado gracias!

ps. Sé que no está bien almacenar las imágenes en una base de datos como esta, pero este proyecto es solo para practicar.

index.php

<!DOCTYPE html> <html> <head> <title>Project One</title> </head> <body> <form action="index.php" method="POST" enctype="multipart/form-data"> File: <input type="file" name="image"> <input type="submit" value="Upload"> <form> <p /> <?php //connect to database (connect to server) (select correct DB) //file properties $file = $_FILES[''image''][''tmp_name'']; if (!isset($file)) echo "please select an image."; else { $image = addslashes(file_get_contents($_FILES[''image''][''tmp_name''])); $image_name = $_FILES[''image''][''name'']; $image_size = getimagesize($_FILES[''image''][''tmp_name'']); if($image_size==FALSE) echo "That''s not an image."; else { if (!$insert = mysql_query("INSERT INTO store VALUES ('''', ''$image_name'', ''$image'')")) echo "Problem Uploading Image."; else { $lastid = mysql_insert_id(); echo "Image uploaded. <p />Your image:<p /><img src=get.php?id=$lastid>"; } } } ?> <p /> <p /> <a href="http://WEBSITE.com/gallery.php"> Go to Gallery </a> </body> </html>

get.php

<?php //connect to database (connect to server) (select correct DB) $id = addslashes($_REQUEST[''id'']); $image = mysql_query("SELECT * FROM store WHERE id=$id"); $image = mysql_fetch_assoc($image); $image = $image[''image'']; header("Content-type: image/jpeg"); echo $image; ?>


Intento el primer acercamiento con el header(''content-type: image/jpeg''); pero terminan con una imagen no mostrada. Después de algunos google a través del sitio web encontré la solución que puedo mostrar la imagen de la base de datos a mi página

prueba esto:

mysql_connect("localhost","root","")or die("Cannot connect to database"); //keep your db name mysql_select_db("example_db") or die("Cannot select database"); $sql = "SELECT * FROM `article` where `id` = 56"; // manipulate id ok $sth = mysql_query($sql); $result=mysql_fetch_array($sth); // this is code to display echo ''<img src="data:image/jpeg;base64,''.base64_encode( $result[''image_file''] ).''"/>''


mysql_connect("localhost","root","")or die("Cannot connect to database"); //keep your db name mysql_select_db("example_db") or die("Cannot select database"); $sql = "SELECT * FROM `article` where `id` = 56"; // manipulate id ok $sth = mysql_query($sql); $result=mysql_fetch_array($sth); // this is code to display echo ''<img src="data:image/jpeg;base64,''.base64_encode( $result[''image_file''] ).''"/> width="xxxx" height="xxxx"'';

Agregue la altura y el ancho también