Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 30.04.2015
Сообщений: 2
MySQL

Ввод данных при авторизации

26.10.2016, 09:47. Показов 758. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят, возник такой вопрос. При входе в прогу юзер вводит логин и пароль. Как сделать так, что бы после авторизации некоторые данные, в зависимости от авторизированного юзера автоматически вытащить из базы? Например: при авторизации определенного менеджера он мог в личном кабинете просмотреть информацию о том, сколько заключил договоров, а при добавлении договора, в место выбора из списка менеджеров, сразу вводились данные нужного менеджера.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.10.2016, 09:47
Ответы с готовыми решениями:

Вывод данных при авторизации в БД
Здравствуйте, помогите пожалуйста найти ошибку, авторизацию прохожу успешно, но при попытке передать на другую форму ФИО учётной записи,...

Повторный вход при авторизации
Уважаемые помогите пожалуйста решить такую проблемку! Суть такая, прежде чем попасть на основную форму, пользователю предлагается ввести...

Безопасная передача данных при авторизации
Где безопаснее всего хранить данные при авторизации и регистрации?Нужно ли их кодировать?

4
5978 / 4553 / 1095
Регистрация: 29.08.2013
Сообщений: 28,180
Записей в блоге: 3
26.10.2016, 09:57
Цитата Сообщение от deneg Посмотреть сообщение
Как сделать так, что бы после авторизации некоторые данные, в зависимости от авторизированного юзера автоматически вытащить из базы?
что значит как?

запросом вытаскиваете из базы все что хотите.
Задайте конкретный вопрос или опишите что не получается
0
W
 Аватар для kavasaka
115 / 115 / 33
Регистрация: 16.04.2013
Сообщений: 750
26.10.2016, 12:58
Цитата Сообщение от deneg Посмотреть сообщение
сразу вводились данные нужного менеджера
после авторизации сохранять код юзера в глобальную переменную и при вводе полей из нее брать код и забивать в предусмотренное для этого поле кода_юзера.
Цитата Сообщение от deneg Посмотреть сообщение
информацию о том, сколько заключил договоров
запросом фильтровать данные по этому полю кода_юзера.
0
17 / 17 / 5
Регистрация: 13.10.2015
Сообщений: 102
26.10.2016, 13:26
В таблицу авторизации добавил бы поле ПОЛНОМОЧИЙ и исходя из этого работал бы дальше
0
0 / 0 / 3
Регистрация: 21.09.2015
Сообщений: 135
26.10.2016, 18:05
Если правильно понял, то примерно что-то такое: пример авторизации с выводом данных после успешного входа в ЛК+аватарка...
Кликните здесь для просмотра всего текста
Delphi
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
procedure TForm1.Button1Click(Sender: TObject);
var
  //i: Integer;
  imagePath: String;
  nowDate: TDateTime;
  DaysOld, Days: Double;
  Years, Months: Integer;
begin
 try
 //проверка на заполнение полей
if (Edit1.Text<>'') and (Edit2.Text<>'') then
 begin
 
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Text:= 'SELECT u.id, doc.doctor_id, u.username,'    +
                                    'u.password,'    +
                                    'u.photo_res, '   +
                                    'u.last_visited, '   +
                                    'doc.first_name, '   +
                                    'doc.doc_name, '   +
                                    'doc.last_name, '   +
                                    'doc.address, '   +
                                    'doc.phone_number, '   +
                                    'doc.mail '   +
                       'FROM userss u ' +
                       'INNER JOIN doctors doc ' +
                       'ON u.doctor_id_ref = doc.doctor_id '+
                       'WHERE u.username=' + QuotedStr(Edit1.Text);
  ADOQuery1.Active;
  ADOquery1.Open;
 
//если результат запроса отличный от нуля
if ADOQuery1.RecordCount <> 0 then
    begin
    //и если введенный пароль и пароль из базы совпадают
     if ADOQuery1.FieldByName('password').AsString = LowerCase(Trim(Edit2.Text)) then
         begin
         //определяем наши данные
          gULogin:=     ADOQuery1.FieldByName('username').AsString;
          gUId:=        ADOQuery1.FieldByName('id').AsInteger;
          gUName:=      ADOQuery1.FieldByName('doc_name').AsString;
          gUFirstname:= ADOQuery1.FieldByName('first_name').AsString;
          gULastName:=  ADOQuery1.FieldByName('last_name').AsString;
          gUAddress:=   ADOQuery1.FieldByName('address').AsString;
          gUPhone:=     ADOQuery1.FieldByName('phone_number').AsInteger;
          gUMail:=      ADOQuery1.FieldByName('mail').AsString;
          gULastVisit:= ADOQuery1.FieldByName('last_visited').AsDateTime;
          imagePath:=   ExtractFilePath(Application.ExeName) + ACCETS_FOLDER +'images\';
          gUImageExt:=  ADOQuery1.FieldByName('photo_res').AsString;
          //ShowMessage(imagePath + IMG_PATH_PREFICS + gULogin + gUImageExt);
       //если наша фотография существует
       if FileExists(imagePath + IMG_PATH_PREFICS + gULogin + gUImageExt) then
         try //ставим ее
            Form2.iCurrentImage.Picture.LoadFromFile(imagePath + IMG_PATH_PREFICS + gULogin + gUImageExt);
         except //тут ошибочка загрузки...
            Form2.iCurrentImage.Picture:= Form2.iNoImageLoad.Picture;
         End
  else begin //тут выставляем дефолтную, если фотки нет
        Form2.iNoImage.Visible:= True;
        Form2.iCurrentImage.Picture:= Form2.iNoImage.Picture;
       end;
        Label3.Visible:= False;
 
        //рисуем наши данные
        Form2.Label1.Caption:= gUFirstname + ' ' + gUName + ' ' + gULastname;
        Form2.Label4.Caption:= 'Адрес: ' + gUAddress;
        Form2.Label5.Caption:= 'Телефон: ' + IntToStr(gUPhone);
        Form2.Label6.Caption:= 'Почта(e-mail): ' + gUMail;
 
        //определяем дату последнего входа
        Form2.Label53.Caption:= 'Последний вход в систему: ' + DateToStr(gULastVisit);
        nowDate:= StrToDate(FormatDateTime('DD/MM/YYYY', Now));
        DaysOld:= nowDate - gULastVisit;
        Years   := Trunc(DaysOld / 365.25);       //сколько лет прошло
        DaysOld := DaysOld - (365.25 * Years);    //
        Months  := Trunc(DaysOld / 30.41);       //сколько месяцев прошло
        Days    := Trunc(DaysOld - (Months * 30)); //сколько дней прошло
 
        //добавим немножечко условий вывода даты входа
        if (Years > 0) and (Months > 0) and (Days > 0) then begin
        Form2.Label54.Caption:= IntToStr(Years)+' лет '+IntToStr(Months)+' месяцев '+FloatToStr(Days) + ' дней назад';
        end;
        if (Years = 0) and (Months > 0) and (Days > 0) then begin
        Form2.Label54.Caption:= IntToStr(Months)+' месяцев '+FloatToStr(Days) + ' дней назад';
        end;
        if (Years = 0) and (Months = 0) and (Days > 0) then begin
        Form2.Label54.Caption:= FloatToStr(Days) + ' дней назад';
        end;
        if (Years = 0) and (Months = 0) and (Days = 0) then begin
        Form2.Label54.Caption:= 'Сегодня';
        end;
 
        //название формы генерируется из имени пользователя
        Form2.Caption:= gUFirstname + ' ' + gUName + ' ' + gULastname + TEXT_FORM_CAPTION;
 
        //тупо строчка с айди и логином пользователя
        Form2.Edit1.Text:= TEXT_DIR_CONSOLE + 'profile/' + IntToStr(gUId) + '_' + gULogin;
 
        //вводим в дефолтное состояние форму 2
        Form2.CCleaner();
 
        //обновляем точку входа - новая дата
        ADOQuery1.SQL.Clear;
        ADOQuery1.SQL.Text:= 'UPDATE userss'+
                            ' SET last_visited ='+ QuotedStr(FormatDateTime('DD/MM/YYYY', Date)) +
                            ' WHERE id = ' + IntToStr(gUId) + '';
        ADOQuery1.ExecSQL;
        Form2.Button6.Enabled:= False;
 
        //переключаемся на вторую форму
        Form2.ShowModal;
      end
         else  //ошибка  не верный пароль
            begin
            Label3.Visible:= True;
            Label3.Caption:= ERROR_WRONG_PASSWORD;
            end;
     end
         else
            begin //результат запроса вернул ноль строк - значит нет пользователя с таким логином
            Label3.Visible:= True;
            Label3.Caption:= ERROR_USER_NOT_FOUND;
            end;
     end else
            begin //не все поля заполнены
            Label3.Visible:= True;
            Label3.Caption:= ERROR_FIELDS_IS_EMPTY;
            end;
 except on E: Exception do
   begin  //неведомая зрень произошла...на всякий
    Application.MessageBox('Ой, все...', 'Инфа %сотка%', MB_OK);
    exit;
   end;
          end;
   end;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.10.2016, 18:05
Помогаю со студенческими работами здесь

Сохранение данных из форм в .txt при авторизации
Добрый день друзья. Есть форма авторизации за сайте &lt;form method=post name=mainform onsubmit=&quot;return checkform()&quot;&gt; ...

Ошибка пароля при авторизации базы данных
Всем добрый день, есть база данных &quot;автолюбители&quot;, также есть форма авторизации, всё работает но есть одно но, когда вводится не правильный...

Повторять процедуру авторизации в консоли при неверно введенных данных
День добрый, Заранее прошу извинения если вопрос задан глупо так как я новечек в програмировании и мало в чем разбераюсь. У меня...

Subprocess, ввод данных при запросе
Доброго дня, задача следующая. Есть некая утилита, пусть будет test.exe При ее запуске(cmd) утилита выдает некий текст (их нужно...

Ввод данных при формировании запроса
Друзья, прошу помощь в след. вопросе. Есть запрос, условием на выборку которого является наименование компании. Данное условие вводится...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru