Авторизация пользователей в C# .NET WinForms: База данных

Алгоритм авторизации

При нажатии на кнопку «Войти»:

  1. Программа получает данные, введенные пользователем в поля логина и пароля.
  2. Эти данные проверяются на существование в таблице users базы данных.
  3. Если логин и пароль верны, пользователь авторизуется.
  4. В противном случае, авторизация отклоняется.

Реализация авторизации в C#

Обработчик события Click и получение данных пользователя

Создаем обработчик события buttonLogin_Click. Внутри него получаем логин и пароль из полей login_field.Text и pass_field.Text соответственно, сохраняя их в переменных login_user и pass_user типа string. Переименование кнопки в «buttonLogin» улучшает читаемость кода.

string login_user = login_field.Text;
string pass_user = pass_field.Text;

Подключение к базе данных и формирование SQL-запроса

Создаем объекты для работы с базой данных: DbConnection (созданный в предыдущем уроке), MySqlCommand для формирования SQL-запроса и MySqlDataAdapter (требуется подключить директиву using MySql.Data.MySqlClient). Для безопасного запроса используем параметры вместо непосредственной подстановки переменных:

SELECT * FROM users WHERE login = @login AND pass = @pass

Реализация в C#:

// ... создание объекта DbConnection ...
MySqlCommand command = new MySqlCommand("SELECT * FROM users WHERE login = @login AND pass = @pass", connection);
command.Parameters.AddWithValue("@login", login_user);
command.Parameters.AddWithValue("@pass", pass_user);

Выполнение запроса и обработка результатов

Выполняем запрос с помощью MySqlDataAdapter и проверяем количество полученных строк. Если количество строк больше нуля, авторизация успешна; иначе — неуспешна.

MySqlDataAdapter adapter = new MySqlDataAdapter(command);
DataTable dt = new DataTable();
adapter.Fill(dt);

if (dt.Rows.Count > 0)
{
    MessageBox.Show("Пользователь авторизован");
}
else
{
    MessageBox.Show("Пользователь не авторизован");
}

В статье описан процесс реализации авторизации пользователя в C# приложении Windows Forms с использованием базы данных MySQL. Процесс включает получение данных от пользователя, формирование безопасного SQL-запроса, его выполнение и проверку результатов. При использовании удаленного сервера базы данных необходимо заменить параметры подключения на соответствующие данные, предоставленные хостинг-провайдером. Этот подход обеспечивает надежную и безопасную авторизацию.

Что будем искать? Например,программа