Maison  >  Article  >  base de données  >  Comment stocker des fichiers PDF sous forme de BLOB dans MySQL à l'aide de PHP ?

Comment stocker des fichiers PDF sous forme de BLOB dans MySQL à l'aide de PHP ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-24 03:52:02242parcourir

How to Store PDF Files as BLOBs in MySQL Using PHP?

Stockage de fichiers PDF sous forme de BLOB dans MySQL avec PHP

Le stockage de gros objets binaires (BLOB) tels que des fichiers PDF dans des bases de données peut être utile dans certains scénarios. Cet article explique comment stocker des fichiers PDF sous forme de BLOB dans MySQL à l'aide de PHP.

Insérer des fichiers PDF dans MySQL

Pour insérer un fichier PDF dans une table MySQL en tant que BLOB , vous pouvez suivre les étapes suivantes :

  1. Établissez une connexion à la base de données. Utilisez les fonctions MySQL telles que mysql_connect ou MySQL Improvementd Extension (MySQLi) pour vous connecter à la base de données.
  2. Préparez la requête SQL. Créez une instruction SQL INSERT qui inclut une colonne aBLOB pour stocker les données du fichier.
  3. Échapper au contenu du fichier. Pour empêcher l'injection SQL, utilisez la fonction mysql_real_escape_string de PHP (ou mysqli_real_escape_string) pour échapper au contenu du fichier avant de l'insérer dans la base de données.
  4. Exécutez la requête. Utilisez mysql_query ou mysqli_query pour exécuter l'instruction INSERT.

Exemple de code

L'extrait de code PHP suivant montre comment stocker un fichier PDF dans une table MySQL :

<code class="php">$fileContents = file_get_contents('/path/to/file.pdf');
$escapedFileContents = mysql_real_escape_string($fileContents);

$query = 'INSERT INTO files (name, data) VALUES ("pdf_file", "' . $escapedFileContents . '");';
$result = mysql_query($query);</code>

Remarque sur Obsolescence

Il est important de noter que les fonctions MySQL comme mysql_query sont obsolètes et ne doivent pas être utilisées dans du nouveau code. Depuis PHP 7, les fonctions MySQL ont été supprimées. Utilisez plutôt MySQLi ou PHP Data Objects (PDO) pour les interactions avec la base de données. Les exemples mis à jour dans la réponse reflètent ces changements.

Considérations

Bien que le stockage de fichiers sous forme de BLOB dans des bases de données puisse être pratique, ce n'est généralement pas la meilleure pratique. Les BLOB peuvent entraîner une surcharge des tables et des problèmes de performances. Une approche préférable consiste à stocker le chemin du fichier dans la base de données et à stocker le fichier lui-même sur le système 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!

Déclaration:
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