Jump to content
Fórum Script Brasil
  • 0

Ajuda com login com banco de dados DAO


rdpiza

Question

Estou com dificuldade tenho um banco de dados com vários nome de usuários e senhas mas quando vou fazer login so consigo logar com o nome de usuario e senha que esta em primeiro no banco de dados os demais não consigo o que esta faltando?

O código é mais u menos isso:

Public BD As Database 'Banco de Dados
Public Colaboradores As Recordset 'Tabela
Private Sub Command1_Click()

    If txtnome.Text = "" Then
        MsgBox "Digite nome de usuário!"
    txtnome.Text = ""
    txtnome.SetFocus
End If
    If txtsenha.Text = "" Then
        MsgBox "Digite a senha!"
    txtsenha.Text = ""
    txtnome.SetFocus
End If
txtnome.SetFocus
    If Colaboradores("Nome") = txtnome.Text And Colaboradores("Senha") = txtsenha.Text Then
        FrmPrincipal.Show
        Unload Me
        
Else
    MsgBox "Nome ou senha Incorretos.", vbCritical, "Erro"
End If

End Sub
Private Sub Form_Load()
    Set BD = OpenDatabase(App.Path & "\login.mdb")
    Set Colaboradores = BD.OpenRecordset("login", dbOpenTable)
End Sub

 

vba.jpg

vba1.jpg

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

olá amigo.

vou tentar ajudar .

segue abaixo um código que utilizo ...

 

pelo que eu vi em seu print ...  você não esta fazendo uma busca no seu banco de dados para validar se o usuário digitado existe no banco.

no exemplo abaixo  minha aplicação é dentro do excel   mas meu banco de dados é em access ..  veja o que você consegue aproveitar e adaptar em seu código.

 

 

'Carregar o furmulário de login assim que abre o arquivo
Private Sub Workbook_Open()    
    ULogin.Show    
End If
    

                
            
                 login.png

 

após abrir o formulário eu faço a validação no banco

Private Sub Login_Click()
   
    If TextBox1.Value <> Empty And TextBox1.Value <> "" And TextBox2.Value <> Empty And TextBox2.Value <> "" Then
           
            'Conectando banco de dados
             Dim cn As ADODB.Connection
             Set cn = New ADODB.Connection
             With cn
                 .Provider = "Microsoft.Jet.OLEDB.4.0"
                 .ConnectionString = "Data Source=" & ActiveWorkbook.Path & "\BANCO.MDB;"
                 .Properties("Jet OLEDB:Database Password") = "123"
                 .Open
             End With
              
             
                  'Abrindo a tabela do banco de dados
                  Set rs = New ADODB.Recordset
                  StrSql = "Select * from CadUsuarios where usuario = '" & UCase(TextBox1.Value) & "' and senha = " & TextBox2.Value
                  rs.Open StrSql, cn, adOpenKeyset, adLockOptimistic ' Todos os registros da tabela"
             
                  If Not rs.EOF Then   'se encontrou
                       Unload Me
                       Set ULogin = Nothing
                       Dim CodUsuario As Integer
                       Sheets("menu").Range("A1").Value = CInt(rs.Fields("Código"))
                       Sheets("menu").Range("B1").Value = rs.Fields("Nome")
                       
                       rs.Close 'fecha a tabela
                       Set rs = Nothing
                       
                  Else
                      MsgBox "Usuário e Senha não localizado...", vbCritical, ":::..Aviso..:::"
                      TextBox1.Value = Empty
                      TextBox2.Value = Empty
                      Sheets("menu").Range("A1").Value = Empty
                      Sheets("menu").Range("B1").Value = Empty
                      TextBox1.SetFocus
                      
                      rs.Close 'fecha a tabela
                      Set rs = Nothing
                  End If
        

           cn.Close
           Set cn = Nothing
        
    
    End If
            
           
End Sub

 

e o botão Sair

'Botao Sair
Private Sub Sair_Click()
  Unload Me
  Set ULogin = Nothing
    
  ThisWorkbook.Saved = True
  ThisWorkbook.Close
  Application.Quit
   
End Sub

Estude o código acima e veja como pode ser útil em sua necessidade.

 

Espero ter ajudado .   Abraços.

 

 

                

login.png

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      651.8k
×
×
  • Create New...