Tutorial C# 2: Crear Formulario de Inicio Sesión con MySql

Hola chicos, bienvenidos una vez más. En el último artículo les mostré cómo conectar una base de datos MySQL con una aplicación de formularios de Windows en C#. En este artículo les mostraré cómo crear una aplicación simple de inicio de sesión con C# y MySQL.

Inicio de sesión en C# y MySQL

Por ejemplo, he creado un formulario con un campo de nombre de usuario y contraseña. Cuando ingreso el nombre de usuario y la contraseña y presiono el botón de inicio de sesión, obtengo una respuesta que indica si el nombre de usuario y la contraseña son correctos. Para comprobar esto, se realiza una consulta en la base de datos MySQL.

Por ejemplo, he ingresado el nombre de usuario y la contraseña que también están presentes en mi base de datos MySQL. Tengo una tabla llamada «data» en mi base de datos y aquí tengo el nombre de usuario y la contraseña. Si ingreso el nombre de usuario y la contraseña correctos, me dirá que el nombre de usuario y la contraseña son correctos.

Entonces, ¿cómo se puede crear esta página de inicio de sesión? Lo mostraré hoy, así que empecemos. Primero, vaya a su formulario y tome un cuadro de texto y arrástrelo aquí. Tome dos cuadros de texto de su caja de herramientas y arrástrelos aquí. Voy a borrar esto y llevarlos a dos etiquetas de su caja de herramientas. Cambie el texto de esta etiqueta desde las propiedades. Por ejemplo, voy a cambiarlo por «nombre de usuario». He proporcionado el nombre de usuario y la contraseña a mis etiquetas de texto, como un título. Cuando ingrese algo en el cuadro de texto, aparecerá como un título para su etiqueta. Voy a borrar esto, solo tome dos etiquetas y dos cuadros de texto y un botón.

En la misma forma, vaya a las propiedades y cambie el texto de botón a «Iniciar sesión». Ahora, para estos cuadros de texto, vaya a las propiedades y cambie el nombre de estos cuadros de texto, por ejemplo, «nombre_de_usuario_txt» y «contraseña_txt». Estos nombres son como nombres de variables para sus cuadros de texto. Podemos usar estas variables en el código que vamos a escribir para el inicio de sesión. Cambie el nombre del primer cuadro de texto como «nombre_de_usuario» y el segundo como «contraseña_txt». Recuerde estos nombres de variables que usaremos en el código. Ahora, vaya al botón, selecciónelo y haga doble clic en él.

En este espacio, escribiremos nuestro código. Igual que la última vez, les mostré cómo hacer la conexión de C# con MySQL. Usaremos algunas de las mismas líneas aquí. Primero, vamos a crear un bloque de try-catch. Dentro del bloque try, escribimos el siguiente código:

string connectionString = "nombre_de_fuente_de_datos=localhost;base_de_datos=nombre_de_tu_base_de_datos;usuario=root;contraseña=root;";

try
{
    MySqlConnection conexion = new MySqlConnection(connectionString);
    MySqlCommand comando = new MySqlCommand("SELECT * FROM tabla WHERE nombre_de_usuario = '" + nombre_de_usuario_txt.Text + "' AND contraseña = '" + contraseña_txt.Text + "';", conexion);

    conexion.Open();
    
    MySqlDataReader lector = comando.ExecuteReader();
    int count = 0;

    while (lector.Read())
    {
        count++;
    }

    if (count == 1)
    {
        MessageBox.Show("El nombre de usuario y la contraseña son correctos.");
    }
    else if (count > 1)
    {
        MessageBox.Show("Usuario y contraseña duplicados. Acceso denegado.");
    }
    else
    {
        MessageBox.Show("El nombre de usuario y la contraseña no son correctos. Por favor, inténtalo de nuevo.");
    }
    
    conexion.Close();
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message);
}

Si necesitas copiar el código, asegúrate de prestar atención a la indentación, ya que esto es importante en C#. Después de escribir el código, vamos a ejecutarlo.

Tenemos nombres de usuario y contraseñas del 1 al 9. Por ejemplo, si ingreso el nombre de usuario y la contraseña «3» y «3», verificará si el nombre de usuario y la contraseña son correctos. Si son correctos, dirá que el nombre de usuario y la contraseña son correctos. Si te fijas aquí, el nombre de usuario número 5 está presente dos veces en mi base de datos. Cuando ingreso «5» aquí y presiono iniciar sesión, dirá «Usuario y contraseña duplicados. Acceso denegado.» Porque dos usuarios no pueden tener el mismo nombre de usuario y la misma contraseña. Por eso mostramos este mensaje. Tengo nombres de usuario y contraseñas hasta el número 9, así que cuando ingrese un nombre de usuario y una contraseña incorrectos o no estén en la base de datos MySQL, verás cuál es el resultado. Si ingreso «122» como un nombre de usuario y contraseña y hago clic en iniciar sesión, me dirá «El nombre de usuario y la contraseña no son correctos. Por favor, inténtalo de nuevo.» En cualquier otra condición, si el nombre de usuario y la contraseña no son correctos, mostrará el mensaje «El nombre de usuario y la contraseña no son correctos. Por favor, inténtalo de nuevo.»

En el siguiente video, mostraré cómo proteger la contraseña para que solo muestre símbolos en lugar de la contraseña real. Así que no te lo pierdas. Por favor, danos tu opinión, comenta, suscríbete y nos vemos.

Deja un comentario