1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Ajuda em Visual Basic

Discussão em 'Programação' iniciada por joaojesus., 21 de Outubro de 2012. (Respostas: 8; Visualizações: 984)

  1. joaojesus.

    joaojesus. Power Member

    Bem é o seguinte estou a fazer um programa e quero fazer um formulário de opções ...

    a) Alterar foto de perfil (envolve criar mais um campo na BD)
    b) Alterar palavra-passe (pedir password antiga, e introdução de nova palavra passe 2 vezes);
    c) Alterar dados pessoais (morada, e-mail, telefone...)

    Ajuda por favor
     
  2. Lincky

    Lincky Power Member

    O quê que tu já tens feito?
     
  3. joaojesus.

    joaojesus. Power Member

    Já fiz a parte da foto.
    Agora estou mais preocupado com a parte de alterar palavra-passe , sei que são preciso 3 textbox's onde 2 são para a palavra passe nova e 1 para a palavra passe antiga.
    Começando por verificar se a nova palavra-passe é igual nas 2 textbox's e se for verifica se a palavra antiga é a que consta na base de dados.
    Também queria por alguns critérios exemplo: se a password tem menos de 6 letras nem sequer verifica. etc
    Basicamente só tenho a windows form feita...

    Ajuda sff
     
    Última edição: 24 de Outubro de 2012
  4. Lincky

    Lincky Power Member

    Ok, vamos por partes....


    Primeiro tu precisas de fazer um query para verificar a password actual (inserida na base de dados), do utilizador.
    Exemplo para bases de dados (SQL CE):






    Imports System.Data.SqlServerCe


    Dim password as string


    Sub verifica_password()
    Try
    Dim db As New SqlCeConnection("conecção")
    db.Open()
    Dim myCommand As New SqlCeCommand("Select Password from Utilizadores Where ID=" & iduser", db)
    Dim dr As SqlCeDataReader
    dr = myCommand.ExecuteReader
    While dr.Read()
    password = dr.item(0)
    End While
    if not Textbox_PasswordAntiga.text = password then
    msgbox("A Password antiga não está correcta!")
    exit sub
    else
    inserir_nova_pass
    end if
    Catch ex As Exception
    MsgBox("Ocorreu o seguinte erro: " & ex.Message, MsgBoxStyle.Critical)
    End Try
    End Sub




    Sub Inserir_nova_pass()
    try
    if not TextBox_PasswordConfirma.text = Textbox_PasswordNova.text then
    msgbox("A password não foi confirmada correctamente!")
    else
    Dim db As New SqlCeConnection("conecção")
    db.Open()
    Dim varsql As String = "UPDATE Utilizadores SET [email protected] Where ID=" & idUser
    Dim cmd As New SqlCeCommand(varsql, db)
    cmd.Parameters.Add(New SqlCeParameter("@Password", SqlDbType.NText)).Value = RPass_txt.Text
    cmd.ExecuteNonQuery()
    end if
    Catch ex As Exception
    MsgBox("Ocorreu o seguinte erro: " & ex.Message, MsgBoxStyle.Critical)
    End Try
    end sub






    No botão colocas:
    verifica_password()
    Inserir_nova_pass()
     
  5. flaviorodrigues

    flaviorodrigues Power Member

    atencao que o verifica password sofre de sql injection, usa cmd.Parameters.Add.

    Outra coisa, para o autor do topico, procura um pouco na net, pesquisa etc, cheira me que chegas aqui e espetas o enunciado de um trabalho e o pessoal que to faça.
     
  6. joaojesus.

    joaojesus. Power Member

    Não , estou a aprender visual basic , só que não dei isto e vai sair no teste...
    E estou a usar base de dados Acess
    portanto acho que não dá o código que puseste , mas vou tentar adaptar...
    Tentei adaptar sem sucesso , mas obrigado desde já
     
    Última edição: 25 de Outubro de 2012
  7. Lincky

    Lincky Power Member

  8. joaojesus.

    joaojesus. Power Member

    Não , ja tentei de tudo , já dei toda as voltas possíveis na minha cabeça e não chego a nada
     
  9. flaviorodrigues

    flaviorodrigues Power Member

    mas qual é mesmo a duvida?
    Nos links acima tens como mostrar os dados no form.

    Crias um form novo, poes as caixas texto e ja poes a mostrar os valores.

    Depois um botao "gravar" poes a fazer "update" a base de dados
     

Partilhar esta Página