Ir para conteúdo
Fórum Script Brasil
  • 0

Formulário p/ Allteração de Senhas


Raphael Souza

Pergunta

Olá

Tenho um sistema em access e pus nele uma tela de login, até aí beleza.

Meu problema é o seguinte:

Estou precisando de um form pra atualizar o cadastro de usuários e até mesmo pra trocar as senhas se necessário.

Minha tabela login tem os seguintes campos: IDUSER, USER, LOGIN (senha do usuário) , TIPOUSUARIO (define o nível de acesso).

Estava usando o seguinte código, mas ele não atualiza a tabela:

""( meu form de alterar senha tem 4 campos, txtUsuario corresponde ao USER da tabela, txtAnterior ao LOGIN, txtNova e txtConfirma são os campos onde digito e re-digito a senha nova"

Private Sub txtUsuario_Exit(Cancel As Integer)

If Nz(txtUsuario, "") = "" Then

Cancel = True

Else

txtAnterior.Locked = False

txtAnterior.Enabled = True

txtAnterior.SetFocus

txtUsuario.Locked = False

txtUsuario.Enabled = True

End If

End Sub

Private Sub txtUsuario_NotInList(NewData As String, Response As Integer)

MsgBox "USUÁRIO NÃO ESTÁ CADASTRADO!."

txtUsuario = ""

End Sub

Private Sub Form_Error(DataErr As Integer, Response As Integer)

If DataErr = 2237 Then

Response = acDataErrContinue

End If

End Sub

Private Sub txtAnterior_Exit(Cancel As Integer)

Dim xBusca As Variant

xBusca = DLookup("[LOGIN]", "LOGIN", "[LOGIN] = '" & txtAnterior & "' and [uSER] ='" & txtUsuario & "'")

If Nz(xBusca, "") <> txtAnterior Then

Cancel = True

MsgBox "SENHA INVÁLIDA"

Else

txtNova.Locked = False

txtNova.Enabled = True

txtConfirma.Locked = False

txtConfirma.Enabled = True

txtUsuario.Locked = True

txtUsuario.Enabled = False

txtNova.SetFocus

txtAnterior.Locked = True

txtAnterior.Enabled = False

End If

End Sub

Private Sub txtNova_Exit(Cancel As Integer)

If Nz(txtNova, "") = "" Then

Cancel = True

End If

End Sub

Private Sub txtConfirma_Exit(Cancel As Integer)

Dim ErrorPass As Integer

ErrorPass = 0

If Len(txtConfirma) < 5 Then

ErrorPass = 1

End If

If txtConfirma <> txtNova Then

ErrorPass = 2

End If

If txtConfirma = txtAnterior Then

ErrorPass = 3

End If

If txtConfirma = txtUsuario Then

ErrorPass = 4

End If

If InStr(txtConfirma, txtUsuario) > 0 Then

ErrorPass = 5

End If

Select Case ErrorPass

Case 0

MsgBox "NOVA SENHA ATUALIZADA COM SUCESSO! O SISTEMA SERÁ REINICIADO"

Case 1

MsgBox "SENHA TEM QUE TER NO MÍNIMO 5 DÍGITOS."

Case 2

MsgBox "SENHA INVÁLIDA! DIGITE DE NOVO."

Case 3

MsgBox "NOVA SENHA É IGUAL À ANTERIOR, DIGITE UMA SENHA DIFERENTE."

Case 4

MsgBox "SENHA É IGUAL AO USUÁRIO! DIGITE UMA SENHA DIFERENTE."

Case 5

MsgBox ""

End Select

If ErrorPass > 0 Then

txtConfirma = ""

txtNova = ""

Else

txtNova.Locked = True

txtConfirma.Locked = True

DoCmd.SetWarnings False

DoCmd.RunSQL "UPDATE LOGIN SET LOGIN = [txtNova] " _

& "WHERE ([LOGIN]![uSER] = txtUsuario)"

DoCmd.SetWarnings True

End If

DoCmd.Quit

End Sub

Como sempre, desde já agradeço a colaboração, atençã e ajuda de todos.

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...