Хочу сделать проверку валидности емейл на php.Код есть: PHP: if (!ereg( "^[a-z0-9]+@[a-z0-9]+\.[a-z0-9]{2,4}$", strtolower($email) ) ) { print "Введите валидный email!"; exit(); } Мне нужно сделать так что бы выводило пердупреждение например около кнопки отправки,или в каком то месте на странице, как так сделать?
NeoMurderer тогда постфактум. когда прислали, снова рисуешь эту же страницу, все присланные значения загоняешь в инпуты, а тут отмечаешь красненьким и пишешь, мол мыло - отстой. и кстати у тебя проверка уже не катит. русские буквы уже доступны в доменах.
вместо вывода замути чтоб глобальная переменная приняло значение предупреждение , а затем выведи это придумпреждение где хочешь , если его нет то нефига не выведется
советую переходить на preg_match, потому как ерег будет генерировать нотисы, а в будущем уже не будет поддежриваться
Совету забить на все эти "preg_*" и т.п. С помощью этой хрени замучаетесь проверять национальные имена. Есть правила формирования e-mail, а уж какие там будут символы, A-Z или А-Я, по барабану.
Код (Text): <? function is_email($email){ $s=filter_var($email, FILTER_VALIDATE_EMAIL); return !empty($s); } ?> Код (Text): /** Checks is the provided email address is formally valid * @param string $email email address to be checked * @return true if the email is valid, false otherwise */ function valid_email($email) { $regexp="/^[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\\.[a-z]{2,}$/i"; if ( !preg_match($regexp, $email) ) { $_obweb->addErr("Email address is not correct\n"); return false; } return true; } ну и вот не плохо http://2coders.ru/10-regulyarnyx-vyrazhenij-dlya-web-razrabotchikov/
хз. проще пропустить через real_escape и пох. если кто свой имеил криво написал и на сайте проверку обошел, тому точно никакие ответы не нужны будут.
igordata гм кстати мы ж в Росси живем )) здесь все всегда ошибаются по JS проверка ведь для клиента норм нужна
igordata, эскейпинг это какбы из другой оперы. к валидации данных не относится. идеальный валидатор должен оперировать шаблонными правилами на серверной стороне и теми же правилами на клиентской. "шаблонными" — значит мы используем говорящие имена правил, вместо того, чтобы всякий раз сочинять регулярку. а тот факт, что js у клиента отсутствует не должен быть причиной ни автоматического отказа, ни автоматического приема данных. ящитаю. это очевидно? почему тогда это так редко встречается в жизни? потому что всем все пох.
вот тебе самая полная проверка на валидность еmail http://www.ex-parrot.com/~pdw/Mail-RFC822-Address.html