php проверка номера мобильного
Проверка данных регулярными выражениями в PHP
Содержание:
Сборник основных шаблонов регулярных выражений на PHP для проверки данных.
Проверка набора из латинских букв и цифр
Регулярное выражение для проверки набора только из латинских букв и цифр:
Если необходимо добавить в набор некоторые символы:
Проверка на кириллицу и цифры
Регулярное выражение для проверки набора только из букв кириллицы и цифр:
Проверка на число
Регулярное выражение для проверки данных на целое число:
Регулярное выражение для проверки данных на тип Float (числа с плавающей точкой):
Проверка логина
Регулярное выражение для проверки логина. Разрешено использовать только латинские буквы, цифры, тире и знак подчёркивания. Длина логина от 2 до 20 символов (включительно):
Проверка Email
Регулярное выражение для проверки Email:
Проверка номера телефона
Регулярное выражение для проверки номера телефона:
Проверка даты по формату
Формат MySQL YYYY-MM-DD :
Проверка md5-хэша
Регулярное выражение для проверки на корректность md5-хэша:
Проверка IP адресов
Регулярное выражение для проверки IPv4 адреса:
Проверка IPv6 адреса:
Проверка доменного имени
Регулярное выражение для проверки на корректность доменного имени сайта:
Подтверждение номера телефона по SMS
Широкое распространение на сайтах коммерческой тематики получили формы обратной связи типа «Заказать звонок». Пользователю сайта предлагается форма с полями: имя и телефон. Заполнив данные, пользователь ждет звонка на указанный номер телефона. А что если пользователь указал не свой телефон?
Или другая ситуация: пользователь сайта забыл свой пароль от учетной записи и в качестве альтернативы желает получить новый пароль на свой номер телефона (указанный в учетной записи). Естественно, он должен знать свой номер телефона и иметь его под рукой, так как SMS придет лишь на прикрепленный телефон.
Подобных ситуаций в современных интернет-реалиях множество, если вы администратор сайта, имеющий дело с учетными записями пользователей, Вам наверняка будет полезной такая функция как подтверждение номера (валидация) мобильного телефона по SMS.
Верификация телефона по SMS
Проверить принадлежность номера телефона пользователю достаточно просто: на номер телефона высылается одноразовый код в SMS сообщении с последующим подтверждением кода на сайте.
Форма для подтверждения телефона по SMS (которую мы сегодня сделаем собственноручно) выглядит примерно следующим образом:
Форма для верификации телефона по одноразовому SMS
Принцип работы
Данный скрипт не является «готовым продуктом», он лишь иллюстрирует механизм верификации телефона по SMS и потребует от Вас его адаптации под конкретные нужды.
Использование SMS шлюза
После регистрации, в личном кабинете в меню найдите «Программистам», в этой вкладке найдете Ваш api_id. Он вам понадобится далее.
HTML форма валидации телефона
Создадим HTML форму для валидации телефона пользователя: модальное окно, поля для ввода и проверки данных (примерный вид как на скрине выше). Для этого создадим файл index.php c содержимым:
В этом файле обратим внимание на последние строчки, где указывается маска для ввода телефона. Для Украины: +38 (099) 999-99-99 для России: +7 (999) 999-99-99
И создадим файл со стилями CSS под названием «style.css» (положим его рядом с index.php)
Обработчик подтверждения номера телефона по SMS вынесем в отдельный файл «act.php«. Его содержимое:
В обработчике формы обратите внимание на конфигурацию параметров в первых строках: необходимо указать:
В коде обработчика, в случае успешной валидации телефона, изменяете код под свои нужды.
Специализируюсь на безопасности сайтов: защищаю сайты от атак и взломов, занимаюсь лечением вирусов на сайтах и профилактикой.
Наверняка у Вас есть вопросы, просьбы или пожелания. Не стесняйтесь спросить, я отвечаю всегда быстро.
Как с помощью PHP проверить существует ли номер телефона в месседжерах Viber или Telegram?
Вячеслав, Adamos, как раз идеи имеются, но я стопарюсь на том, что не знаю как получить уникальный id Viber. Чтобы проверить номер на существования, я для начала попробую отправить сообщение на этот номер в Вайбере. Вот функция:
Как это можно сделать? Какие есть идеи?
Ну мне например подобное надо для открытия чата с номером, которого нет в адресной книге.
Клиент прислал номер, я за «бугром». И хочу инициировать чат с клиентом не внося его пока в контакты (вдруг не заладится сходу).
То что можно внести в контакты и после писать-звонить круто. Но лишние движения
Написал пока страничку на сайте для себя, которая генерирует ссылку на веб.вотсапп и вайбер чат. При нажатии открывается соотв. app в смартфоне. Если номер конечно зареган в мессенджере.
Но в идеале, хочется чтобы можно было генерировать ссылку предварительно проверив сработает ли она.
Проверка длины номера телефона
Уважаемые форумчане!
Возникла трудность с обработчиком формы, поиск не дал результатов или я их не правильно понимаю.
В общем суть проблемы
Нужно не дать обработчику отправить форму, если не правильно или не полностью заполнено поле.
Полный код обработчика:
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Валидация номера телефона
кто подскажет ркгулярку, чтобы номер телефона можно было воодить только в таком формате (###).
Форматировать вывод номера телефона
php строчка через echo выводит на страницу номер телефона, заполненный пользователем. Как.
Вывод номера телефона из текста
Доброе время суток. Заранее извиняюсь если тема повторяется, но в поиске я ответа так и не нашел.
Защита номера телефона от парсинга
Всем доброго дня! Хочу спросить у тех, кто делал всевозможные парсеры контента: возможно спрятать.
Спасибо всем, кто откликнулся, можно мне все же прямо в моем коде указать, а то я в пхп не очень понимаю, но задача поставлена и ее мне нужно исполнить
Добавлено через 46 секунд
1
i
Куда и в каком виде вставлять?
Добавлено через 1 минуту
+375 44-779-16-00 Вот в таком виде приходит на мыло
Добавлено через 2 минуты
грёбаные регулярки 😀
не не.. я не спорю. И готов поклоняться богам, которые у них шарят.
А я не бог нихрена
Добавлено через 1 минуту
если
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Парсинг номера телефона с событием
Здраствуйте. Я новичёк в парсинге и решил написать простой код для парсинга номера телефона со.
Регулярное выражение для номера телефона
Здравствуйте. Подскажите, пожалуйста, как можно преобразовать строку 8 (999) 999-99-99 в.
Вывод номера телефона в виде Skype
Привет всем!Извините если «не угадал» с разделом, вопрос такой: У меня на сайте идёт вывод.
Перебрать все варианты номера телефона
Подскажите пожалуйста. Есть номер телефона 99999, как перебрать и вывести все варианты написания.
Регулярное выражение для получения номера телефона
Номер может принимать вид не только как написано выше, но и есть варианты
Как составить регулярное выражение, чтобы вытягивался только номер, а остальное не учитывалось. В идеале нужно приводить номер к единообразию но пока это не выйдет. Обрезкой не выйдет т.к. начало номера может быть разное (окончание по знаку Отслеживать
3 ответа 3
Вам следует разделить вытаскивание номера и его форматирование. Конечно, всё можно сделать и одной регуляркой, но это решение не будет выглядеть чисто.
Теперь этот номер надо отформатировать. Обычно номера телефонов приводят к числовому значению, поэтому лучше всего просто удалить лишние символы из номера с помощью функции str_replace() :
Если будете помещать номер телефона в базу данных, выбирайте какое-нибудь текстовое поле, иначе те номера, что начинаются с нуля, как верно подметил @Miron, в дальнейшем могут быть некорректно обработаны. Старайтесь работать с номером телефона как со строкой, а не как с числом.
Чтобы приводить номер к единому образу следует пользоваться библиотеками для форматирования. Например, популярной библиотекой libphonenumber :
Предлагаю автору вопроса, все же для начала привести базу номеров телефонов к единому виду, чтобы не хранить в БД некорректные номера. Если номера телефонов могут быть из разных стран, нужно обязательно хранить код страны отдельно от самого номера и кода оператора/города. Иначе могут возникнуть проблемы.
Никогда не храните номера телефонов, в виде числа. Связано это с тем, что если номер телефона будет начинаться с нуля(ей) при приведении его к типу int вы навсегда потеряете ведущие нули. Номера телефонов нужно хранить исключительно в виде строки (string).