if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,4}$/i", $email))
$errors[] = 'Не верный формат e-mail';
Спустя 45 минут, 12 секунд (4.01.2010 - 17:57) VolCh написал(а):
Вместо \ попробуй \\

Спустя 2 часа, 18 минут, 15 секунд (4.01.2010 - 20:15) Dron19 написал(а):
В ней все нормально, просто убери $ и лучше в начале и в конце поставь \b
Спустя 2 часа, 23 минуты, 37 секунд (4.01.2010 - 22:39) Lenarfate написал(а):
пасиба)
Спустя 11 часов, 13 минут, 31 секунда (5.01.2010 - 09:52) ИНСИ написал(а):
Lenarfate кстати, если будет такой emal: info@my-site.ru то выдаст ошибку, попробуй это
preg_match("|[0-9a-z_]+@[0-9a-z-_^\.]+\.[a-z]{2,3}|i", $_POST['email']);
Спустя 13 минут, 25 секунд (5.01.2010 - 10:06) twin написал(а):
welbox2, без обид. Я вот который раз замечаю, что ты советуешь то, в чем сам нифига не разобрался.
Зачем посоветовал:
Зачем посоветовал:
Цитата |
просто убери $ и лучше в начале и в конце поставь \b |
Ты знаешь для чего этот знак там был?
Твоя регулярка работать не будет. А вот топикстартер просто видимо где то неудачно спер регулярку и пропустил один знак.

Вот welbox2, взялся - доделывай. Я не скажу какой, найди и объясни товарищу.
Спустя 23 часа, 44 минуты, 35 секунд (6.01.2010 - 09:50) ИНСИ написал(а):
twin, если я советую в том, в чем не понимаю, я говорю об этом. Но ты сейчас обвиняешь меня в том, что я не делал. Посмотри внимательно автора твоей цитаты, это Dron19 писал!!!
Также, моя регулярка будет 100% работать. Именно эту регулярку делал я сам, поэтому говорить, что не понимаю, не буду!!!
А тебе пожелание: Перед тем, как говорить, подумай пожалуйста, правильно ли ты думаешь?! Потому что все твои мысли, сказанные выше, ерунда!
Также, моя регулярка будет 100% работать. Именно эту регулярку делал я сам, поэтому говорить, что не понимаю, не буду!!!
А тебе пожелание: Перед тем, как говорить, подумай пожалуйста, правильно ли ты думаешь?! Потому что все твои мысли, сказанные выше, ерунда!
Спустя 7 минут, 25 секунд (6.01.2010 - 09:58) twin написал(а):
Цитата |
Посмотри внимательно автора твоей цитаты, это Dron19 писал!!! |
Действительно... Писал сообщение не ты. Но твоя регулярка не рабочая именно потому, что в ней отсутствует привязка. Именно то, что предложил сделать Dron19.
Знач ты тем более не понимаешь, зачем это нужно, раз видел что посоветовали откровенную чушь и сам написал в том же духе.
Цитата |
А тебе пожелание: Перед тем, как говорить, подумай пожалуйста, правильно ли ты думаешь?! Потому что все твои мысли, сказанные выше, ерунда! |
Я не всегда прав, но всегда думаю, прежде чем писать. И анализирую. В данный момент мне извиняться не за что, потому что предложенный тобой вариант не рабочий, и не рабочий именно по тому, чему я приписал тебе авторство. Нет разницы, кто автор того поста. Исправь свою регулярку.
Спустя 8 минут, 36 секунд (6.01.2010 - 10:06) ИНСИ написал(а):
twin останемся при своем мнении. Я пользуюсь этой регуляркой и меня она не подводит. Работает как часы. А ты хотя бы извинился. Ладно, разные люди, по разному смотрим на "ценности".
Спустя 1 час, 3 минуты, 38 секунд (6.01.2010 - 11:10) twin написал(а):
Извиниться должен ты. За свои непродуманные действия. Вот тебе тест для твоих "часов":
В низу примеры - копируй и удивляйся. Могу еще подогнать.
<?php
if(!empty($_POST['ok']) && !empty($_POST['email']))
{
if(!preg_match("|[0-9a-z_]+@[0-9a-z-_^\.]+\.[a-z]{2,3}|i", $_POST['email']))
echo 'Ой блин, не пускает!!!';
else
echo 'Это что, разве правильный формат: <b>'. $_POST['email'] .'</b>????';
}
?>
<form action="" method="post">
<input name="email" type="text" /><br />
<input name="ok" type="submit" /></form> <br />
dog1@dog2@dog3@mail.ru<br />
mail@tut_nelzja_takih_chertochek.ru<br />
а_тут_вообще_по_русски_mail@.mail.ru<br />
или вообще такs@mail.ru<br />
%!****12345№№№;;;a@mail.ru<br />
mail@mail.rurururururururururururururu</span>
В низу примеры - копируй и удивляйся. Могу еще подогнать.
Спустя 1 час, 2 минуты, 54 секунды (6.01.2010 - 12:13) ИНСИ написал(а):
twin извини.
оказывается да, не получилось. посидел и сделал это, так пойдет?
блин там смайл добавляется... в общем, ты наверное знаешь какие символы там

function checkEmail($email)
{
$user = '[a-zA-Z0-9_\-\.\+\^!#\$%&*+\/\=\?\`\|\{\}~\']+';
$domain = "(??:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.?)+";
$ipv4 = '[0-9]{1,3}(\.[0-9]{1,3}){3}';
$ipv6 = '[0-9a-fA-F]{1,4}(\:[0-9a-fA-F]{1,4}){7}';
return preg_match("/^$user@($domain|(\[($ipv4|$ipv6)\]))$/", $email);
}
блин там смайл добавляется... в общем, ты наверное знаешь какие символы там
Спустя 29 минут, 51 секунда (6.01.2010 - 12:43) twin написал(а):
Все гораздо проще. Символы ^ в начале паттерна и $ в конце обозначают привязку к началу и концу строки. И еще, в доменном имени не может быть нижнего подчеркивания. Вот так хотя бы надо:
Вообще, полная регулярка занимает несколько строк, но в 99% случаев этого вполне достаточно.
PS Извиняться не передо мной нужно, перед тредстартером.
<?php
if(!empty($_POST['ok']) && !empty($_POST['email']))
{
if(!preg_match("|^[a-z0-9_\.-]+@([a-z0-9]+\.)+[a-z]{2,4}$|i", $_POST['email']))
echo 'Ой блин, не пускает!!!';
else
echo 'Вот это правильный формат: <b>'. $_POST['email'] .'</b>';
}
?>
<form action="" method="post">
<input name="email" type="text" /><br />
<input name="ok" type="submit" /></form> <br />
mail@mail.ru<br />
dog1@dog2@dog3@mail.ru<br />
mail@tut_nelzja_takih_chertjchek.ru<br />
а_тут_вообще_по_русски_mail@.mail.ru<br />
или вообще такs@mail.ru<br />
%$12345№№№;;;a@mail.ru<br />
mail@mail.rurururururururururururururu</span>
Вообще, полная регулярка занимает несколько строк, но в 99% случаев этого вполне достаточно.
PS Извиняться не передо мной нужно, перед тредстартером.
