Maison >développement back-end >tutoriel php >Comment puis-je afficher des images stockées sous forme de BLOB dans MySQL ?
Affichage d'images à partir d'une colonne BLOB MySQL
Dans votre quête pour afficher des images stockées sous forme de données BLOB dans une base de données MySQL, vous avez rencontré la question de la présentation des données binaires comme une image réelle. Examinons les solutions.
Solution 1 : Encodage Base64 en ligne
Si vous avez affaire à un petit nombre d'images, vous pouvez les encoder en base64. Cette approche convertit les données binaires en une chaîne compacte qui peut être intégrée directement dans votre HTML :
echo '<dt><strong>Technician Image:</strong></dt><dd>' . '<img src="data:image/jpeg;base64,' . base64_encode($row2['image']) . '" width="290" height="290">' . "</dd>";
Solution 2 : Fichier proxy PHP
Une approche plus efficace pour de nombreuses images consiste à créer un fichier proxy PHP qui récupère l'image de la base de données en fonction d'un identifiant paramètre :
<img src="image.php?id=<?php echo $image_id; ?>" />
<?php $id = (isset($_GET['id']) && is_numeric($_GET['id'])) ? intval($_GET['id']) : 0; $image = getImageFromDatabase($id); header('Content-Type: image/jpeg'); echo $image; ?>
Remarque : Pour implémenter correctement ces solutions, assurez-vous que le type MIME du fichier image est défini sur image/jpeg dans la configuration de votre serveur.
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!