How To Read An Image From MySQL And Display It Using PHP

To read an image from a MySQL database and display it in PHP, you can follow these steps:

  1. Retrieve the binary data of the image from the database using an SQL SELECT statement.

For example, you can retrieve the binary data of the image from a table named “my_table” using the following SQL statement:

SELECT image FROM my_table WHERE id = 1;

This will retrieve the binary data of the image with an ID of 1 from the “image” column of the “my_table” table.

  1. Convert the binary data to an image format that can be displayed in a web browser. You can do this using the PHP “imagecreatefromstring” function.

For example, you can convert the binary data to a JPEG image using the following code:

$image_data = // retrieve the binary data from the database
$image = imagecreatefromstring($image_data);
  1. Display the image in the web page using the PHP “header” and “imagejpeg” functions.

For example, you can display the image in a web page by sending the appropriate HTTP headers and outputting the image data as a JPEG:

header('Content-Type: image/jpeg');
imagejpeg($image);

This will send the appropriate HTTP headers to the web browser and output the image data as a JPEG, which the browser will display in the page.

Here’s the complete example:

// Retrieve the binary data of the image from the database
$sql = "SELECT image FROM my_table WHERE id = 1";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($result);
$image_data = $row['image'];

// Convert the binary data to a JPEG image
$image = imagecreatefromstring($image_data);

// Display the image in the web page
header('Content-Type: image/jpeg');
imagejpeg($image);

Note: In this example, $conn is a variable that holds the MySQL database connection. You’ll need to establish a database connection before running the query. Also, make sure to replace the table name and ID with your own values.

Leave a Reply

Proudly powered by WordPress | Theme: Code Blog by Crimson Themes.