"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment insérer correctement les blobs (images) dans MySQL à l'aide de PHP?

Comment insérer correctement les blobs (images) dans MySQL à l'aide de PHP?

Publié le 2025-06-14
Parcourir:444

How to Properly Insert Blobs (Images) into MySQL using PHP?

Insérez des blobs dans les bases de données MySQL avec PHP

Lorsque vous essayez de stocker une image dans une base de données MySQL, vous pouvez rencontrer un problème. Ce guide fournira des solutions pour stocker avec succès vos données d'image.

Issue

 
$ sql = "INSERT INTO ImageStore (ImageId, image)
valeurs ('$ this- & gt; image_id', 'file_get_contents ($ tmp_image)') ";
pre>

String en php, mais le fichier de fonction_get_get_get ($ tmp_image) n'est pas évalué avant la création de la chaîne. Par conséquent, les données binaires réelles ne sont pas insérées.

Solution 1

Pour résoudre ce problème, vous devez concaténer explicitement le résultat du résultat de L'appel de fonction:

 
$ sql = "Insérer dans ImageStore (imageId, image)
valeurs ('$ this- & gt; image_id', '". File_get_contents ($ tmp_image)."') ";
pre>

Solution 2

De plus, assurez-vous que les caractères des données binaires qui pourraient interférer avec la requête sont échappés:

 
$ sql = "Insérer dans ImageStore (imageId, image)
valeurs ('$ this- & gt; image_id', '". mysql_escape_string ( file_get_contents ($ tmp_image)). "')";
pre>

Solution 3

Le stockage de grandes données binaires dans une base de données n'est généralement pas recommandée. Il peut entraîner des problèmes de performances et des ballonnements de base de données. Envisagez d'utiliser un système de fichiers séparé pour stocker vos images à la place.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3