store images mysql php code example
Example 1: how to retrieve image from database in php mysqli
// database connection
$conn = mysqli_connect("localhost", "root", "", "student");
// Fetch image from database
$img = mysqli_query($conn, "SELECT * FROM student_table");
while ($row = mysqli_fetch_array($img)) {
echo "<img src='images/".$row['imagename']."' >";
}
Example 2: how to store and retrieve image from database in php
// Get the name of images
$Get_image_name = $_FILES['image']['name'];
// image Path
$image_Path = "images/".basename($Get_image_name);
$sql = "INSERT INTO student_table (imagename, contact) VALUES ('$Get_image_name', 'USA')";
// Run SQL query
mysqli_query($conn, $sql);
if (move_uploaded_file($_FILES['image']['tmp_name'], $image_Path)) {
echo "Your Image uploaded successfully";
}else{
echo "Not Insert Image";
}
}
Example 3: download image from mysql using php
//You can save this to test.php and call it with test.php?id=1 for example
<?php
//Database class with PDO (MySQL/MariaDB)
require_once("database.php"); //If you need this, write to [email protected] i'll send you the db class
//Connect to database
$database = new Database();
$pdo = $database->dbConnection();
//Get ID from GET (better POST but for easy debug...)
if (isset($_GET["id"])) {
$id=(int)$_GET["id"];
} else {
echo "Wrong input";
exit;
}
//Prepare PDO SQL
$q = $pdo->prepare("SELECT * FROM `table_with_image` WHERE `id`=:p_id");
//Add some data
$q->bindparam(":p_id", $id); //Filter user input, no sanitize necessary here
//Do the db query
$q->execute();
//If something found (always only 1 record!)
if ($q->rowCount() == 1) {
//Get the content of the record into $row
$row = $q->fetch(PDO::FETCH_ASSOC); //Everything with id=$id should be in record buffer
//This is the image blob mysql item
$image = $row['image'];
//Clean disconnect
$database->disconnect();
//Now start the header, caution: do not output any other header or other data!
header("Content-type: image/jpeg");
header('Content-Disposition: attachment; filename="table_with_image_image'.$id.'.jpg"');
header("Content-Transfer-Encoding: binary");
header('Expires: 0');
header('Pragma: no-cache');
header("Content-Length: ".strlen($image));
//Output plain image from db
echo $image;
} else {
//Nothing found with that id, output some error
$database->disconnect();
echo "No image found";
}
//No output and exceution further this point
exit();