Displaying BLOB Images Stored in MySQL Database
In this programming question, we encounter the challenge of displaying the last 5 images uploaded to a "store" table in MySQL. As a novice in both PHP and database management, the questioner expresses difficulty in implementing a solution.
To address this issue, we can delve into the provided code and offer a solution that retrieves and displays the desired images.
Database Connection and Image Storage
The PHP script initiates a database connection and stores images in the "store" table. The $image variable contains the binary representation of the uploaded image, which is saved in a BLOB field in the database.
$image = addslashes(file_get_contents($_FILES['image']['tmp_name'])); if (!$insert = mysql_query("INSERT INTO store VALUES ('', '$image_name', '$image')")) echo "Problem Uploading Image.";
Image Retrieval and Display
To retrieve and display the images, a separate PHP script (get.php) is used. This script accepts a parameter (id) representing the image's ID in the database.
$id = addslashes($_REQUEST['id']); $image = mysql_query("SELECT * FROM store WHERE id=$id"); $image = mysql_fetch_assoc($image); $image = $image['image'];
The retrieved image ($image) is then encoded and displayed as an image within HTML tags.
header("Content-type: image/jpeg"); echo $image;
Solution for Displaying Last 5 Images
To display the last 5 uploaded images, we can implement the following logic:
<code class="php">$sql = "SELECT image FROM `store` ORDER BY id DESC LIMIT 5"; $result = mysqli_query($db, $sql); while ($arraySomething = mysqli_fetch_array($result)) { echo "<img src='php/imgView.php?imgId=" . $arraySomething . "' />"; }</code>
This code retrieves the binary representation of the last 5 images from the "store" table in reverse chronological order. Each image's binary data ($arraySomething) is passed to imgView.php script for rendering using src attribute within HTML img tags.
By implementing this solution, the user can effectively display the last 5 uploaded images in a gallery or any desired format.
The above is the detailed content of How can we retrieve and display the last 5 uploaded images stored as BLOBs in a MySQL \"store\" table using PHP?. For more information, please follow other related articles on the PHP Chinese website!