none
Mostrar o Nome Proprio da pessoa ao logar com Utilizador e Passe RRS feed

  • Pergunta

  • Boa tarde,

    O meu programa consegue criar uma conta e guarda os dados no MySql.Workbench.

    Ao fazer login com o nome do Utilizador e com a Password, o programa vai para o form "principal" onde queria que aparece-se uma textbox com o nome Próprio do utilizador.

    Se poderem ajudar, agradecia muito.

    Comprimentos: Banheraz.

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using MySql.Data.MySqlClient;

    namespace ProjetoBanco

    {
       
        public partial class Logins : Form
        {
            
            public Logins()
            {
                InitializeComponent();
            }

            private void btn_SairLogin_Click(object sender, EventArgs e)
            {
                Application.Exit();
            }

            
            private void btn_Entrar_Click(object sender, EventArgs e)
            {
                if (txt_Utilizador.Text == "" || txt_Password.Text == "")
                {
                    MessageBox.Show("Preencha os campos");
                }
                else
                {
                    try
                    {

                        //Passa a string de conexão
                        MySqlConnection objcon = new MySqlConnection("server=localhost; port=3307; user=root; database=Projeto; password=@PW");
                        //abre a base de dados
                        objcon.Open();

                        //Comando Sql para pesquisar os dados da tabela

                        MySqlCommand objCmd = new MySqlCommand("select * from criar where Utilizador='" + txt_Utilizador.Text + "' and Passe='" + txt_Password.Text + "'", objcon);
                        objCmd.Parameters.Clear();

                        //executa o comando;
                        objCmd.CommandType = CommandType.Text;

                        //Receber o conteúdo que vem da base de dados
                        MySqlDataReader dr;
                        dr = objCmd.ExecuteReader(); //Ele vai executar o cmd;

                        //Insere as informações
                        dr.Read();

                        txt_Utilizador.Text = dr.GetString(0);
                        txt_Password.Text = dr.GetString(1);

                        MessageBox.Show("Login executado com sucesso!");
                        //fecha a conexão
                        objcon.Close();



                        Perfil frm = new Perfil();
                        frm.Show();
                        this.Hide();
                    }
                    catch (Exception)
                    {
                        MessageBox.Show("Utilizador ou Password inválidos!!");
                    }
                }
            }

            private void btn_Criar_Click(object sender, EventArgs e)
            {
                Conta frm = new Conta();
                frm.Show();
                this.Hide();          
            }

            private void Logins_Load(object sender, EventArgs e)
            {
                string texto = txt_Utilizador.Text;
                
               
            }

            private void txt_Utilizador_TextChanged(object sender, EventArgs e)
            {
                txt_Utilizador.Text = System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(this.txt_Utilizador.Text);
                txt_Utilizador.Select(txt_Utilizador.Text.Length, 0);
            }

            private void txt_Password_KeyDown(object sender, KeyEventArgs e)
            {
               
            }
        }
    }



    • Editado Banheraz quinta-feira, 13 de fevereiro de 2020 17:16
    quinta-feira, 13 de fevereiro de 2020 17:15

Todas as Respostas

  • Olá Banheraz.

    Como o seu código não está em vb, eu não tenho como te passar o código, mas o que eu sei sobre o vb, daria para você declarar uma variável publica, e ao ler do banco de dados vc colocaria a informação do usuário nessa variável,

    e quando você fazer o load do form, é só jogar a variável no textbox que você quiser.

    esse método seria fácil pois você poderia usar essa mesma informação em qualquer form que você queira.

    No vb eu faria assim

    'Criaria um módulo ex public.vb e nele colocaria
    Public strUserName as string
    
    'Aí quando buscasse a info no banco de dados
    
    strUsername = dr.GetString(0)
    
    'Aí em todos os forms que você queira utilizar essa info 'seria só declarar
    
    txtUserName.text = strUserName


    Espero que ajude. 

    Caso ajude, votar e marcar como resposta

    Abraços.

    -----------------------------------------

    Kristian Francischini


    • Sugerido como Resposta kristianmsf sexta-feira, 14 de fevereiro de 2020 02:34
    • Editado kristianmsf sexta-feira, 14 de fevereiro de 2020 02:37
    sexta-feira, 14 de fevereiro de 2020 02:34