Problemas com o sistema de Login

6 respostas
Oziel_Morais

Preciso criar um sistema de login para minha aplicação desktop esse código aí em baixo é o do botão ENTRAR do JFrame mas não esta executando direito o que é que estar errado aqui nesse código???

ClassConecta conexao = new ClassConecta();
String Sql = "SELECT login, password FROM flogon where login = ?, and senha = ? ;";
        try{
         Connection  con = conexao.conecta();
          Statement stmt= con.createStatement();          
          ResultSet rsLogin = stmt.executeQuery("select login, password from flogon where nome = ?, and password = ? ;");//Pega os valores da tabela FLogon
          
          while(rsLogin.next()){           
            String nome = rsLogin.getString("login");
            String senha = rsLogin.getString("senha");

            if((login.equalsIgnoreCase(nome) && (password.equalsIgnoreCase(senha)) {  
            return true;  
        }  
    }  
    return false;

6 Respostas

D

Pode postar o log de erro?

drsmachado

Sangue de Jesus tem poder! Queima ele Senhor!!!
Meu camarada, consulta a banco de dados na tela?
Esqueça isso, desista, deixe isso para amadores.
Faça direito, crie uma classe para controlar a ação e uma DAO, para interagir com o banco de dados, antes de qualquer otura coisa.

Primeiro, se você copiou e colou o código aqui, tem erro de sintaxe, pois o try não é seguido por nenhum catch ou finally.
Segundo, a coluna senha nunca existirá no resultSet, visto que, a query menciona a coluna password e não existe nenhum alias

"select login, password from flogon where nome = ?, and password = ?"

e no rs

String senha = rsLogin.getString("senha");

Além disso, tire esse “;” de dentro da String que representa a query, ele não tem função ali.

Oziel_Morais

Tenho Um administrador Cadastrado no banco de Dados Mysql esse código é para ir buscar lá dentro do banco esse login e senha do administrador verificar se estar correto se estiver ele abre a página do programa se não estiver correto é para exibir a mensagem de erro, dizendo USUÁRIO INEXISTENTE. Me ajudem por Favor

A

Cara, vc é doido, Consulta de Banco de dados na Tela…
kkkk

Você pode criar um método para verificar se o login e senha estão corretos, e chamar esse método dentro do evento do seu botão!!!
MAIS OU MENOS ASSIM!!!

public boolean verificarLogin(String login , String senha){
ClassConecta conexao = new ClassConecta();  
   boolean result = false
Connection  con = conexao.conecta();  
          Statement stmt= con.createStatement();            
          ResultSet rsLogin = stmt.executeQuery("select * from flogon where login = ?, and senha = ? ");
 
    if(rsLogin.next()){ // SE EXISTE DADOS DURANTE A CONSULTA

         restult = true;  
     }

   return result;
}
// CÓDIGO FONTE DO SEU BOTÃO
// CRIA UMA INSTANCIA DO CLASS QUE CONTEM O MÉTODO verificaLogin();

String login = seuTextField().getText();
String senha =seuTextField().getText();

if (suaClasse.verificaMetodo(login,senha)){
    //libera o acessso
} else{
  //Mensagem de Erro;;
}
Oziel_Morais

Implementei mas não deu certo continua não executando o certo esse login tmb tem que fazer a diferença entre usuário comum e o administrador. Por Favor preciso de mais Ajuda.

difosal

Era bom vc postar o erro que da né.
Mas acho que está faltando uma chave no seu primeiro código e como você esta colocando interrogações você precisa usar o PreparedStatement
algo assim

PreparedStatement stmt = con.prepareStatement(Sql);
stmt.setString("UsuarioFulano");
stmt.setString("SenhaTal");
ResultSet rsLogin = stmt.executeQuery();
Criado 3 de fevereiro de 2012
Ultima resposta 3 de fev. de 2012
Respostas 6
Participantes 5