IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WebDev Discussion :

Image Uploadée dans BDD et affichage [WB12]


Sujet :

WebDev

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 31
    Points : 26
    Points
    26
    Par défaut Image Uploadée dans BDD et affichage
    bonjour,

    Dans un formulaire que j'ai crée j'ai mis un champ pour uploader des images.
    Cela a l'air de fonctionner puisque je peux les retrouver dans mon dossier _WEB.
    j'ai lié ce champs a une table que j'ai appelé Pitcure.

    Mon probleme est d'afficher cette image. J'ai beau essayer rien ne fonctionne.
    Ma table est paramétrée pour accueillir une image(mémo binaire).
    je lie un champ image à ma requete SQL rien ne se passe. J'ai une image blanche lorsque je choisi une image provenant d'un memo binaire.
    Lorsque j essaye avec une zone repété meme chose...

    J'ai donc utilise WDmap pour voir si ma base contenait bien l'image...
    Surprise ma case est blanche et lorsque je clique dessus il m indique tout de meme une taille (105ko alors que limage uploadée devrai en faire qee 20) mais pas de nom rien d'autre...

    A l'aide

    merci

  2. #2
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    Apres avoir testé et regardé partout j'ai trouver que mon image n'etait en faite pas(ou mal) uploadé dans ma base de données car si je rajoute l'image directement dans la base avec webmap cela fonctionne tres bien.
    Dans la bases je vois que le type de fichier dans ma table picture est un BIN au lieu d'etre une image comme c est le cas lorsque je l'importe directment dans ma base de donnée...

    Donc pour l upload j'ai cree un champ upload liée a ma table picture ,a la fin de mon formulaire j'ai un bouton ok qui a pour code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    	Software.date = DateDuJour()
    	PageVersFichier()
    	HAjoute(Software)
    	RAZ()
    	HRAZ(Software)
    	PageAffiche(PAGE_Home)
    et dans ma base de données j'ai configuré une image en mode memo binaire. Mais mon image n'est pas dedans...

    une idée ?

  3. #3
    Membre habitué Avatar de S4F__
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    187
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 187
    Points : 159
    Points
    159
    Par défaut
    Pour enregistrer une image dans ta BdD, il faut utiliser la fonction HAttacheMemo...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    // Attache une image à l'enregistrement
    HAttacheMémo(Produit,Img_Produit,"C:\Images\Produit1.bmp",hMémoImg)
    // Transfère le contenu des champs dans le buffer du fichier
    EcranVersFichier()
    // Ajoute l'enregistrement
    HAjoute(Produit)
    Dans une des mes applications, l'utilisateur doit uploader une image de son pc et remplir un formulaire et sauvegarder le tout. Voila comment j'ai procéder. Jai fait uploader l'image par l'utilisateur. La je récupère le nom de cette image. Je la sauvegarde sur un serveur. Il remplit le formulaire et à l'enregistrement, je sauvegarde l'image en lui précisant qu'elle image il doit aller récupérer sur le serveur (le nom de l'image est dans une variable que j'ai récupérer après l'upload) et les champs (comme l'exemple ci-dessus).

    En espérant t'avoir aider. Bon dev,

  4. #4
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    je ne suis pas sur d'avoir tout compris.
    Toi apparemment l'utilisateur uploadais l'image et apres tu faisais remplir le questionnaire ?

    Moi tout ce trouve sur la meme page et l'upload est facultatif.
    J'ai tout mon formulaire et mon upload gerer uniquement avec un seul bouton OK dont j'ai essayé d implémenter ton code sans succes. (BDD rempli avec un BIN et d une taille de 100ko aucune idee de ou il me sors ca)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
            sNomfichier est une chaîne
    	sNomfichier = UploadNomFichier(SAI_Picture,Vrai)
     
    	// Attache une image à l'enregistrement
    	HAttacheMémo(Software,Picture,sNomfichier,hMémoImg)
     
    	Software.date = DateDuJour()
    	EcranVersFichier()
    	HAjoute(Software)
    	RAZ()
    	HRAZ(Software)
    	PageAffiche(PAGE_Home)
    sachant que nomfichier = C:\WebDev 12\Programmes\Moteur\Windows\TmpUpload\WEBDEV_0_1336.upl

    je galere vraiment...

  5. #5
    Membre habitué Avatar de S4F__
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    187
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 187
    Points : 159
    Points
    159
    Par défaut
    Non c'est tous sur la même page sauf que moi, il est obliger d'uploader pour pouvoir valider et enregistrer son formulaire (car l'image est importante dans mon application). Moi aussi j'ai pas mal galérer à faire " le traitement de l'image " dans mon application mais tout fonctionne bien maintenant.

    C'est normal que ça ne marche pas car il y a des erreurs dans ton code. Je débauche là, donc je t'aiderais demain matin. Je te donnerais et expliquerais le code que j'ai fait pour le traitement de l'image et l'enregistrement du formulaire. Je suis sur que cela va résoudre ton problème.

    Cordialement,

  6. #6
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    merci, bonne soirée

  7. #7
    Membre habitué Avatar de S4F__
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    187
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 187
    Points : 159
    Points
    159
    Par défaut
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    //SAI_Upload est mon champ d'upload
    //SAI_Nom_img est mon champ invisible qui me sert dans la récupération du nom de l'image
     
     
    //Déclaration des variables
    sFichier_source est une chaine
    sFichier_destination est une chaine
    sChemin_user est une chaine
    sImage est une chaine
     
    //Recherche du nom du fichier uploadé sur le serveur
    sFichier_source = UploadNomFichier(SAI_Upload)
    //Si Fichier_source existe, on le copie dans le répertoire des documents sur le serveur
    SI sFichier_source <> "" ALORS
    	sFichier_destination = UploadNomFichier(SAI_Upload, Faux)
    	sFichier_destination = "CHEMIN_SERVEUR\" + fExtraitChemin(sFichier_destination,fFichier+fExtension)
    	//Copie du fichier sur le serveur
    	fCopieFichier(sFichier_source,sFichier_destination)
    FIN
     
    //Récupération du nom de l'image que l'utilisateur upload
    sChemin_user = UploadNomFichier(SAI_Upload,Faux)
    SAI_Nom_img = ExtraitChaîne(sChemin_user, 1, "\", DepuisFin)
    sImage  = SAI_Nom_img..ValeurAffichée
     
    //Enregistrement des données 
    PageVersFichier()
    HAttacheMémo(<NOM_FICHIER>,<NOM_RUBRIQUE_IMG>,"CHEMIN_SERVEUR\"+sImage,hMémoImg)
    HAjoute(<NOM_FICHIER>)
    HRAZ(<NOM_FICHIER>)
    RAZ()
    Voila le code que j'utilise pour traiter mon image et enregistrer un formulaire que l'utilisateur remplie. Il y a peut-être des choses plus simple ou mieux mais je débute en programmation ^^ .. mais cela marche quand même parfaitement dans mon application. Essaye de te servir de ce code pour faire le tien, si j'ai bien compris ton problème cela te permettra de le résoudre. Bon dev,

  8. #8
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    Tout Fonctionne tres bien Merci beaucoup beaucoup .

    Peut tu juste m'expliquer pourquoi on a besoin d'un champ invisible ?

    merci encor

  9. #9
    Membre habitué Avatar de S4F__
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    187
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 187
    Points : 159
    Points
    159
    Par défaut
    Donc en faite je récupère avec UploadNomFichier(SAI_Upload,Faux), le chemin de l'image sur le poste de l'utilisateur (ex : C:\Documents and Settings\User\Mes documents\Mes images\Image.jpg). Sauf que pour qu'il me la retrouve sur le serveur où elle est uploadé, on a besoin de savoir juste le nom de l'image (ici Image.jpg). Donc enfaite dans mon champ invisible, je lui dit d'extraire le nom de l'image et de me récupérer le nom => de la fin au dernier \ avec ExtraitChaîne(sChemin_user, 1, "\", DepuisFin) .. Une fois le nom de l'image isolé (dans mon champ invisible), je la récupère en variable pour constituer la fin du chemin dans HAttacheMemo... Voila, j'espère que mes explications t'on un peu éclaircis ^^ .. Sinon n'oublie pas de marquer le message en résolu si ton problème est réglé ..

    Cordialement,

  10. #10
    Candidat au Club
    Femme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2011
    Messages : 2
    Points : 4
    Points
    4
    Par défaut
    Bonjour
    j'ai essayé avec le code que vous avez noter,mais j'ai eu ce message d'erreur
    Impossible d'ouvrir ou de lire le fichier <ASSIERAH_WEB_WEB\imageTelecharger\>.
    Le chemin d'accès spécifié est introuvable.

  11. #11
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Merci
    Ce code a tres fonctionné chez moi

  12. #12
    Nouveau Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Le champ de l'image n'est pas vide après RAZ()
    Bonjour,
    Je suis nouveau sur ce forum, quelqu'un pourrait me dire comment poster une discussion sur le forum, j'ai parcouru mon interface, je n'ai pas trouver de lien me permettant de lancer une discussion, peut être que mes sens sont devenus trompeurs.

    Je profite donc à vous exposer mon petit problème sur WD17.
    j'ai crée un fichier nommé PROPRIÉTAIRE dans lequel j'ai des rubriques, nom, prénom,...et photo. Par la suite j'ai crée une fenêtre pour manipuler ces dernières avec les boutons Ajouter,Modifier, Charger photo et Rechercher. Tout marche impeccablement,lorsque je fais des recherches sur une personne, le prog affiche les renseignements de la personne avec sa photo.

    Le hic est que lorsque,je clique sur Ajouter toutes les zones de saisie des rubriques sont RAZ sauf le champs Photo qui garde en mémoire l'ancienne image correspondant à la saisie précédente.

    Quelle manip ou quel code dois-je saisir sur le bouton Ajouter pour que le champs photo soit vide.

    Le code du bouton charger est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Photo = fSélecteurImage("\","","","",fCheminUNICODE)
    Photo..ImageMode = imgEtiré
    HGèreMémo(PROPRIETAIRE,"",hMémoOui)
    HAttacheMémo(PROPRIETAIRE,Photo,Photo)
    EcranVersFichier()
    Le code du bouton Ajouter:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    EcranVersFichier()
    HAjoute(PROPRIETAIRE)
    RAZ
    HRAZ(PROPRIETAIRE)
    Cordialement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. image uploader dans une liste uniquement en modification
    Par madelse dans le forum Développement Sharepoint
    Réponses: 2
    Dernier message: 22/04/2013, 12h23
  2. Réponses: 7
    Dernier message: 14/10/2011, 11h06
  3. Aide pour démarrer : Requête dans BDD et affichage résultats
    Par FredPerret dans le forum Langage SQL
    Réponses: 1
    Dernier message: 11/08/2010, 20h26
  4. [MySQL] Upload d'image avec insertion du chemin dans bdd
    Par DjChat dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 29/05/2008, 10h45
  5. Réponses: 1
    Dernier message: 01/06/2006, 09h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo