Delphi. UniGUI. Делаем авторизацию через СМС. Часть 2 – база данных и логика программы

Результат у меня получился таким

33

34

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

Исходники

377_tps_unismsmessendger-kopiya

Проектируем базу данных

Структуру базы данных в MySQL я создал следующим образом

32

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

Проектируем интерфейс

Итак, вот что у меня получилось в Delphi

35

Комментарии по коду

В OnCreate я центрирую элементы, подключаю к базе данных все TFDQueries, созданные визуально, присваиваю переменным класса значения, создаю все необходимые экземпляры классов.

Ограничения

Я ввел ограничение на время работы всей программы, на число попыток отправки смс кодов системой, на число отправок кодов, полученных по смс.

Также есть ограничение по интервалам запросов смс кодов, через каждые 30 секунд.

Получение СМС кода

Отправка кода, полученного по смс

В случае успеха – переход на нужную ссылку и отправка сообщения админу.

Код главного юнита целиком

 

This entry was posted in Delphi, MySQL, UniGui. Bookmark the permalink.