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

AWT/Swing Java Discussion :

MessageDialog (connexion à la base de donné)


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Réseau informatique
    Inscrit en
    Février 2012
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Réseau informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 27
    Par défaut MessageDialog (connexion à la base de donné)
    Bonjour,

    je vous explique mon problème :

    je n'a pas pu me connecter à la base de donné
    et les MessageDialog ne s'affiche pas


    les MessageDialog: "connexion ok" et "connexion echouee" et"vous avez essaye plusieur fois ,reessayer plus tard!"

    ne s'affichent pas seulement le MessageDialog "Connexion a la base echoue " qui s'affiche si EasyPHP est fermé . quand je clic sur le JButton il ne se passe rien dans les autre cas .

    les autres Messages ne s'affiche pas et il n'a pas d'erreur dans le code .

    Je ne sais pas quoi faire , aidez moi


    Je remarqué un autre problème le MessageDialog "Connexion a la base echoue " s'affiche après un certain temps au lieu des autres Message Dialog

    quel qu’un peut m'aidez

    et merci d'avance


    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
    okButton = new JButton("OK");
    				okButton.setActionCommand("OK");
    				buttonPane.add(okButton);
    				getRootPane().setDefaultButton(okButton);
    				okButton.addActionListener(this);
     
     
    				cancelButton = new JButton("Cancel");
    				cancelButton.setActionCommand("Cancel");
    				buttonPane.add(cancelButton);
    				cancelButton.addActionListener(this);
    public void actionPerformed(ActionEvent e) {
    	if (e.getSource() == okButton) 
    			{ 
    			               //activer le progressBar
    			       		   action();
    			       		   progressBar.setString("validation");
    			       		   progressBar.setStringPainted(true);  
    			}
     
     
     
     
      if(e.getSource()==cancelButton)
                {System.exit(0);}
    void action() 
         {
             .
             .
             .
             .
             .
             .
         }


    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    void action() {
     
    	new Thread(new Runnable() {
    		public void run() {
    			try {
    				progressBar.setValue(value);
    				value++;
    				Thread.sleep(15);
    				} 
    			catch (InterruptedException ex) {ex.printStackTrace();}
     
    	if (progressBar.getPercentComplete() == 1.0) 
    	  {
    		// - Paramètres de connexion à la base de données
    		    String url = "jdbc:mysql://localhost:8888/connexion";
    		    String login = "root";
    		    String password = "";
    		    String driver = "com.mysql.jdbc.Driver";
     
    		    String user = textField_user.getText();
    			char[] passd = passwordField.getPassword();
     
    		    try {
     
    		  //Connexion à la base
    		  Class.forName(driver); 
    		  Connection   conn = DriverManager.getConnection(url,login,password);
     
    		   //Création d'un objet Statement
    		     Statement  st = conn.createStatement();
     
    			//L'objet req contient le résultat de la requête SQL
    		  String req="select login,pass from  user";
    		  ResultSet rs = st.executeQuery(req);
     
    		if ((user.equals(rs.getString("login"))) && (Arrays.equals(passd, rs.getString("pass").toCharArray())))
    		    {
    			JOptionPane.showMessageDialog(null, "connexion ok");
    			System.exit(0);
    		    }
     
    		else { 
    			JOptionPane.showMessageDialog(null, "connexion echouee");
    			value = 0;
    			progressBar.setValue(value);
    			progressBar.setStringPainted(false);
    			textField_user.setText("");
    			passwordField.setText("");
    			textField_user.requestFocus();
    			s++;
    			if(s==3){
    				JOptionPane.showMessageDialog(null, "vous avez essaye plusieur fois ,reessayer plus tard!");
     
    				System.exit(0);
    	                }
    		    }
     
    		  //close Connection 
    		  st.close();
    		  conn.close();
     
    		  }
    		    catch(SQLException | ClassNotFoundException sqle){
    				 JOptionPane.showMessageDialog(null,"Connexion a la base echoue ","Erreur",JOptionPane.ERROR_MESSAGE);
    				 setAlwaysOnTop(true);
    	        }   
     
     
    	      }
    	  else {action();}
    	   }
          }).start();
    	}

    Je voulais afficher des JLabel mais je n'a pas pu les affichés aussi .


    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
    if ((user.equals(rs.getString("login"))) && (Arrays.equals(passd, rs.getString("pass").toCharArray())))
     
    	              {  
    		   //activer le JLabel
    		   lblconnexion.setText("Access permitted !!");
     
    		   //activer le progressBar
    		   action();
    		   progressBar.setString("validation");
    		   progressBar.setStringPainted(true);
     
    		   //activer le 2éme Menu (Réseau)
     
    		   setJMenuBar(menuBar);
    		   menuBar.repaint();
    		   menuBar.setEnabled(true);
     
    		   mRseau.repaint();
    		   mRseau.setEnabled(true);
    	        }
     
    	   else {
    		   lblconnexion.setText("Authentification echoue  !!");
    		   lblconnexion.revalidate ();
    		   }
     
    	    }

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur java, .Net
    Inscrit en
    Janvier 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur java, .Net

    Informations forums :
    Inscription : Janvier 2011
    Messages : 55
    Par défaut
    tu dois faire un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ResultSet rs = st.executeQuery(req);
    if (rs.next()) { }
    après ton resultset pour lire tes valeurs par la suite.

  3. #3
    Membre averti
    Profil pro
    Réseau informatique
    Inscrit en
    Février 2012
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Réseau informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 27
    Par défaut
    Citation Envoyé par gandalf72000 Voir le message
    tu dois faire un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ResultSet rs = st.executeQuery(req);
    if (rs.next()) { }
    après ton resultset pour lire tes valeurs par la suite.

    merci pour votre réponse
    mais je le même problème



    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    void action() {
     
    	new Thread(new Runnable() {
    		public void run() {
    			try {
    				progressBar.setValue(value);
    				value++;
    				Thread.sleep(15);
    				} 
    			catch (InterruptedException ex) {ex.printStackTrace();}
     
    	if (progressBar.getPercentComplete() == 1.0) 
    	  {
    		// - Paramètres de connexion à la base de données
    		    String url = "jdbc:mysql://localhost:8888/connexion";
    		    String login = "root";
    		    String password = "";
    		    String driver = "com.mysql.jdbc.Driver";
     
    		    String user = textField_user.getText();
    			char[] passd = passwordField.getPassword();
     
    		    try {
     
    		  //Connexion à la base
    		  Class.forName(driver); 
    		  Connection   conn = DriverManager.getConnection(url,login,password);
     
    		   //Création d'un objet Statement
    		     Statement  st = conn.createStatement();
     
    			//L'objet req contient le résultat de la requête SQL
    		  String req="select login,pass from  user";
    		  ResultSet rs = st.executeQuery(req);
    	 while(rs.next()) {  
    		if ((user.equals(rs.getString("login"))) && (Arrays.equals(passd, rs.getString("pass").toCharArray())))
    		    {
    			JOptionPane.showMessageDialog(null, "connexion ok");
    			mnRseau.setEnabled(true);
    			System.exit(0);
    		    }
     
    		else {
    			JOptionPane.showMessageDialog(null, "connexion echouee");
    			value = 0;
    			progressBar.setValue(value);
    			progressBar.setStringPainted(false);
    			textField_user.setText("");
    			passwordField.setText("");
    			textField_user.requestFocus();
    			s++;
    			if(s==3){
    				JOptionPane.showMessageDialog(null, "vous avez essaye plusieur fois ,reessayer plus tard!");
     
    				System.exit(0);
    	                }
    		    }
    	     }
    		  //close Connection 
    		  st.close();
    		  conn.close();
     
    	   }
    		    catch(SQLException | ClassNotFoundException sqle){
    				 JOptionPane.showMessageDialog(null,"Connexion a la base echoue ","Erreur",JOptionPane.ERROR_MESSAGE);
    				 setAlwaysOnTop(true);
    	        }   
     
     
    	      }
    	  else {action();}
    	   }
          }).start();
    	}

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur java, .Net
    Inscrit en
    Janvier 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur java, .Net

    Informations forums :
    Inscription : Janvier 2011
    Messages : 55
    Par défaut
    System.exit(0); te fais sortir du programme.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if ((user.equals(rs.getString("login"))) && (Arrays.equals(passd, rs.getString("pass").toCharArray())))
    		    {
    			JOptionPane.showMessageDialog(null, "connexion ok");
    			mnRseau.setEnabled(true);
    			System.exit(0);
    		    }

Discussions similaires

  1. [JDBC][MySQL] Connexion à la base de données
    Par El Saigneur dans le forum JDBC
    Réponses: 8
    Dernier message: 04/08/2005, 13h52
  2. ERREUR DE CONNEXION à une base de donnée ACCESS protégée
    Par unionriton dans le forum Bases de données
    Réponses: 4
    Dernier message: 09/05/2005, 09h35
  3. Delphi Connexion à une base de donnée distante par TCP/IP
    Par viecel dans le forum Bases de données
    Réponses: 1
    Dernier message: 12/01/2005, 19h19
  4. Echec lors de la connexion à la base de données.
    Par mclown dans le forum PostgreSQL
    Réponses: 8
    Dernier message: 26/10/2004, 23h36
  5. Réponses: 3
    Dernier message: 29/03/2004, 18h02

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