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

JDBC Java Discussion :

envoyer le mot de passe a partir d'une requete MYSQL par Javamail


Sujet :

JDBC Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2011
    Messages : 11
    Points : 12
    Points
    12
    Par défaut envoyer le mot de passe a partir d'une requete MYSQL par Javamail
    salut tous le monde.
    bon j'aimerai envoyer un mail de récupération de mot de passe pour une adresse mail!ce mot de passe est déjà présent dans une base de donnée MYSQL donc il faut faire une requête SELECT puis envoyer sa résultat au destinataire.
    j'ai ce code qui marche très bien pour l'envoi de Test mail!mais je veut intégrer le résultat de la requête dans l'e-mail.
    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
    35
    36
    37
     
     
    public class Mail {
       private final static String MAILER_VERSION = "Java";
     
       public static boolean envoyerMailSMTP(String serveur, boolean debug) {
             boolean result = false;
             try {
                      Properties prop = System.getProperties();
                      prop.put("mail.smtp.host", serveur);
                      Session session = Session.getDefaultInstance(prop,null);
                      Message message = new MimeMessage(session);
                      message.setFrom(new InternetAddress("jo_ess@hotmail.fr"));
                      InternetAddress[] internetAddresses = new InternetAddress[1];
                      internetAddresses[0] = new InternetAddress("jo_ess@hotmail.com");
                      message.setRecipients(Message.RecipientType.TO,internetAddresses);
                      message.setSubject("Récupération de mot de passe");
                      message.setText("votre mot de passe est:");
     
     
                      message.setHeader("X-Mailer", MAILER_VERSION);
                      message.setSentDate(new Date());
                      session.setDebug(debug);
                      Transport.send(message);
                      result = true;
             } catch (AddressException e) {
     
             } catch (MessagingException e) {
     
             }
             return result;
       }
     
       public static void main(String[] args) {
    	   Mail.envoyerMailSMTP("41.226.21.46",true);
       }
    }
    merci d'avance malgré j'ai essayé de créer une méthode qui select le mot de passe mais j'ai pas pu l'intégrer avec la commande message.setText ou aussi message.setContent.

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    Qu'est ce qui vous pose problème? Vous avez juste à remplacer dans votre code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "votre mot de passe est : "
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "votre mot de passe est : "+motRecupereParRequeteSQL
    .

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2011
    Messages : 11
    Points : 12
    Points
    12
    Par défaut
    Merci pour la réponse
    mon problème c'est le mot récupérer par cette requête!
    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
     
    public static void pswrd(){
    		try{
     
    			Statement state=Connexion.getconnection().createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
    			String query="SELECT pswrd FROM users where (condition) ;";
    			ResultSet res=state.executeQuery(query);
     
     
     
    			res.close();
    			state.close();
     
    			}
     
     
    		catch(Exception e){
     
    		}		
     
     
    	}
    comment récupérer le résultat de cette méthode pour l'inserer dans setText!! j'ai essayé avec une méthode multipart mais ca marche pas.

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    pour lire un resultSet, je vous invite à consulter les FAQ et cours du site, il y a plein d'exemple. Un fois que vous avez récupérer votre valeur vous devez la retourner l'appelant (via un return et en changeant le type de retour de votre methode de void vers String). Ensuite, votre code pour l'envoi de l'email n'a plus qu'à faire appel à cette méthode.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2011
    Messages : 11
    Points : 12
    Points
    12
    Par défaut
    oui Mr Tchiz j'ai déjà changer le type de la méthode de void en String ainsi le retour mais toujours rien!peut être l'erreur et dan l'appel de cette méthode dans le corps du mail

    voila le code:
    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
     public static String pswr(){
    		try{
     
    			Statement state=Connexion.getconnection().createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
    			String query="SELECT pswrd FROM users  ;";
    			ResultSet res=state.executeQuery(query);
     
     
    			String x =(String) res.getObject(1);
    			res.close();
    			state.close();
     
    			}
     
     
    		catch(Exception e){
     
    		}
    		return null;		
     
    	}

  6. #6
    Membre averti
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 132
    Points : 419
    Points
    419
    Par défaut
    Hello,

    - Oui mais là votre fonction renvoit la valeur null.

    - Commencez par corriger votre requête SQL car celle-ci manque d'une clause WHERE, avec le nom ou l'id de la personne à qui vous voulez renvoyer le mail.

    - Il existe la méthode getString(int colonne) sur un ResultSet si vous cherchez un type de donnée comme une chaine de caractères. Comme vous l'a conseillé tchize_ vous trouverez plus d'informations dans la FAQ JDBC à ce sujet.

    Bonne journée.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2011
    Messages : 11
    Points : 12
    Points
    12
    Par défaut
    merci pour tous le monde j'ai résolu ce problème est voici le code:
    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
     
     try{
     
              			Statement state=Connexion.getconnection().createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
              			String query="SELECT password FROM users where adress='"+Login.mail+"'  ;";
              			ResultSet res=state.executeQuery(query);
              			while(res.next()){
              				String id = res.getString(1);
     
     
     
                            message.setText("  votre mot de passe est:"+ id);		
              				}
     
     
              			res.close();
              			state.close();
     
     
                  	}

  8. #8
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    et je rajoute, ne jamais mettre un catch vide.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2011
    Messages : 11
    Points : 12
    Points
    12
    Par défaut
    oui oui bien sur merci Mr David! merci!

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

Discussions similaires

  1. [MySQL] Affichage te tableau a $n lignes et $m colonnescolonnes a partir d'une requete mysql
    Par allayanp dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 04/11/2012, 09h28
  2. [1.x] envoyer un mot de passe hash par email
    Par mantex dans le forum Symfony
    Réponses: 17
    Dernier message: 24/11/2010, 16h52
  3. tableau multi a partir d une requete mysql
    Par xxxavvv dans le forum Langage
    Réponses: 2
    Dernier message: 30/05/2010, 00h52
  4. login et mot de pass a partir d'une table
    Par yoyo312 dans le forum VBA Access
    Réponses: 2
    Dernier message: 19/01/2008, 19h11
  5. envoyer un mot de passe oublié par e_mail
    Par anaaa dans le forum Struts 1
    Réponses: 6
    Dernier message: 15/06/2007, 11h21

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