Bonjour à tous, voici mon problème :
Mon programme a pour but de créer des comptes utilisateurs avec stockage de leur photo.
J'affiche dans un TImage un image donc issue d'un OpenPictureDialog (fomat bmp & jpeg pour l'instant).
Je souhaite sauvegarder cette image mais j'hésite entre ces deux solutions :
1) Je crée un dossier Image dans lequel chaque image sera stockée avec comme nom l'Id (de la BdD) de l'utilisateur.
2) Je stocke en tant que Blob les photos dans ma BdD Access (ma préférée).
J'ai fouillé un peu pour trouver des exemples de blob mais rien de fini n'est proposé...
Voici un bout de code que j'ai trouvé pour stocker mon image en tant que Blob :
* A noter que :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 void __fastcall TAnniversaire::Btn_ENVOYER_IMAGEClick(TObject *Sender) { Q_Ajouter->Close(); Q_Ajouter->SQL->Clear(); //////////////// AJOUTER UNE PHOTO /////////////////////////////////////// Q_Ajouter->SQL->Add("INSERT INTO t_personnes (photo)"); Q_Ajouter->SQL->Add("Values(:PFichier)"); Q_Ajouter->ParamCheck = true; //Q_Ajouter->Parameters->ParamByName("PFichier")->LoadFromFile("C:\\Users\\__sPiKe__\\Desktop\\Projets\\Anniversaire\\Debug\\Images\\bmp.bmp",ftBlob); Q_Ajouter->Parameters->ParamByName("PFichier")->LoadFromFile(OPD_Tof->FileName.c_str(),ftBlob); try { Q_Ajouter->ExecSQL(); } catch(const Exception &E) { MessageBox(Handle,"Erreur","",MB_OK); } }
Je ne sais pas si ça fonctionne vraiment, je pense que oui mais l'idéal serait de trouver l'image affichée dans le TImage.C:\\Users\\__sPiKe__\\Desktop\\Projets\\Anniversaire\\Debug\\Images\\bmp.bmp
OPD_Tof->FileName.c_str()
* Le code compile, aucune erreur, le programme ne plante pas et dans ma base de données je vois bien un enregistrement de type Donnée binaire qui s'ajoute. Mais impossible pour moi de voir si cette donnée contient bien l'image...
Je m'en remet donc à vous
Merci bcp.
Partager