![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Создание формы, осуществляющей процесс авторизации клиента в системе и выдачу прав
Начинаем с процесса создания новой формы: File-New-Form. На новой форме разместим необходимые нам компоненты: Edit – два поля, одно служащее для ввода логина, второе для ввода пароля. Button – кнопка по которой будет осуществляться вход в систему по введённым в Edit данным. Label – текстовые сообщения с указателями логина, пароля и сообщения об ошибке. Основная работа на данной форме заключается в программировании кнопки. Вход в систему осуществляется по данным, которые мы ввели в базу данных сотрудников банка, а конкретно их логин и пароль. Предусмотрена отдельная учётная запись для администратора, который принимает сообщения и управляет базами данных. Суть алгоритма по которому происходит авторизация: 1. проверка данных на совпадение с данными для входа администратора; 2. если данные не сходятся, образуется массив текстовых данных, который состоит из логинов и паролей в нашей базе данных; 3. переменным присваиваются введённые нами данные, из них составляется строчка текстовых данных и проходит проверку на полное совпадение с одной из строчек нашего массива; 4. в случаи совпадения пользователь получает доступ к форме клиента, с помощью которой он сможет осуществить оформление и отправку сообщения администратору; 5. в случаи если введенные пользователем данные оказались не верными, то высвечивается сообщение о неверно введённых данных и просьбе повторить попытку. Код кнопки входа: procedure TFormEnter.Button1Click(Sender: TObject); var LogPass: array of string; I, H, Counst: integer; Login, Password, LoginAndPassword: string; begin setLength(LogPass, 50); Login: =EditLogin.Text; if ((EditLogin.Text=('Admin')) and (EditPassword.Text=('qwerty'))) then begin FormEnter.Visible: =False; FormAdmin.Show; end else FormBD.ADOTable1.First; For I: =0 to FormBD.ADOTable1.RecordCount -1 do begin LogPass[I]: =FormBD.ADOTable1.FieldValues['Логин']+' '+FormBD.ADOTable1.FieldValues['Пароль']; FormBD.ADOTable1.Next; Inc(Counst); end; LoginAndPassword: =Trim(EditLogin.Text)+' '+Trim(EditPassword.Text); For H: =0 to Counst-1 do begin if LoginAndPassword = LogPass[H] then begin FormEnter.Visible: =False; FormKlient.Show; Index: =H+1; FormBD.DBGrid1.DataSource.DataSet.Locate('Логин', Login, [loPartialKey]); FormKlient.Label6.Caption: =FormBD.DBGrid1.DataSource.DataSet.Fields.Fields[1].Value+' '+FormBD.DBGrid1.DataSource.DataSet.Fields.Fields[2].Value+' '+FormBD.DBGrid1.DataSource.DataSet.Fields.Fields[3].Value; end else Label4.Visible: =true; EditLogin.Clear; EditPassword.Clear; end; end;. В ходе работы была создана данная форма авторизации в программу(рисунок 5): Рисунок 5. Форма авторизации при входе
|