Maison > base de données > tutoriel mysql > Comment pouvons-nous récupérer et afficher les 5 dernières images téléchargées stockées sous forme de BLOB dans une table MySQL \'store\' en utilisant PHP ?

Comment pouvons-nous récupérer et afficher les 5 dernières images téléchargées stockées sous forme de BLOB dans une table MySQL \'store\' en utilisant PHP ?

Mary-Kate Olsen
Libérer: 2024-11-02 07:32:30
original
583 Les gens l'ont consulté

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

Affichage des images BLOB stockées dans la base de données MySQL

Dans cette question de programmation, nous rencontrons le défi d'afficher les 5 dernières images téléchargées dans un " store" dans MySQL. En tant que novice en PHP et en gestion de bases de données, le questionneur exprime des difficultés à mettre en œuvre une solution.

Pour résoudre ce problème, nous pouvons approfondir le code fourni et proposer une solution qui récupère et affiche les images souhaitées.

Connexion à la base de données et stockage des images

Le script PHP initie une connexion à la base de données et stocke les images dans la table "store". La variable $image contient la représentation binaire de l'image téléchargée, qui est enregistrée dans un champ BLOB de la base de données.

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

Récupération et affichage d'images

Pour récupérer et afficher les images, un script PHP distinct (get.php) est utilisé. Ce script accepte un paramètre (id) représentant l'ID de l'image dans la base de données.

$id = addslashes($_REQUEST['id']);
$image = mysql_query("SELECT * FROM store WHERE id=$id");
$image = mysql_fetch_assoc($image);
$image = $image['image'];
Copier après la connexion

L'image récupérée ($image) est ensuite encodée et affichée sous forme d'image dans des balises HTML.

header("Content-type: image/jpeg");
echo $image;
Copier après la connexion

Solution pour afficher les 5 dernières images

Pour afficher les 5 dernières images téléchargées, nous pouvons implémenter la logique suivante :

<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>
Copier après la connexion

Ce code récupère le binaire représentation des 5 dernières images du tableau "magasin" dans l'ordre chronologique inverse. Les données binaires de chaque image ($arraySomething) sont transmises au script imgView.php pour le rendu à l'aide de l'attribut src dans les balises HTML img.

En implémentant cette solution, l'utilisateur peut afficher efficacement les 5 dernières images téléchargées dans une galerie ou n'importe quel format souhaité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal