bonjour
dans mon application j'ai une fenetre d'authentification contenant un login et un mot de passe(jtextfield à remplir par l'utilisateur) et un bouton valider .
Je saouhaite qu'en cliquant sur le bouton valider si le login et le mot de passe tapés correspodent à ceux d'un enregistrement dans la base de données on passe à la fenetre suivante sinon un Joption pane s'affiche déclarant que le login et le mot de passe ne sont pas valides
voila le code de ma classe Auth contenant le login et le mot de passe
et ma classe Connectt que je souhaite appeler dans action performed de la classe Auth pour faire le test de correspondance des logins et mots de passes tapés et ceux de la base de données
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
75
76
77
78
79 import java.awt.Dimension; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; /*import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.Statement; import javax.swing.JOptionPane;*/ import javax.swing.*; class Auth extends JFrame implements ActionListener{ /** * */ private static final long serialVersionUID = 1L; public Auth(){ this.setTitle("Authentification"); this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); JLabel login= new JLabel("login:"); JTextField textlogin = new JTextField(15); textlogin.setMaximumSize(textlogin.getPreferredSize()); Box ABox1 = Box.createHorizontalBox(); ABox1.add(login); ABox1.add(Box.createHorizontalStrut(6)); ABox1.add(textlogin); JButton v=new JButton("valider"); JButton r=new JButton("reinitialiser"); JLabel mdp = new JLabel ("password :"); JPasswordField textmdp = new JPasswordField(15); textmdp.setMaximumSize(textmdp.getPreferredSize()); Box ABox2 = Box.createHorizontalBox(); ABox2.add(mdp); ABox2.add(Box.createHorizontalStrut(6)); ABox2.add(textmdp); Box ABox3 = Box.createHorizontalBox(); ABox3.add(v); ABox3.add(Box.createHorizontalStrut(6)); ABox3.add(r); Box vBox = Box.createVerticalBox(); vBox.add(Box.createVerticalStrut(50)); vBox.add(ABox1); vBox.add(Box.createVerticalStrut(100)); vBox.add(ABox2); vBox.add(Box.createVerticalStrut(50)); vBox.add(ABox3); JPanel panel = new JPanel(); panel.add(vBox); //panel.repaint(); this.setContentPane(panel); v.addActionListener(this); //this.getContentPane().add(vBox); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); this.setSize(500,500); Dimension dim = Toolkit.getDefaultToolkit().getScreenSize(); this.setLocation(dim.width/2 - this.getWidth()/2, dim.height/2 - this.getHeight()/2); } public void actionPerformed(ActionEvent e) { if(e.getActionCommand().equals("valider")) { new Selection(); this.dispose(); } }}
le probleme figure dans cette instruction
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 public class Connectt { public Connectt(){ try { Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/monmon"; String user = "root"; String passwd = "mymn"; ResultSet result = null; Connection conn = DriverManager.getConnection(url, user, passwd); Statement s = conn.createStatement (); //Création d'un objet Statement Statement state = conn.createStatement(); //L'objet ResultSet contient le résultat de la requête SQL result = s.executeQuery( "Select * from tablemonmon WHERE login='"+Auth.textlogin.gettext()+"' AND password='"+password+"'" ) ; if ( result.next() ) System.out.println("Connexion OK") ; else System.out.println("Mauvais login ou mot de passe") ; result.close(); state.close(); } catch (Exception e) { e.printStackTrace(); } } }
j'ai pas su appeler le contenu des jtextfield de lautre classe(Auth)
Code : Sélectionner tout - Visualiser dans une fenêtre à part result = s.executeQuery( "Select * from tablemonmon WHERE login='"+Auth.textlogin.gettext()+"' AND password='"+password+"'" ) ;
s'il vous plait essayer de m'aider






Répondre avec citation






Partager