Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проверка номера телефона

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: регулярка
phphel
Отправлено: 06 Июня, 2010 - 16:53:24
Post Id


Новичок


Покинул форум
Сообщений всего: 46
Дата рег-ции: Февр. 2010  


Помог: 0 раз(а)




Помогите составить регулярку на проверку мобильного номера телефона

к примеру +79281234567
 
 Top
scarbo
Отправлено: 06 Июня, 2010 - 17:06:25
Post Id


Новичок


Покинул форум
Сообщений всего: 36
Дата рег-ции: Апр. 2010  
Откуда: Россия, Москва


Помог: 0 раз(а)




Если именно только в таком виде, то можно так

Если же всякие дефисы, скобки и пробелы, например так - +7 (123) 456-78-90, то уже сложнее регулярка будет.
 
 Top
phphel
Отправлено: 06 Июня, 2010 - 17:08:21
Post Id


Новичок


Покинул форум
Сообщений всего: 46
Дата рег-ции: Февр. 2010  


Помог: 0 раз(а)




Подходит, спасибо
 
 Top
alexspb
Отправлено: 06 Июня, 2010 - 22:26:07
Post Id


Посетитель


Покинул форум
Сообщений всего: 260
Дата рег-ции: Май 2010  


Помог: 0 раз(а)




чтобы облегчить жизнь невнимательным юзерам, переменную из формы можно обработать, например, удалить пробелы и -
$_POST['telefon'] = preg_replace('/[^\d\+]+/', '', $_POST['telefon']);//заодно в базу можно писать не проверяя на экранирование

а врегулярке добавить знак ? - /^\+?7\d{10}$/ - если не подставили +

исходить надо из того, что юзер "тупит"


-----
Хостинг - неограниченно доменов на одну папку
Ajax - отличное введение
 
 Top
JustUserR
Отправлено: 07 Июня, 2010 - 01:39:26
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




alexspb пишет:
А врегулярке добавить знак ? - /^\+?7\d{10}$/ - если не подставили + исходить надо из того, что юзер "тупит"
Действительно главное проверять начилие 10 цифр в номере телефона и наличие верного кода страны - а все разделительные спецсимволы должны быть обрамлены в квантификатор ? с возможным использованием оператора ИЛИ для указанием различных вариантов разделителей


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB