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 :

ma fonction ne marche que pour le 1er cas


Sujet :

VB.NET

  1. #1
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut ma fonction ne marche que pour le 1er cas
    Bonsoir, voila mon soucis est assez étrange, j'ai une table mysql qui contient les adresses mail d'utilisateurs, et en parallèle je reçoit dans mon programme des noms et prénoms de personne, qui si il se trouve dans la base de données envoi un mail à la personne concerné, en code ça donne ceci :

    dans la partie réception de données avec les nom, prénom qui apparaissent (je vous ai pas mis l'extraction des noms, prenoms):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim mail As String = mail_affecter(lenom) 'extrait le mail des personnes concernés
                            If mail <> "vide" Then
                               EnvoiMail(mail) 'envoi le mail
                            End If
    ma fonction envoi_affectation() qui renvoi le mail d’après le nom est le prénom reçu :
    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
     Function mail_affecter(ByVal identite As String)
            Dim nom_prenom As String = identite.Replace(" ", "")
            Dim destine_a As String = "vide"
            Dim SQL As String
            Dim myCommand As New MySqlCommand
            Dim myAdapter As New MySqlDataAdapter
            Dim myData As MySqlDataReader
            Try
                SQL = "SELECT mail FROM repertoire WHERE CONCAT(nom, prenom) = '" & nom_prenom & "'"
                myCommand.Connection = HostConn
                myCommand.CommandText = SQL
                myAdapter.SelectCommand = myCommand
                myData = myCommand.ExecuteReader()
                If myData.Read() = True Then
                    destine_a = myData.GetString("mail")
                    'MsgBox("Ok")
                Else
                    destine_a = "vide"
                End If
                myData.Close()
            Catch myerror As MySqlException
            End Try
            Return destine_a
        End Function
    et enfin ma fonction d'envoi de mail qui envoi le mail a la personne passé en paramètre :
    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
    33
    34
    Sub EnvoiMail(ByVal themail As String)
            log(Now.ToString + " " + "Envoi les mails passe en parametre a " + themail)
            Dim TheServer As String = My.Settings.smtp 'serveur smtp de la poste
     
            Dim Smtp As New SmtpClient(TheServer, 587) 'Simple Mail Transfer Protocol
            Dim EmailMessage As New MailMessage
            Try
                With EmailMessage
                    .From = New MailAddress(My.Settings.mail_CIS)
                    .To.Add(themail) 'prend en paramétre le mail de l'user
                    .Subject = nature_op
                    .Body = ticket_imprime 'le contenu du mail est le ticket de départ
                End With
            Catch ex As Exception
     
            End Try
     
            Try
                With Smtp
                    .UseDefaultCredentials = False
                    .DeliveryMethod = SmtpDeliveryMethod.Network
                    .Timeout = 1
                    If TheServer = My.Settings.smtp Then
                        .EnableSsl = False
                    Else
                        .EnableSsl = True
                    End If
     
                    .Credentials = New Net.NetworkCredential(My.Settings.mail_CIS, My.Settings.mdp_smtp) 'De:Votre Email , Pass: password de l'Email
                    .Send(EmailMessage)
                End With
            Catch ex As Exception
            End Try
        End Sub
    Le code en soit ne pose pas de problème, car ça fonctionne bien, seulement pour la première personne trouvée,
    c'est a dire que par exemple j'ai :
    PIERRE DUPONT
    ALAIN DURONS

    Pourtant mon programme récupère bien les adresses mails des deux personnes, mais seulement le mail de la première personne sera envoyé (PIERRE DUPONT), pas la seconde !
    Avec les points d’arrêt j'ai pu voir qu'il rentre pourtant dans la fonction EnvoiMail avec le mail de ALAIN DURONS, mais pas de mail envoyé !!!!

    Auriez vous une idée ???

  2. #2
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut

    Il ne faut jamais faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            Catch ex As Exception
            End Try
    sans mettre de gestion de l'erreur dedans, c'est bien pour donner l'impression au gens que l'application fonctionne correctement mais ça empêche de gérer l'erreur...

    Et dans votre cas, savoir quelle erreur est déclenchée vous aiderait fortement...

  3. #3
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut
    oui pardon, une erreur de ma part,
    j'obtiens le message suivant :

    Le délai d'attente de l'opération a expiré.

  4. #4
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232

  5. #5
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut
    merci

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 04/03/2015, 16h43
  2. Réponses: 0
    Dernier message: 11/06/2009, 17h13
  3. Réponses: 3
    Dernier message: 26/03/2007, 17h19
  4. visual c++ mais que pour winCE
    Par julienx dans le forum MFC
    Réponses: 2
    Dernier message: 10/11/2004, 19h25
  5. Débutant Tomcat, variable d'environnement que pour 1 site
    Par scafarel dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 21/09/2004, 11h33

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