Próbuję wyświetlić 5 ostatnich zdjęć przesłanych do mojego "sklepu" tabeli w MySql. Jestem kompletnym noobem do PHP i baz danych i dużo czytałem na ten temat, ale bez powodzenia.Jak wyświetlić obraz BLOB przechowywany w bazie danych MySql?
Mogę przechowywać i wyświetlać obrazy pojedynczo, ale chciałbym mieć galerię sortów, aby pokazać ostatnie 5 przesłanych.
wszelkie porady lub pomoc byłyby bardzo cenne dzięki!
p.s. Wiem, że to marszczyło brwi na przechowywanie zdjęć do takiej bazy danych, ale ten projekt jest tylko dla praktyki.
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;
?>
sprawdzić ten : http://stackoverflow.com/questions/118144/whats-to-most-efficient-way-to-select-the-last-n-rows-in-a-table-without-chang – Vucko