Авторизация по телефону на сайте. Как сделать?

Нужна регистрация пользователей по номерам телефонов а не по email, сайт на php
номера могут быть разной длинны, тк коды стран разной длинны. Как бы Вы организовали ...
  1. Проверку номера при регистрации? php или js? Если JS то какие скрипты рекомендуете для маски ввода в поле телефона?
  2. Какой на Ваш взгляд оптимальный номер для хранения номера в базе? Такой подойдет? +X(XXX)XXX-XX-XX
  3. Вид номера на сайте, в личном кабинете пользователя
  • Вопрос задан
  • 1895 просмотров
Решения вопроса 3
Моё видение ситуации.

Проверку номера при регистрации? php или js? Если JS то какие скрипты рекомендуете для маски ввода в поле телефона?


Проверять нужно и на клиенте и на сервере. Клиентская защита-это защита от дурака.

Какой на Ваш взгляд оптимальный номер для хранения номера в базе? Такой подойдет? +X(XXX)XXX-XX-XX


Хранить нужно так, как вводит пользователь, а он должен вводить только числа. Т.е хранение следующее: XXXXXXXXXXX

Вид номера на сайте, в личном кабинете пользователя


Конечно же человеко читаемый формат типа: +X(XXX)XXX-XX-XX

Ну и последнее и самое сложное. Пользователь должен подтвердить номер телефона, а значит вам нужен будет смс - шлюз. И, пожалуй, это первое о чем нужно позаботится. Без верификации номера существует вероятность, что пользователь может ввести бесполезный набор чисел, который в последующем окажется чьим-то номером телефона, что не есть хорошо.
Ответ написан
Комментировать
@Nwton
1) При регистрации на js делаете проверку и сообщаете юзеру про неправильно введенный номер, если он введен неправильно. На сервере делаете повторную проверку, и если номер её не проходит, то ничего не возвращаете.
2) +XXXXXXXXXXX
3) +7 (XXX) XXX-XX-XX
Ответ написан
Комментировать
@entermix
Проверку номера при регистрации? php или js? Если JS то какие скрипты рекомендуете для маски ввода в поле телефона?

Проверка нужна как на стороне сервера, так и на стороне клиента, однако при использовании масок ввода у Вас могут возникнуть проблемы на некоторых устройствах.

Для маски на стороне клиента посмотрите Inputmask + phone extensions

Если хотите реализовать подтверждение номера, рекомендую использовать smsc. Есть готовый пример и регулярное выражение для проверки номера на стороне сервера (лично проверено на 55 000+ номеров).

Какой на Ваш взгляд оптимальный номер для хранения номера в базе? Такой подойдет? +X(XXX)XXX-XX-XX

В базе данных рекомендую хранить только цифры, т.е. XXXXXXXXXXX

Вид номера на сайте, в личном кабинете пользователя

Это уже как Вам больше нравится, можно выводить просто цифры, а можно отформатировать, например так +X(XXX)XXX-XX-XX
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы