Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: регулярное выражение для проверки e-mail
 
 автор: admin_левый   (14.04.2006 в 17:36)
 
 

у меня на сайте и у вас дорогая администрация softime.ru проверка на email
сделана так

if (!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i",$email))
при этом 2 подряд и более точек проглатываются и дают зарегистрироваться на сайте, помогите плиз, как это можно подправить?

_^\.]+\.[ - проблема в этом куске кода

   
 
 автор: Trianon   (14.04.2006 в 17:48)   письмо автору
 
   для: admin_левый   (14.04.2006 в 17:36)
 

усложнять этот кусок смысла нет.
Если Вы хотите жестко привязать регистрацию к e-mail-адресу, Вам придется реализовать отправку разрешения на вход (например, отправку пароля первого входа или ссылки подтверждения регистрации) на e-mail, указанный в форме. А в самой форме большими буквами написать, что поскольку pass word будет передан через е-мэйл, то заполнять поле адреса всякой ерундой не стоит, проще сразу нажать на крестик.

   
 
 автор: admin_левый   (14.04.2006 в 17:50)   письмо автору
 
   для: Trianon   (14.04.2006 в 17:48)
 

не с вами это понятно(вы выкрутитесь), мне это для своего сайта нужно, и еще плиз перенесите этот топик в регулярные выражения

   
 
 автор: 21   (14.04.2006 в 21:23)
 
   для: admin_левый   (14.04.2006 в 17:50)
 

1

   
 
 автор: cheops   (15.04.2006 в 01:19)   письмо автору
 
   для: admin_левый   (14.04.2006 в 17:36)
 

Хм... а не должны бы точки проглатываться...

   
 
 автор: admin_левый   (15.04.2006 в 14:41)   письмо автору
 
   для: cheops   (15.04.2006 в 01:19)
 

а проглатываются.

   
 
 автор: cheops   (15.04.2006 в 22:50)   письмо автору
 
   для: admin_левый   (15.04.2006 в 14:41)
 

Попробуйте использовать следующее регулярное выражение
<?php 
  $email 
"mail@mail..ru"

  if (!
preg_match("/[-0-9a-z_]+@[-0-9a-z_]+\.[a-z]{2,6}/i",$email)) echo "Не соответствует";
  else echo 
"Соответствует";
?>

   
 
 автор: admin_левый   (17.04.2006 в 10:16)   письмо автору
 
   для: cheops   (15.04.2006 в 22:50)
 

спасибо, работает. Тему можно закрывать

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования