VERIFICACAO DE SENHAS

MACKEY 02/06/2010 22:05:05
#343768
boa noite jovens...precisava de uma ajuda...estou fazendo um programa em que para entrar na aplicaçao é necessario uma validaçao com senha, consegui fazer iso mas esta acontecendo uma coisa que eu nao previ. Tenho 5 usuarios, cada um com uma senha diferente, como mostro a seguir:

usuario senha
mackey 123456
bidu 123789
jack 123123
natalia 321654
luis 159753


oq acontece é que se entro com o usuario mackey e a senha de qualquer outro usuario o programa valida a senha, gostaria que o programa validasse somente se a senha correspondesse exatamente ao seu usuario, abaixo esta o fonte, obrigado desde já...



Private Sub cmdOK_Click()
Dim us, senha As Boolean
Dim sql As String
us = False
senha = False
sql = [Ô]select * from tblusuarios where nome= [ô][Ô] & TxtUsuario.Text & [Ô][ô][Ô]
rec.open sql, cnnsoftpark, adOpenStatic
If rec.EOF Then
MsgBox [Ô]Registro não encontrado[Ô]
us = False
Else
us = True
End If
rec.Close
Set rec = Nothing
sql = [Ô]select * from tblusuarios where senha=[ô][Ô] & TxtSenha.Text & [Ô][ô][Ô]
rec.open sql, cnnsoftpark, adOpenStatic

If rec.EOF Then
MsgBox [Ô]Senha incorreta[Ô]
senha = False
Else
senha = True
End If
If us = True And senha = True Then
frmPrincipal.lblUsuario = TxtUsuario.Text
frmPrincipal.LblCargo = rec.Fields(3)
TxtSenha.Text = [Ô][Ô]
TxtUsuario.Text = [Ô][Ô]
Unload Me
frmPrincipal.Show
Else
TxtSenha.Text = [Ô][Ô]
TxtUsuario.Text = [Ô][Ô]
TxtUsuario.SetFocus
SendKeys [Ô]{Home}+{End}[Ô]
End If
rec.Close
Set rec = Nothing

End Sub
TECLA 02/06/2010 22:14:40
#343771
Resposta escolhida
Ao invés de executar DUAS consultas, execute somente UMA.
Exemplo:
sql = [Ô]select * from tblusuarios where nome=[ô][Ô] & TxtUsuario.Text & [Ô][ô] and senha=[ô][Ô] & TxtSenha.Text & [Ô][ô][Ô]
MACKEY 02/06/2010 22:15:48
#343772
puxa obrigado...funcionou.....
TECLA 02/06/2010 22:16:47
#343773
OK, só não esqueça de ENCERRAR o tópico.
MOREIRA 02/06/2010 22:18:43
#343774
pronto, na mão...

Private Sub CmdEntrar_Click()
If TxtSenha.Text = [Ô][Ô] Or TxtUsuario.Text = [Ô][Ô] Then
MsgBox [Ô]Favor Preencher Todos os Campos.[Ô], vbInformation, [Ô]Campo Vazio[Ô]
TxtUsuario.SetFocus
Exit Sub
End If

Set Rst = New ADODB.Recordset
Sql = [Ô]Select * From Tbl_Usuarios Where Usua = [ô][Ô] & TxtUsuario.Text & [Ô][ô] And Senha = [ô][Ô] & TxtSenha.Text & [Ô][ô][Ô]
Rst.Open Sql, Conexao, 3
If Rst.EOF Then
MsgBox [Ô]Nome de Usuário ou Senha Incorreto.[Ô], vbExclamation, [Ô]Erro[Ô]
Rst.Close
Exit Sub
End If

MDI_Principal.StatusBarXP1.PanelCaption(1) = [Ô]Usuário Logado: [Ô] & UCase(TxtUsuario.Text)
MDI_Principal.Show
Usuario = TxtUsuario.Text
Unload Me

Rst.Close
Set Rst = Nothing
End Sub
Tópico encerrado , respostas não são mais permitidas