COMO FAZER UM LOGIN COM ACESSO A BANCO DE DADOS?

GJBSANTOS 04/12/2010 13:51:18
#358789
Eu tenho uma form de login mas tenho de a fazer com ligação a banco de dados ... O problema é que não sei como

Alguém me pode ajudar por favor?

Desde já, Obrigado

GS.
GJBSANTOS 04/12/2010 17:06:28
#358796
Citação:

:
GJSANTOS,
Primeiro: Você utiliza qual banco de dados, em que pé esta seu sistema ou aprendizado ?
Segundo:O Login, se não é a ultima,é uma das ultimas coisas a ser implantada, e até la certamente vc já sabera como fazer.



Meu banco de dados é em access 2007 ... é que tou mesmo atrapalhado para terminar meu programa... sá falta mesmo isto

Agradecia
RODRIGOFERRO 04/12/2010 18:46:10
#358798
Primeiro de tudo, eu crio uma Structure


Public Structure Login

Dim PrimeiroNome As String
Dim UltimoNome As String
Dim SenhaCriptografada As String
Dim Senha As String
Dim Login As String
Dim Codigo As Integer
Dim Nivel As Integer

End Structure

Public TypLogin As New Login


Depois disso eu Faço uma consulta no banco e preencho essa structure.. ( nesse exemplo estou usando Entity Framework 4 para conexao e seleção de dados )


Using Users = New vegasEntities(entityBuilder.ToString())

Dim Usuarios = Users.pes_usuario.SingleOrDefault(Function(p) p.usu_login = txtLogin.Text)

If Not IsNothing(Usuarios) Then

Modulos.modStructure.TypLogin.Codigo = Usuarios.usu_codigo
Modulos.modStructure.TypLogin.Login = Usuarios.usu_login
Modulos.modStructure.TypLogin.Nivel = Usuarios.usu_nivel
Modulos.modStructure.TypLogin.PrimeiroNome = Usuarios.usu_nome
Modulos.modStructure.TypLogin.Senha = cripto.Decrypt(Usuarios.usu_senha)
Modulos.modStructure.TypLogin.SenhaCriptografada = Usuarios.usu_senha
Modulos.modStructure.TypLogin.UltimoNome = Usuarios.usu_nome

End If

Return Not IsNothing(Usuarios)

End Using


ai no Click do Botao [Ô]Entrar[Ô] ele executa essas ações...


Select Case True

[ô]Verifica se o campo Login esta vazio
Case txtLogin.Text = String.Empty

ShowTaskDialogBox(Me, [Ô]VegasNET, sua transportadora em suas mãos ![Ô],
[Ô]Ocorreu um Erro[Ô],
[Ô]O Campo [Ô] & [Ô][Ô][Ô]LOGIN[Ô][Ô][Ô] & [Ô] não pode ficar em branco[Ô],
[Ô][Ô],
[Ô]Favor digitar um login para continuar[Ô],
[Ô][Ô],
[Ô][Ô],
[Ô][Ô],
PSTaskDialog.eTaskDialogButtons.OK,
PSTaskDialog.eSysIcons.Error,
PSTaskDialog.eSysIcons.Error)

txtLogin.Focus()

Exit Sub

[ô]Verifica se o campo Senha esta vazio
Case txtSenha.Text = String.Empty

ShowTaskDialogBox(Me, [Ô]VegasNET, sua transportadora em suas mãos ![Ô],
[Ô]Ocorreu um Erro[Ô],
[Ô]O Campo [Ô] & [Ô][Ô][Ô]SENHA[Ô][Ô][Ô] & [Ô] não pode ficar em branco[Ô],
[Ô][Ô],
[Ô]Favor digitar uma senha para continuar[Ô],
[Ô][Ô],
[Ô][Ô],
[Ô][Ô],
PSTaskDialog.eTaskDialogButtons.OK,
PSTaskDialog.eSysIcons.Error,
PSTaskDialog.eSysIcons.Error)

txtSenha.Focus()

Exit Sub

End Select

[ô]Preenxe os dados e verifica se existe usuario e ja taca uma mensagem na tela
If PesquizarUsuario() = False Then

ShowTaskDialogBox(Me, [Ô]VegasNET, sua transportadora em suas mãos ![Ô],
[Ô]Dados Inválidos[Ô],
[Ô]O Login digitando não existe no banco de dados[Ô],
[Ô][Ô],
[Ô]Favor informar um login válido[Ô],
[Ô][Ô],
[Ô][Ô],
[Ô][Ô],
PSTaskDialog.eTaskDialogButtons.OK,
PSTaskDialog.eSysIcons.Error,
PSTaskDialog.eSysIcons.Error)

txtLogin.Focus()
Exit Sub

End If

[ô]se existir o login digitado compara a senha
[ô]se o cara digitar 3 vezes errado ele fecha o programa.
If LCase((Modulos.TypLogin.Login & [Ô]*[Ô] & Modulos.TypLogin.Nivel & [Ô]*[Ô] & txtSenha.Text)) <> LCase(Modulos.TypLogin.Senha) Then

txtSenha.Focus()
intTentativa = intTentativa + 1

If intTentativa = 4 Then
End
Else
strTentativaAtual = [Ô]Você tem[Ô] + Str(4 - intTentativa) + [Ô] Tentativas Restantes[Ô]

If intTentativa = 3 Then
strTentativaAtual = [Ô]Esta é a sua Ultima Chance[Ô]
End If

ShowTaskDialogBox(Me, [Ô]VegasNET, sua transportadora em suas mãos ![Ô],
[Ô]Dados Inválidos[Ô],
[Ô]A Senha foi digitada incorretamente[Ô],
[Ô][Ô],
strTentativaAtual,
[Ô][Ô],
[Ô][Ô],
[Ô][Ô],
PSTaskDialog.eTaskDialogButtons.OK,
PSTaskDialog.eSysIcons.Error,
PSTaskDialog.eSysIcons.Error)

txtSenha.Focus()
txtSenha.SelectAll()

End If
Else

[ô]Aqui ele diz que esta logado e voce pode chamar o form principal
bpLogado = True
[ô]fctMensagem_Livre([Ô]Dados Corretos[Ô], [Ô]Login Válido[Ô], [Ô]Senha Correta, Acesso Liberado[Ô],
[ô][Ô]Vegas.NET - Controle de Transportadoras[Ô])
Me.Dispose()
End If


é so para voce ter uma idéia dos procedimentos, sua conexao com certeza é diferente, mas é so voce ir adaptando...
Tópico encerrado , respostas não são mais permitidas