В каком виде хранить телефоны пользователей?

Статус
В этой теме нельзя размещать новые ответы.

danneo

Честный
Регистрация
13 Ноя 2007
Сообщения
1.527
Реакции
121
Пользователь регистрируется и указывает номер телефона (сотовый или стационарный). Нужно их привести к единому виду, чтобы потом можно было рассылать СМС.
В каком виде сохранять номера при регистрации?
Как работают операторы и скрипты по рассылке СМС относительно вида номера (если вид со скобками или восьмеркой), что если указан городской номер, а не сотовый?
 
В международном формате.

99% сервисов по рассылке СМС принимают такой формат, как родной. Без скобок, черточек и прочих элементов. Допускается знак "плюс" впереди номера.

Например:


В твоем случае к стандарту должен приводить скрипт. Он должен вырезать тире, звездочки и прочую ересь.
А при регистрации требовать как минимум страну (если необходимо), код оператора (города, поселка) и сам номер телефона.

P.S. Определять "мобильность" номера, тоже должен скрипт. Каждому оператору принадлежат какие то телефонные коды. По ним можно определить всю инфу.
 
только int. ввиду того что таблица будет расти, это будет самое экономное решение. обработку символов - плюсов, тире, скобок и прочего вы должны делать на клиентской стороне, а таблицу пихать уже чистые данные. такой подход я соблюдаю во всем - ибо нужно записывать минимально необходимую информацию, а менять формат (для рассылки или еще чего) вы уже будете по ходу дела.
прошу заметить, что число, которое вы можете указать в скобках не является ограничением по количеству символов, а используется лишь для правильной индексации и составлении связей.
 
А какой тип лучше подойдет для массива телефонных номеров, например, 5 штук в таком виде:
(945) 7800000 доб. 1243, (945) 7800000 доб. 1243, (945) 7800000 доб. 1243, (945) 7800000 доб. 1243
обработку символов - плюсов, тире, скобок и прочего вы должны делать на клиентской стороне, а таблицу пихать уже чистые данные. .
На стороне пользователя это делается с помощью js и то, для удобства пользователя. А если какой-нибудь дурак решит исправить форму, убрать js и запихать туда что-то другое? Поэтому нужно дублировать это и на сервере.
 
Строковый тип, потому что есть номера телефонов, начинающиеся на 0. Приводить к единому формату правильнее.
 
Я использую у себя маску на jQuery для ввода телефонов.
На сервере скрипт вырезает тире, звездочки и прочую ересь, как и рекомендует CraZee. В этом случае в базу все телефоны пишутся в едином формате.
Вот примеры
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
 
А какой тип лучше подойдет для массива телефонных номеров, например, 5 штук в таком виде:


На стороне пользователя это делается с помощью js и то, для удобства пользователя. А если какой-нибудь дурак решит исправить форму, убрать js и запихать туда что-то другое? Поэтому нужно дублировать это и на сервере.
ну так он сам дурак - js проверка для удобства пользователей, и только.
на сервере приведение к int и все (ну можно еще количество цифр проверить) - зачем парить мозг два раза.
 
Может что-то путаю, но разве СМС сервисы не только на сотовые? Есль - да, то тип поля int, прекрасно берутся начинающиеся с 7 номера : 79630102101.
Можно и с "+" - все равно брать его будет модуль работы с СМС шлюзом и там реализовывать правила проверки номера - один фиг при формировании запроса.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху