Ir ao conteúdo

Posts recomendados

Postado

Quero fazer uma validação de login, porém as consultas não estão dando certo com o PreparedStatement, já tentei usar vários métodos de retorno porém nenhum funciona.

 

Método que faz o select para verificar

public int logConfirm(String name, String pass){
        String sql = "SELECT name, pass FROM accounts WHERE name = ? AND pass = MD5(?)";
        
        Connection con = null;
        PreparedStatement stm = null;
        ResultSet rs = null;
          
        Login login = new Login();
        try{
            con = ConnectionFactory.getConnetion();
            stm = con.prepareStatement(sql);
            
            stm.setString(1, name);
            stm.setString(2, pass);
            
            rs = stm.executeQuery();
            
            if (rs.next()){
                login.setName(rs.getString("name"));
                login.setPass(rs.getString("pass")); 
                login.setValid(1);
                
            } else{
               login.setValid(0);
            }
            
        } catch (Exception ex){
            throw new RuntimeException(ex);
        } finally {
            ConnectionFactory.closeConnection(con, stm);
        }
    return login.getValid();}
}

 

Método de evento quando o usuário clica pra logar

private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {                                      
        // TODO add your handling code here:
        try{
        Login login = new Login();
        MainScreen ms = new MainScreen();
        
        String name = jTextFieldName.getText();
        String pass = String.valueOf(jPasswordFieldPass.getPassword());
                 
        logControll.logConfirm(name, pass);
        
        if(login.getValid() == 1){
            JOptionPane.showMessageDialog(rootPane, "You are logged in");
            this.dispose();
            ms.setVisible(true);       
        } else {
            JOptionPane.showMessageDialog(rootPane, "Incorrect login or password!");
        }       
       } catch (Exception ex){
           throw new RuntimeException(ex.getMessage());
       }   
    }                              

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!