Дополнительная проверка поля при авторизации - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, у меня имеется СУБД с авторизацией.Работаю я в Visual Studio 2017. В DataSet в таблице Users используется такой запрос :
Листинг программы
  1. SELECT [Id_Acc],[Логин],[Пароль],[ФИО],[Должность],[Доступ] FROM Users WHERE [Логин]=? AND [Пароль]=?
В окне авторизации на кнопке вход используется такой код:
Листинг программы
  1. private void button1_Click(object sender, EventArgs e)
  2. {
  3. if (string.IsNullOrEmpty(textBox1.Text))
  4. {
  5. MessageBox.Show("Введите ваш логин.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  6. textBox1.Focus();
  7. return;
  8. }
  9. try
  10. {
  11. vokzalDataSetTableAdapters.UsersTableAdapter user = new vokzalDataSetTableAdapters.UsersTableAdapter();
  12. vokzalDataSet.UsersDataTable dt = user.GetDataUsername(textBox1.Text, textBox2.Text);
  13. if (dt.Rows.Count > 0)
  14. {
  15. MessageBox.Show("Вы успешно вошли в систему.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
  16. Form1 fr2 = new Form1();
  17. fr2.Show();
  18. Hide();
  19. Admin = "Admin";
  20. if (textBox1.Text == Admin)
  21. {
  22. fr2.админПанельToolStripMenuItem.Visible = true;
  23. }
  24. }
  25. else
  26. {
  27. MessageBox.Show("Введённые данные некорректны.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
  28. }
  29. }
  30. catch (Exception ex)
  31. {
  32. MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
  33. }
По сути если есть совпадение в БД логин=пароль возвращается 1 строка, значит данные введены верно и Программа пускает пользователя. Для проверки работоспособности программы я использовал банальный способ, если логин Admin то показывается кнопка в меню для открытия интерфейса управления программой.Так вот теперь мне нужно как то усложнить эту систему путем , если в БД в имеется галочка в поле Доступ , то показать эту кнопку. Или же мне придется переписывать запрос авторизации с типа Textbox1 like password и тому подобные. Я просто не знаю как проверить есть ли галочка в этом поле в моем запросе. Он же просто возвращает строку. В общем прошу помощи в реализации нового запроса на Авторизацию и проверочки галочки.

Решение задачи: «Дополнительная проверка поля при авторизации»

textual
Листинг программы
  1. SELECT [Id_Acc],[Логин],[Пароль],[ФИО],[Должность],[Доступ] FROM Users WHERE [Логин]=? AND [Пароль]=? AND Доступ=1

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы