Делаю форму ввода данных о подписчике на новости. Почтовый адрес перед записью в БД проверяю на допустимость символов. И только сейчас вспомнил, что существуют и кириллические домены, с которыми я не работал и этого обстоятельства не учел.
В сети пишут, что адреса типа saha@маша.рф вполне допустимы. Стоит ли такие адреса включать в перечень разрешенных?
А если Да, то как их записывать в базу?
И будет ли SMTP сервера отправлять по такому адресу письмо для подтверждения подписки?
ivan-lev
Владимир-C: Стоит ли такие адреса включать в перечень разрешенных?
см filter_var https://www.php.net/manual/en/filter.examples.validation.php
Владимир-C: И будет ли SMTP сервера отправлять по такому адресу письмо для подтверждения подписки?
Если поддерживают — то будут..
https://tools.ietf.org/html/rfc6531#section-3.5
When messages are rejected because the RCPT command requires an ASCII address, the reply-code 553 is returned with the meaning «mailbox name not allowed».
Mik Foxi
Не существует таких адресов. Все должно быть в пуникоде. Ну а делать это вам конвертирование или юзера заставлять нормально вводить эту абракатабру это вам решать.
Владимир-C
Делаю форму ввода данных о подписчике на новости. Почтовый адрес перед записью в БД проверяю на допустимость символов. И только сейчас вспомнил, что существуют и кириллические домены, с которыми я не работал и этого обстоятельства не учел.
В сети пишут, что адреса типа saha@маша.рф вполне допустимы. Стоит ли такие адреса включать в перечень разрешенных?
А если Да, то как их записывать в базу?
И будет ли SMTP сервера отправлять по такому адресу письмо для подтверждения подписки?
ivan-lev
Стоит ли такие адреса включать в перечень разрешенных?
см filter_var https://www.php.net/manual/en/filter.examples.validation.php
+ punycode https://www.php.net/manual/en/function.idn-to-ascii.php
https://habr.com/ru/post/224623/
https://www.w3.org/Protocols/rfc822/#z8
И будет ли SMTP сервера отправлять по такому адресу письмо для подтверждения подписки?
Если поддерживают — то будут..
https://tools.ietf.org/html/rfc6531#section-3.5
Mik Foxi
Не существует таких адресов. Все должно быть в пуникоде. Ну а делать это вам конвертирование или юзера заставлять нормально вводить эту абракатабру это вам решать.