Rumah >pangkalan data >tutorial mysql >Bagaimanakah kita boleh mendapatkan dan memaparkan 5 imej terakhir yang dimuat naik yang disimpan sebagai BLOB dalam jadual \'stor\' MySQL menggunakan PHP?

Bagaimanakah kita boleh mendapatkan dan memaparkan 5 imej terakhir yang dimuat naik yang disimpan sebagai BLOB dalam jadual \'stor\' MySQL menggunakan PHP?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-02 07:32:30551semak imbas

How can we retrieve and display the last 5 uploaded images stored as BLOBs in a MySQL

Memaparkan Imej BLOB yang Disimpan dalam Pangkalan Data MySQL

Dalam soalan pengaturcaraan ini, kami menghadapi cabaran untuk memaparkan 5 imej terakhir yang dimuat naik ke " simpan" jadual dalam MySQL. Sebagai orang baru dalam kedua-dua PHP dan pengurusan pangkalan data, penyoal menyatakan kesukaran dalam melaksanakan penyelesaian.

Untuk menangani isu ini, kami boleh menyelidiki kod yang disediakan dan menawarkan penyelesaian yang mengambil dan memaparkan imej yang dikehendaki.

Sambungan Pangkalan Data dan Storan Imej

Skrip PHP memulakan sambungan pangkalan data dan menyimpan imej dalam jadual "simpan". Pembolehubah $imej mengandungi perwakilan binari bagi imej yang dimuat naik, yang disimpan dalam medan BLOB dalam pangkalan data.

$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
if (!$insert = mysql_query("INSERT INTO store VALUES ('', '$image_name', '$image')"))
    echo "Problem Uploading Image.";

Pendapatan dan Paparan Imej

Kepada mendapatkan semula dan memaparkan imej, skrip PHP yang berasingan (get.php) digunakan. Skrip ini menerima parameter (id) yang mewakili ID imej dalam pangkalan data.

$id = addslashes($_REQUEST['id']);
$image = mysql_query("SELECT * FROM store WHERE id=$id");
$image = mysql_fetch_assoc($image);
$image = $image['image'];

Imej yang diambil ($imej) kemudiannya dikodkan dan dipaparkan sebagai imej dalam teg HTML.

header("Content-type: image/jpeg");
echo $image;

Penyelesaian untuk Memaparkan 5 Imej Terakhir

Untuk memaparkan 5 imej terakhir yang dimuat naik, kami boleh melaksanakan logik berikut:

<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>

Kod ini mendapatkan semula binari perwakilan 5 imej terakhir daripada jadual "kedai" dalam susunan kronologi terbalik. Data perduaan setiap imej ($arraySomething) dihantar ke skrip imgView.php untuk pemaparan menggunakan atribut src dalam teg img HTML.

Dengan melaksanakan penyelesaian ini, pengguna boleh memaparkan 5 imej terakhir yang dimuat naik dengan berkesan dalam galeri atau sebarang format yang diingini.

Atas ialah kandungan terperinci Bagaimanakah kita boleh mendapatkan dan memaparkan 5 imej terakhir yang dimuat naik yang disimpan sebagai BLOB dalam jadual \'stor\' MySQL menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn