Maison > base de données > tutoriel mysql > Comment insérer en toute sécurité des données binaires (blobs) dans MySQL à l'aide de PHP ?

Comment insérer en toute sécurité des données binaires (blobs) dans MySQL à l'aide de PHP ?

Linda Hamilton
Libérer: 2024-12-15 05:13:11
original
801 Les gens l'ont consulté

How to Safely Insert Binary Data (Blobs) into MySQL Using PHP?

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

Pour stocker efficacement des données binaires, telles que des images, dans des bases de données MySQL à l'aide de PHP, il est crucial de évitez les pièges courants.

Piège : Tentative d'insertion d'une fonction le résultat de l'appel directement dans une requête MySQL.

$sql = "INSERT INTO ImageStore(ImageId,Image)
        VALUES('$this->image_id','file_get_contents($tmp_image)')";
Copier après la connexion

Solution 1 : Concaténer explicitement le résultat de l'appel de fonction.

$sql = "INSERT INTO ImageStore(ImageId,Image)
        VALUES('$this->image_id','" . file_get_contents($tmp_image) . "')";
Copier après la connexion
Copier après la connexion

Piège : Ne pas nettoyer les données binaires avant de les insérer dans un requête.

$sql = "INSERT INTO ImageStore(ImageId,Image)
        VALUES('$this->image_id','" . file_get_contents($tmp_image) . "')";
Copier après la connexion
Copier après la connexion

Solution 2 : Échapper aux données binaires à l'aide de mysql_escape_string.

$sql = "INSERT INTO ImageStore(ImageId,Image)
        VALUES('$this->image_id','" . mysql_escape_string(file_get_contents($tmp_image)) . "')";
Copier après la connexion

Piège : Stockage de données binaires volumineuses directement dans la base de données peut gonfler la base de données.

Solution 3 : Envisagez des méthodes de stockage alternatives pour les données binaires, telles que les systèmes de stockage de fichiers.

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