Comment uploader et télécharger des TRÈS gros fichiers dans MySQL (Blob)

Fermé
Neutrino3500 Messages postés 70 Date d'inscription lundi 11 novembre 2019 Statut Membre Dernière intervention 25 juillet 2020 - 11 nov. 2019 à 16:33
jordane45 Messages postés 38241 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 septembre 2024 - 15 nov. 2019 à 13:16
Bonjour, c'est dans le titre.
Cordialement.
A voir également:

2 réponses

NHenry Messages postés 15156 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 29 septembre 2024 335
11 nov. 2019 à 18:17
On ne mets pas de fichier dans la base de données.
On enregistre le fichier sur le serveur puis on fais un lien vers lui (nom de fichier, ID, ...)
0
Neutrino3500 Messages postés 70 Date d'inscription lundi 11 novembre 2019 Statut Membre Dernière intervention 25 juillet 2020
14 nov. 2019 à 17:51
Je sais, mais j'ai besoin de stocker les fichiers dans le base de données...
0
NHenry Messages postés 15156 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 29 septembre 2024 335
14 nov. 2019 à 18:47
Désolé, mais comme j'évite cette situation, je ne saurais comment t'aider.
0
yg_be Messages postés 23235 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 30 septembre 2024 Ambassadeur 1 539
Modifié le 14 nov. 2019 à 19:40
bonjour,
ceci est en anglais, mais les exemples en PHP me semblent très clairs.
en très bref:
$blob = fopen($filePath, 'rb');
$stmt->bindParam(':data', $blob, PDO::PARAM_LOB);

comme tu le vois, cela se fait après un upload "normal" d'un fichier.
0
jordane45 Messages postés 38241 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 septembre 2024 4 689
14 nov. 2019 à 23:18
Bonjour,

Il est également possible d'utiliser :
Au niveau de la bdd, un champ de type long text
Au niveau du code, lire le contenu du fichier avec un File_Read et faire un 64_encode du contenu
Puis d'insérer le contenu dans la bdd comme tu le ferais pour n'importe quelle valeur '"text"

Mais bon.. comme l'a indiqué NHenry... faut franchement éviter de stocker des fichier dans une BDD... (surtout mysql)
Cela alourdit énormément la base et donc la ralentit ....
0
Neutrino3500 Messages postés 70 Date d'inscription lundi 11 novembre 2019 Statut Membre Dernière intervention 25 juillet 2020
15 nov. 2019 à 12:55
Ça ne permet pas d'uploader des TRÈS gros fichiers (10Go par exemple)...
0
jordane45 Messages postés 38241 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 septembre 2024 4 689 > Neutrino3500 Messages postés 70 Date d'inscription lundi 11 novembre 2019 Statut Membre Dernière intervention 25 juillet 2020
15 nov. 2019 à 13:16
Ne confonds pas l'upload et le stockage...
Pour l'upload c'est une question de configuration au niveau du php.ini et de ton apache/nginx
0