bonsoir ,
en développant une application en java (eclipse) avec une base de donnée (mySQL)
j'ai une classe qui fait une recherche sur le login inscrit dans la base , si ce login est trouvé alors , une boite de dialogue s'affiche en m'indiquant les valeurs des champs de ce login (c'est à dire nom , prenom ..) , si le login est introuvable ,elle retourne -1 et indique login introuvable

mon problème c'est comment afficher les champs qui correspond à ce login !!?

voilà mon 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
22
23
24
25
26
27
28
29
30
31
......
 
// Connexion à la base de donné
			Connexion_BD cnx= new Connexion_BD();
			cnx.connect("grh", "root", "");
 
			// vérifier que le login introduit par l'utilisateur existant ou non
 
			int trouve =0; // trouve est une variable qui est initialisé à 0 et ne peut prende que 0(c'est à dire login trouvé) ou 1 (c'est à dire login introuvable dans la base) 
 
			ResultSet r= cnx.execute_select_query ("SELECT login FROM `grh`.`admin` " +
					"where login='"+Tlogin.getText() +"' ;");
 
				try {
					if (r.next() == true)
					{
						// login existant
						trouve = 1;
				 JOptionPane.showMessageDialog(Tlogin, "le login choisi est " + r.getString(1) + "le mot de passe" + r.getString(2) + "le nom est " + r.getString(3) + "le prenom est " + r.getString("4") + "son profile est " + r.getString("5"),"Information",JOptionPane.INFORMATION_MESSAGE);
 
					}
					else
					{
						trouve = 0;
						 JOptionPane.showMessageDialog(Tlogin, "erreur,login introuvable","erreur",JOptionPane.INFORMATION_MESSAGE);
					}
				} catch (SQLException e1) {
					e1.printStackTrace();
				}
 
   }
et voilà le message d'erreur

Code : Sélectionner tout - Visualiser dans une fenêtre à part
java.sql.SQLException: Column Index out of range, 2 > 1.
sachant que le test sur l’existence d'un login dans la base est fait avec
succés
alors quelle est la solution SVP !!? et merciii