Besoin de complément

Bonjour, j'ai un message d'erreur java.lang.NullPointerException
avec mon code suivant

......
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        // TODO add your handling code here:
       try{
String Sql = "Select * from Tablelogin WHERE username = '" +txtuser.getText()+"'and password'"+txtpass.getText()+"'";
ps = cnx.prepareStatement(Sql);
Rs = ps.executeQuery();
if (Rs.next()){
JOptionPane.showMessageDialog(null, "Correct");
Principale s = new Principale();
s.setVisible(true);
}else {
JOptionPane.showMessageDialog(null, "invalide username or password");
p.setText("invalide username or password");
}
}catch (Exception e){
JOptionPane.showMessageDialog(null, e);
}
    }                                        
private void formWindowOpened(java.awt.event.WindowEvent evt) {
    cnx = Connect.ConnectDB();
}

......

3 réponses

  1. Salut,
    Ta ligne SQL suivante contient une erreur aprés ton AND
    String Sql = "Select * from Tablelogin WHERE username = '" +txtuser.getText()+"'and password'"+txtpass.getText()+"'";


    Essai avec ceci :
    String Sql = "Select * from Tablelogin WHERE username = '" +txtuser.getText()+"'and password = '"+txtpass.getText()+"'";


    De plus ta variable suivante
    p.setText("invalide username or password");
    n'est pas définie dans ta méthode, vérifie alors qu'elle est bien initialisé quelque part et visible dans ta méthode.
    En espérant t'avoir aider
    Greg
    1. Modérateur
      Sans traiter la question en elle même, mais essayes l'utilisateur :
      ' OR 1=1; --
      Peu importe le mot de passe (pas testé, mais devrait fonctionner).

      Ton code est sensible aux injections SQL.
      1. Modérateur
        Bonjour,

        Sur quelle ligne se produit le NullPointerException ?