![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| n0xi0uzz |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 29.12.2004 Где: Санкт-Петербург Репутация: нет Всего: 1 |
В моём самописном форуме пользователь при регистрации заполняет поле "e-mail", на который ему впоследствие высылается уведомление о регистрации.
Но возникла проблема, - не все хотят указывать e-mail, подскажите, как проверить введенный адрес на валидность ;). |
|||
|
||||
| Wowa |
|
|||
|
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
а причем одно к другому? Они указывают "левый" емаил? Так высылай им на него письмо с ссылкой на активизацию аккаунта или со сгенерированным паролем. |
|||
|
||||
| korob2001 |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Самый лучший способ, если чел получил письмо, значит E-mail был введён верно, если нет, то увы, регистрация анулируется. Если ты имел ввиду регулярные выражения, то регулярными выражениями не получится. Хотя многие делают такую проверку:
Но это слишком наивно, как ты наверное понимаешь, потому как такой E-mail тоже считается допустимым: my@mail и он не пройдёт эту проверку. А даже если E-mail и прошёл проверку, то это ещё не значит, что такой E-mail в действительности существует. -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
||||
|
|||||
| n0xi0uzz |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 29.12.2004 Где: Санкт-Петербург Репутация: нет Всего: 1 |
Спасибо, так и сделаю ;) |
|||
|
||||
| CPLUSPLUS |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 22.10.2003 Репутация: -1 Всего: 2 |
Интересно, в одной книжке популярной с "пакетом коммерческого качества программ" была описана подобная проверка, но в конце домэйн мог состоять только из трех букв -- то было до .info.
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Вообще-то автор книги "Регулярные выражения", уже не помню точно, помоему Джефри Фридл, написал регулярное выражение состоящее из более чем 1000 символов, даже оно не может до коца проверить E-mail адрес на полное соответствие стандарту RFC-822. Дело в принципе даже не в самом стандарте.
Такие адреса тоже считаются валидными: mymail - ( не соответсвует стандарту RFC, но теоритически по нему можно доставить почту ). [email protected] - ( соответствует стандарту ). Ну и так далее. -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Secandr |
|
|||
|
Связист ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4043 Регистрация: 3.8.2003 Где: Russia, Volgograd Репутация: нет Всего: 39 |
А я себе сделал ящик _@<domen>.ru
Ещё в локалке есть домен lan и ящики alex@lan Я тоже как-то видел регулярное выражение на пол листа для проверки e-mail, но кто мне мешает ввести название ящика: [email protected] ? |
|||
|
||||
| CPLUSPLUS |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 22.10.2003 Репутация: -1 Всего: 2 |
Так может посоветовать отказаться от такой проверки вообще?
|
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Самый лучший выход, это требовать активации учетной записи через E-mail.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Sadok |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 74 Регистрация: 2.11.2004 Репутация: 1 Всего: 2 |
||||
|
||||
| fedor-semakov |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 26.4.2005 Репутация: 2 Всего: 2 |
Если кому то вдруго интересно, то вот так выглядит паттерн для этого регекспа.
Можно голову сломать, чтобы понять как он работает. Я не предстваляю, как такие регекспы можно писать руками. |
||||
|
|||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Такие регэкспы когда пушутся, используется идентификатор x, для разбивки его по строкам. Спасибо за пример этого регэкспа, именно о нём я и говорил. -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
![]()
|
| Правила форума "Perl: CGI программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: разработка для Web | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |