Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# и базы данных, ADO.NET

Войти
Регистрация
Восстановить пароль
 
 
Programm
Заблокирован
#1

Продумать логику авторизации в бд - C#

12.10.2014, 15:19. Просмотров 1181. Ответов 28
Метки нет (Все метки)

есть таблица созданная в Access (Login) в ней два поля (Логин и Пароль). Как реализовать проверку: водим логин в текстбокс1 и пароль в текстбокс2, нажимаем кнопку, если совпали данные, то все хорошо, иначе ошибка.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2014, 15:19
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Продумать логику авторизации в бд (C#):

Как лучше продумать интерфейс и логику БД для больницы (MS SQL) - C#
Есть база Больница. Требуется чтобы в C# заполнялось в форме Лечение и указывались лекарства и цена. Список лекарств и цена будет в...

Сбор данных с серверов. Продумать архитектуру - C#
Прочел книгу по C#, про патерны. Теперь хочу написать проект, но возникли трудности с построением архитектуры классов, конечно можно в лоб...

Как продумать устройство и связь таблиц в БД для спортивной игры - C#
Здравствуйте, подскажите, пожалуйста, правильно ли я понимаю и как лучше это реализовать. Задача: Есть спортивная игра, в которой...

Задача на логику из реального приложения - C#
Всем доброго времени суток! Задача из реальной программы по прочностному расчету, но не пугайтесь, тут только логика и арифметика....

Пишу Lines на C#. Как построить логику игры - C#
Доброго времени суток. Пишу игру линии... Уже отчаиваюсь от сложности... У меня есть 2 формы: 1) Игрок задает сложность игры и размер...

Пишу шашки на C#, как организовать логику игры - C#
Я пишу шашки, но пока что я начинающий сишарпер и мне нужно сформировать условие, а заключается оно в следующем: первые 2 IF организуют ход...

28
meksik
202 / 171 / 54
Регистрация: 04.10.2014
Сообщений: 839
12.10.2014, 15:51 #2
Programm, запоминаем в переменные login и password строки из текстбоксов и делаем параметризованный SQL запрос к БД, например
SQL
1
SELECT id FROM users WHERE login = @login AND password = @password
проверяем условием
C#
1
if (reader.Read()) //если true то авторизация успешна и наоборот
Добавлено через 6 минут
вообще конечно шифрование юзать для пароля

Добавлено через 3 минуты
реализация шифривания пароля MD5 на C#
0
Programm
Заблокирован
12.10.2014, 15:58  [ТС] #3
база данных MS Access 2007. Можешь написать полный код всего этого? в C# с бд работаю впервые.
запомнил в переменные строки из textbox. Как дальше их проверить на условия из бд?
0
meksik
202 / 171 / 54
Регистрация: 04.10.2014
Сообщений: 839
12.10.2014, 16:05 #4
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
            OleDbConnection conn;
            string login = "login";
            string password = "password";
            try 
            {
                conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\mydatabase.mdb;User Id=admin;Password=;");
                conn.Open(); //Подключаемся к бд
                string command = "SELECT id FROM users WHERE login = @login AND password = @password";
                OleDbCommand  com = new OleDbCommand(command, conn);
                com.Parameters.AddWithValue("@login", login);
                com.Parameters.AddWithValue("@password", password);
                OleDbDataReader reader = new OleDbDataReader();
                reader = com.ExecuteReader();
                if (reader.Read()) { 
                    MessageBox.Show("Вы были успешно авторизованы");
                    //дальше пишем что нужно
                }
                else 
                {
                    MessageBox.Show("Неверный логин или пароль!"); 
                }
            }
            catch (Exception ex) 
            {
                MessageBox.Show(ex.Message); //Если ловим ошибку выводим её 
            }
            finally 
            {
                conn.Close(); //Закрываем подклюючение при любом раскладе
            }
код исправлен!
0
Programm
Заблокирован
12.10.2014, 16:08  [ТС] #5
для OleDbDataReader не определен конструктор
0
meksik
202 / 171 / 54
Регистрация: 04.10.2014
Сообщений: 839
12.10.2014, 16:11 #6
Programm, пространство имен подключить надо
C#
1
using System.Data.OleDb;
а ещё для Access 2007 строка подключения такая по идее
C#
1
2
3
4
conn = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\mydatabase.mdb;User Id=admin;Password=;");
//mydatabase.mdb //имя файла БД
//User Id=admin тут вместо admin имя пользователя БД
//Password= если пароль нужен пишем сюда
0
Programm
Заблокирован
12.10.2014, 16:13  [ТС] #7
имена были подключены. А БД я подключал через "Добавление нового источника данных"
0
meksik
202 / 171 / 54
Регистрация: 04.10.2014
Сообщений: 839
12.10.2014, 16:14 #8
Programm, сорри просто
C#
1
OleDbDataReader reader;
конечно же
0
Programm
Заблокирован
12.10.2014, 16:18  [ТС] #9
ExecuteReader: свойство connection не инициализировано
0
meksik
202 / 171 / 54
Регистрация: 04.10.2014
Сообщений: 839
12.10.2014, 16:29 #10
Programm, если ты пользовался подключение через VS, то строку подключения можно достать так
C#
1
Properties.Settings.Default.MyDBConnectionString
Добавлено через 2 минуты
Цитата Сообщение от Programm Посмотреть сообщение
ExecuteReader: свойство connection не инициализировано
это вы уже походу сами там что то намутили

Добавлено через 2 минуты
у меня подключение проходит отлично
0
Programm
Заблокирован
12.10.2014, 16:30  [ТС] #11
это я уже исправил. И сделал подключение к бд через код. Но он пишет что этого файла нет и пишет путь. Я захожу туда и файл там лежит, но он не видит его почему то
0
meksik
202 / 171 / 54
Регистрация: 04.10.2014
Сообщений: 839
12.10.2014, 16:31 #12
Programm, через VS запускаете в режиме отладки?
если да, то проверьте, что у вас в папке Debug проекта лежит файл БД
0
Programm
Заблокирован
12.10.2014, 16:33  [ТС] #13
файл там лежит, но он не видит его
0
meksik
202 / 171 / 54
Регистрация: 04.10.2014
Сообщений: 839
12.10.2014, 16:34 #14
покажите что у вас написано в файле app.config
0
Programm
Заблокирован
12.10.2014, 16:37  [ТС] #15
где должен лежать этот файл? делаю поиск - его вообще нет
0
12.10.2014, 16:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2014, 16:37
Привет! Вот еще темы с ответами:

Правильно ли это : выносить логику по возможности в данные ? - C#
Ваяю приложение в паттерне MVVM, с прицелом на дальнейшее частичное портирование на мобильную платформу. И стараюсь, по возможности,...

Передача переменной в метод - объясните логику (код внутри) - C#
Добрый день! using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; ...

Подскажите решение или логику задачи с поиском количества друзей - C#
Задача такова: Есть какаято компания, ее директор Петр, он хочет уволить кого то, но незнае кого, и решил уволить того у кого будет...

Как лучше организовать бизнес-логику и сильно связанные сущности - C#
Доброго времени суток! Суть вот в чем. В модели Entity Framework (db first) имеется несколько сущностей, допустим "Заявка" и "Задача в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru