Maison > développement back-end > tutoriel php > Comment afficher les images BLOB d'une base de données MySQL en PHP ?

Comment afficher les images BLOB d'une base de données MySQL en PHP ?

Linda Hamilton
Libérer: 2024-11-22 06:27:13
original
410 Les gens l'ont consulté

How to Display BLOB Images from a MySQL Database in PHP?

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

Dans votre quête pour afficher les images BLOB de votre base de données MySQL, vous avez rencontré un problème où votre La page PHP affiche l'image sous forme de données binaires au lieu d'une image réelle. Examinons la solution pour résoudre ce problème.

L'erreur que vous voyez provient de l'absence d'une déclaration d'en-tête "Content-Type" appropriée. Cet en-tête informe le navigateur du type de données attendu de la réponse. Dans votre cas, vous devez spécifier que la réponse est une image de type "image/jpeg".

Encodage Base64 en ligne (recommandé pour les images limitées)

Pour un petit nombre d'images, vous pouvez utiliser l'encodage base64 en ligne. Voici comment l'implémenter :

echo '<dt><strong>Technician Image:</strong></dt><dd>'
     . '<img src="data:image/jpeg;base64,' . base64_encode($row2['image']) . '" width="290" height="290">'
     . '</dd>';
Copier après la connexion

Création d'un fichier image PHP (recommandé pour de nombreuses images)

Si vous avez un grand nombre d'images à afficher, une meilleure approche consiste à créer un fichier PHP distinct qui gère la récupération et la sortie des images. Vos fichiers HTML et PHP ressembleraient à ceci :

HTML :

<img src="image.php?id=<?php echo $image_id; ?>" />
Copier après la connexion

PHP :

<?php
$id = (isset($_GET['id']) &amp;&amp; is_numeric($_GET['id'])) ? intval($_GET['id']) : 0;
$image = getImageFromDatabase($id); // your code to fetch the image

header('Content-Type: image/jpeg');
echo $image;
?>
Copier après la connexion

En spécifiant correctement l'en-tête "Content-Type", vous demanderez au navigateur de restituer les données sous forme d'image, résolvant ainsi votre affichage problème.

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