[без названия]

Задолбали умники со своим «вы ввели некорректный email».

Вот это корректный email: one+two@example.loc
И вот это корректный email: one.two@example.loc
И вот это: one.two@127.0.0.1

А вот регулярка для проверки ёмайла: /^[^@]+@.+$/s или, что тоже самое: /@/. Или ещё лучше: /^.*$/.

5 комментариев »

  • +1
    Есть ещё кириллические домены (например, письмо.рф).
    Проблема не только в регулярках — стандартный filter_var() с FILTER_VALIDATE_EMAIL тоже не пройдет для вариантов «one.two@127.0.0.1» или «пыщ@пыщ.рф».

    Как вариант, возможно лучше проверять MX-запись, хотя checkdnsrr(‘письмо.рф’, ‘MX’) тоже выдало false.

    Но больше бесит, когда в номере телефона разрешаются только цифры или обязывают строго следовать формату, типа +X(XXX)XXX-XX-XX. И ладно если бы эти данные потом обрабатывались программно (например, какая-нибудь SMS рассылка). Но встречается на всяких сайтах объявлений, где этот номер нужен чтоб его просто блять _показать_ на странице. Нужен добавочный номер, хочешь написать чтоб звонили только вечером или тупо хочешь ввести второй телефон через запятую? Не, не слышали.

    timur, 27.08.2013, 8:03

  • timur, +2

    vasa_c, 28.08.2013, 15:54

  • <input type="email" required/> — и нет проблемы

    untit1ed, 12.09.2013, 20:52

  • — и нет проблемы

    дай бог, чтобы поддерживался HTML5, а вообще, если input придёт из вне, то, тогда фронтенд вас не спасёт)

    kuler, 26.10.2013, 20:38

  • Тупая проверка на собаку на сервер сайде. Html5 спасает от не нужного дергания сервера. Все зависит от задачи, у мена например все аккаунты должно валидироваться по почте, так что проблемы нет.

    untit1ed, 26.10.2013, 23:08

Leave a comment