Affichage des images BLOB de la base de données MySQL
Dans votre question, vous avez exprimé votre intérêt à présenter les cinq dernières images BLOB téléchargées dans votre table de base de données MySQL. nommé « magasin ». En tant que débutant en PHP et en gestion de bases de données, cette tâche peut sembler ardue. Décomposons-le en étapes gérables.
Stockage des images dans MySQL
Votre code pour stocker les images dans la base de données semble être fonctionnel. Il utilise file_get_contents() pour lire les données binaires du fichier téléchargé et addlashes() pour échapper aux caractères spéciaux. Vous insérez ensuite ces données dans le tableau « magasin » avec le nom et la taille de l'image.
Récupération des cinq dernières images
Pour récupérer les cinq dernières images téléchargées, vous pouvez utiliser une requête MySQL comme celle-ci :
<code class="sql">SELECT id, image FROM store ORDER BY id DESC LIMIT 5</code>
Cette requête classe les résultats par ordre décroissant de la colonne id, récupérant ainsi les cinq dernières images insérées.
Affichage de la Images
Pour afficher les images sur la page Web, vous pouvez utiliser le code PHP suivant :
<code class="php">$result = mysqli_query($db, $sql); // Execute the SQL query while ($row = mysqli_fetch_assoc($result)) { // Iterate over the result rows echo "<img src='get.php?id=" . $row['id'] . "' />"; // Display the image using the `get.php` script }</code>
Le code ci-dessus utilise une boucle while pour parcourir les lignes de résultats et affiche une balise img pour chaque ligne. La source de l'image est définie sur get.php, qui est un script PHP distinct chargé de récupérer les données d'image réelles de la base de données.
get.php Script
Le script get.php devrait ressembler à ceci :
<code class="php">$id = addslashes($_GET['id']); // Get the image ID from the URL $image = mysqli_query($db, "SELECT image FROM store WHERE id=$id"); // Fetch the image data $image = mysqli_fetch_assoc($image); // Retrieve the image data as an array header("Content-type: image/jpeg"); // Set the content type for the image echo $image['image']; // Output the binary image data</code>
Ce script récupère les données d'image pour l'identifiant spécifié et les affiche avec le type MIME correct, permettant au navigateur de restituer l'image.
Conclusion
En suivant ces étapes, vous pouvez afficher avec succès une galerie des cinq dernières images téléchargées sur votre base de données MySQL en PHP. N'oubliez pas d'ajuster la requête SQL et le code PHP en fonction des noms de vos tables et colonnes, et pensez à optimiser les performances de votre code, surtout si vous travaillez avec des fichiers image volumineux.
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!