Delphi. UniGUI. Делаем авторизацию через СМС. Часть 1 – проверка номера телефона

В одном моем проекте 99% клиентов из России, Казахстана и Украины. И вот взбрело мне в голову сделать авторизацию через смс. Нашёл шлюз, отправил пару тестовых смс, стал двигаться дальше и уперся в проверку номера телефона. Сначала думал делать через MaskEdit, но почитав про него в интернете понял, что это не самый лучший вариант, а какой же лучший? Через простой TEdit, ну в моем случае, через TUniEdit, что почти тоже самое, за исключением того, что программа под WEB. Итак, посмотрим как это легко и быстро сделать в Delphi. Вот что у нас получится.

26

Вот что будет, если с номером что-то не так…

27

28

Итак, я создал отдельный модуль для проверки номера телефона

Вариант 2 (оптимизированный)

Пример использования

Вариант 1 (не оптимизированный)

Сначала проверяю есть ли в начале код страны, например +7 или +38

Далее собираю все цифры из строки – это дает определенную свободу для человека. Набирать +79163080631 или +7 916 308 06 31 или +7-916-308-06-31 или ещё как-то

Ну и на последнем шаге – проверка длины номера. Если что-то не так – сообщение пишется в переменную ErrorMessage

Вот собственно код…

Пример вызова функции в главном модуле

 

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