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

VB.NET Discussion :

Insérer une photo sur base des donnes


Sujet :

VB.NET

  1. #1
    Membre à l'essai
    Inscrit en
    Décembre 2007
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 20
    Points : 18
    Points
    18
    Par défaut Insérer une photo sur base des donnes
    bonjour,

    je développe une application de gestion des eleves d'une établissement scolaire

    pour cela , je veux insérer les photos des élèves dans la base des données ( je utilise ACCESS et SQL SERVER)

    je développe mon projet sous visuel basic dot net 2003.

    merci pour votre aide

  2. #2
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    Tu dois avoir un champ Image pour SqlServer ou OLE Object pour Access.

    après tu dois passer à ce champ les octets de ton ton image.

    au final il ne faut pas oublier de sauver le type de fichier pour que tu puisses l'interpréter.

  3. #3
    Membre à l'essai
    Inscrit en
    Décembre 2007
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 20
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par bossun Voir le message
    Tu dois avoir un champ Image pour SqlServer ou OLE Object pour Access.

    après tu dois passer à ce champ les octets de ton ton image.

    au final il ne faut pas oublier de sauver le type de fichier pour que tu puisses l'interpréter.
    mais comment ?

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Pour obtenir les données brutes d'une image :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Public Function GetImageBytes(img As Image) As Byte()
        Dim ms As New MemoryStream()
        img.Save(ms, ImageFormat.Jpg) ' ou autre format...
        Return ms.GetBuffer()
    End Function
    Ensuite tu passes le tableau de bytes à la base via un paramètre de la requête

    EDIT: Au passage, c'était dans la FAQ: http://faqvbnet.developpez.com/?page...image_to_bytes

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    374
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 374
    Points : 451
    Points
    451
    Par défaut
    Bonjour,
    Une autre solution(si possible) est d'enregistrer l'adresse de l'image dans la BDR.
    Bon boulot Jean

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Citation Envoyé par JPelli Voir le message
    Bonjour,
    Une autre solution(si possible) est d'enregistrer l'adresse de l'image dans la BDR.
    Bon boulot Jean
    Oui, c'est aussi une bonne option, à envisager. C'est un peu plus facile à gérer

  7. #7
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    le type image d'sql server va disparaitre
    il faut utiliser à la place varbinary, qui est un champ de type binaire

    un exemple pour obtenir un tableau d'octets à partir d'une image:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    dim image as System.Drawing.Image ' doit contenir l'image à enregistrer
    dim tableauOctets() as Byte ' tableau d'octets à mettre dans la base, via un sqlparameter par exemple
    Dim m As New System.IO.MemoryStream
    image.Save(m, System.Drawing.Imaging.ImageFormat.Png)
    tableauOctets = m.GetBuffer
    et dans l'autre sens :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    dim image as System.Drawing.Image
    dim Bytes() as byte ' doit contenir le tableau d'octet obtenu via un sqlreader par exemple
    image = System.Drawing.Image.FromStream(New System.IO.MemoryStream(Bytes))

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Citation Envoyé par sperot51 Voir le message
    le type image d'sql server va disparaitre
    il faut utiliser à la place varbinary, qui est un champ de type binaire
    Oui, mais au final ça s'utilise de la même façon...

    Citation Envoyé par sperot51 Voir le message
    un exemple pour obtenir un tableau d'octets à partir d'une image:
    Copieur, j'ai écrit la même chose 3 posts plus haut

  9. #9
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 175
    Points : 25 116
    Points
    25 116
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Copieur, j'ai écrit la même chose 3 posts plus haut


    oups pas vu
    t'as deja posté ce code sur ce forum ? si oui, alors j'avais du le prendre
    et je mettrais un "©" dorénavant

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Citation Envoyé par sperot51 Voir le message
    t'as deja posté ce code sur ce forum ? si oui, alors j'avais du le prendre
    Possible... c'est un truc qui sert souvent, donc ce serait pas étonnant

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/04/2014, 12h45
  2. Réponses: 1
    Dernier message: 11/04/2012, 08h42
  3. Binding images à partir d'une source sur base de données
    Par bobybob06 dans le forum Windows Presentation Foundation
    Réponses: 14
    Dernier message: 16/01/2012, 10h21

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