GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Quero fazer um login


#1

boa tarde galera!!!

   Ja tenho a tela (desing) do login so quero o codigo, para quando eu clicar no botao acessar ele comparar no tabela que eu criei no banco se a senha e o usuario confere e entao acessar o menu principal...
   alguem em alguma ideia ou um exemplo pra me fornecer???

  desde ja agradeco...

Fernando becker, RS


#2

Basicamente você precisa criar um método boolean que recebera os parametros usuário e senha, nesse seu método precisa conter uma query que faça um select no banco:

strSQL = "SELECT Usuario,Senha FROM Usuarios WHERE Usuario =  ? AND Senha = ?";

#3

Dá uma estudada em bancos de dados em java, JDBC e afins...

Aí venha com uma dúvida mais específica que a gente te ajuda...

aqui no guj tem um tutorial que pode ser um bom começo:

http://www.guj.com.br/java.tutorial.artigo.7.1.guj


#4

Vc precisa passar o valor do campo 'usuario' e 'senha' para uma classe Java que vai acessar o banco e verificar se é igual, se for, vc é redirecionado para outra página!

Sugiro vc usar algum framework tipo Struts para fazer isso...

[]'s


#5

http://www.devmedia.com.br/visualizacomponente.aspx?comp=1720&site=6
Problema resolvido.
:smile:


#6

coloca no actionlistener do botão login, instruçoes sql pra comparar o valor digitado com o banco.

//abre a conexao com o bando
PreparedStatement pst = conn.prepareStatement("SELECT * FROM LOGIN WHERE USER = ? AND PASSWORD = ?");
pst.setString(1,txtUser.getText());
pst.setString(2,txtPassword.getText());
ResultSet rs = pst.executeQuery();
if(rs.next()){
//usuario e senha existem no BD, ai coloque o codigo aki
}
else {
//usuario ou senha invalido
}

PS: nunca fiz tela de login, mas deve funcionar assim
tb me baseei numa aplicação desktop, não sei se pra web é diferente


#7

try
{

     String senha = new String(tf_senha.getPassword());   
     String SQL = "'select * from tabela_usuario Where log_usuario = '"+tf_usuario.getText()+"' and log_senha = '"+senha;
     rs = st.executeQuery(SQL);
     if (rs.next()) {
         if (tf_usuario.equals("log_usuario"))
         {
            new menu_principal().setVisible(true);
         }
         else
         {
             System.exit(1);
         }
     }

}
catch(SQLException erro)
{
JOptionPane.showMessageDialog(null,erro);
}

Galera é esse o codigo!!!
so que ta dando o seguinte erro:

que tenho uma variavel nulla


#8

vc nao está pegando o nome de usuário, eu acho

coloca assim

String usuario = tf_nomedoCampoUsuario.getUsuario();

e na sua pesquisa SQL, vc coloca WHERE log_usuario = usuario

se vc seguir o site que o amigo posto ali em cima, fica mais fácil ou usa algum framework, como eu sugeri..


#9

Faça essa parte de login em classe separada e instancie quando necessário:

login.setUsuario(txtUsuario.getText());
login.setSenha(txtSenha.getText());
if(new LoginDAO().validaLogin(login)){
	new NovaTela().setVisible(true);
	this.setVisible(false);
}else{
JOptionPane.showMessageDialog(null,"Dados Incorretos!","Atenção",JOptionPane.INFORMATION_MESSAGE);
}

#10

galera deu certo!!!!! muito obrigado e desculpa encomodar
:smiley:


#11