AJUDA COM FORM DE LOGIN COM BANCO DE DADOS.
ola estou a criar um form de login e senha com banco de dados dao.
ta tudo certo faço o cadastro dos ussuarios ate ai blz ,mas quando vo fazer o login só consigo fazer com o user name e senha do primeiro registro os demais NÃO( login ou senha incorretos)ajudem-me.
Aqui o codigo.
Dim dados As dao.Database
Dim users As dao.Recordset
Private Sub CmdCadastrar_Click()
users.AddNew
users([Ô]nome[Ô]) = Text1
users([Ô]senha[Ô]) = Text2
users.Update
End Sub
Private Sub CmdLogin_Click()
Dim nome As String
Dim senha As String
nome = users([Ô]nome[Ô])
senha = users([Ô]senha[Ô])
If nome = Text1.Text And senha = Text2.Text Then
MsgBox ([Ô]Voçê esta logado![Ô]), vbInformation, [Ô]Login[Ô]
Else
MsgBox ([Ô]Login ou senha incorretos![Ô]), vbCritical, [Ô]Erro[Ô]
End If
End Sub
Private Sub Form_Load()
Set dados = OpenDatabase([Ô]C:\VB6 paroquia\cad.mdb[Ô])
Set users = dados.OpenRecordset([Ô]Usuarios[Ô], dbOpenTable)
users.Index = [Ô]cod[Ô]
End Sub
ta tudo certo faço o cadastro dos ussuarios ate ai blz ,mas quando vo fazer o login só consigo fazer com o user name e senha do primeiro registro os demais NÃO( login ou senha incorretos)ajudem-me.
Aqui o codigo.
Dim dados As dao.Database
Dim users As dao.Recordset
Private Sub CmdCadastrar_Click()
users.AddNew
users([Ô]nome[Ô]) = Text1
users([Ô]senha[Ô]) = Text2
users.Update
End Sub
Private Sub CmdLogin_Click()
Dim nome As String
Dim senha As String
nome = users([Ô]nome[Ô])
senha = users([Ô]senha[Ô])
If nome = Text1.Text And senha = Text2.Text Then
MsgBox ([Ô]Voçê esta logado![Ô]), vbInformation, [Ô]Login[Ô]
Else
MsgBox ([Ô]Login ou senha incorretos![Ô]), vbCritical, [Ô]Erro[Ô]
End If
End Sub
Private Sub Form_Load()
Set dados = OpenDatabase([Ô]C:\VB6 paroquia\cad.mdb[Ô])
Set users = dados.OpenRecordset([Ô]Usuarios[Ô], dbOpenTable)
users.Index = [Ô]cod[Ô]
End Sub
Set users = dados.OpenRecordset([Ô]Usuarios[Ô], dbOpenTable)
Só pega o primeiro registro.
Para registros desejados.
Set users = dados.OpenRecordset([Ô]Select * From Usuarios Where nome=[ô][Ô] & Text1.Text & [Ô][ô] and senha= [ô][Ô] & Text2.Text & [Ô][ô][Ô], dbOpenDynaset)
Ai vai dar certo,porém.............
Só pega o primeiro registro.
Para registros desejados.
Set users = dados.OpenRecordset([Ô]Select * From Usuarios Where nome=[ô][Ô] & Text1.Text & [Ô][ô] and senha= [ô][Ô] & Text2.Text & [Ô][ô][Ô], dbOpenDynaset)
Ai vai dar certo,porém.............
Agora ta erro:
Run-time error [Ô]3265[Ô]
Item not found in this collection.
Run-time error [Ô]3265[Ô]
Item not found in this collection.
Verifica.
ajuda com este erro...
este erro
Dim rs as Recordset
sSQL = [Ô]SELECT Usuario, Senha FROM tabela WHERE Usuario = [ô][Ô]& txtUsuario.text &[Ô][ô] and Senha = [ô][Ô]& txtSenha.text &[Ô][ô][Ô]
Set rs = Conexao.Execute.sSQL
If not (rs.EOF = True and rs.BOF = True) Then
[ô]Logado, faça o que quiser agora
Else
Msgbox [Ô]Usuário ou senha Incorreta[Ô], VbInformation + VbOkOnly, [Ô]Acesso negado[Ô]
End If
Amigo, basicamente seria isso!!!
bom começa aprender a identar teu código, vai evita muito problemas;
depois vai estudar os nomes das tabelas e campos;
não quiz ser agressivo, apenas objetivo;
depois vai estudar os nomes das tabelas e campos;
não quiz ser agressivo, apenas objetivo;
DAO é tão primitivo que acabamos esquecendo como se usa, tenta assim:
bom se não funcionar da uma lida neste link de 9 anos atrás
http://www.vbweb.com.br/dicas_visual.asp?Codigo=3185&Classificacao=
Dim dados As dao.Database
Dim users As dao.Recordset
Private Sub CmdCadastrar_Click()
Set users = dados.OpenRecordset([Ô]Usuarios[Ô], dbOpenTable)
users.Index = [Ô]cod[Ô]
users.AddNew
users([Ô]nome[Ô]) = Text1
users([Ô]senha[Ô]) = Text2
users.Update
users.Close
End Sub
Private Sub CmdLogin_Click()
Set users = dados.OpenRecordset([Ô][Ô]Select * From Usuarios Where nome=[ô][Ô] & Text1.Text & [Ô][ô] and senha= [ô][Ô] & Text2.Text & [Ô][ô][Ô], dbOpenDynaset)
If not (users.EOF = True And users.BOF = True) Then
MsgBox ([Ô]Voçê esta logado![Ô]), vbInformation, [Ô]Login[Ô]
Else
MsgBox ([Ô]Login ou senha incorretos![Ô]), vbCritical, [Ô]Erro[Ô]
End If
End Sub
Private Sub Form_Load()
Set dados = OpenDatabase([Ô]C:\VB6 paroquia\cad.mdb[Ô])
End Sub
bom se não funcionar da uma lida neste link de 9 anos atrás
http://www.vbweb.com.br/dicas_visual.asp?Codigo=3185&Classificacao=
Citação::
Dim rs as Recordset
sSQL = [Ô]SELECT Usuario, Senha FROM tabela WHERE Usuario = [ô][Ô]& txtUsuario.text &[Ô][ô] and Senha = [ô][Ô]& txtSenha.text &[Ô][ô][Ô]
Set rs = Conexao.Execute.sSQL
If not (rs.EOF = True and rs.BOF = True) Then
[ô]Logado, faça o que quiser agora
Else
Msgbox [Ô]Usuário ou senha Incorreta[Ô], VbInformation + VbOkOnly, [Ô]Acesso negado[Ô]
End If
Amigo, basicamente seria isso!!!
Olha onde está o erro.
Set users = dados.OpenRecordset([Ô]Select [txt-color=#e80000]login,[/txt-color]* From Login Where Nome = [ô][Ô] & Text1.Text & [Ô][ô] and Senha = [ô][Ô] & Text2.Text & [Ô][ô][Ô], dbOpenDynaset)
Set users = dados.OpenRecordset([Ô]Select * From Login Where Nome = [ô][Ô] & Text1.Text & [Ô][ô] and Senha = [ô][Ô] & Text2.Text & [Ô][ô][Ô],
dbOpenDynaset)
ou
Set users = dados.OpenRecordset([Ô]Select Nome,Senha From Login Where Nome = [ô][Ô] & Text1.Text & [Ô][ô] and Senha = [ô][Ô] & Text2.Text & [Ô][ô][Ô], dbOpenDynaset)
Cabra,coloque seu banco onde está a pasta do projeto e abra desta forma.
Set dados = OpenDatabase(App.Path & [Ô]\basedados.mdb[Ô], False, False)
Set users = dados.OpenRecordset([Ô]Select [txt-color=#e80000]login,[/txt-color]* From Login Where Nome = [ô][Ô] & Text1.Text & [Ô][ô] and Senha = [ô][Ô] & Text2.Text & [Ô][ô][Ô], dbOpenDynaset)
Set users = dados.OpenRecordset([Ô]Select * From Login Where Nome = [ô][Ô] & Text1.Text & [Ô][ô] and Senha = [ô][Ô] & Text2.Text & [Ô][ô][Ô],
dbOpenDynaset)
ou
Set users = dados.OpenRecordset([Ô]Select Nome,Senha From Login Where Nome = [ô][Ô] & Text1.Text & [Ô][ô] and Senha = [ô][Ô] & Text2.Text & [Ô][ô][Ô], dbOpenDynaset)
Cabra,coloque seu banco onde está a pasta do projeto e abra desta forma.
Set dados = OpenDatabase(App.Path & [Ô]\basedados.mdb[Ô], False, False)
Tópico encerrado , respostas não são mais permitidas