Formato de dirección de correo electrónico
Resuelto
boubou08
Mensajes publicados
87
Estado
Miembro
-
céline03 -
céline03 -
Hola a todos,
¿Alguien tendría un sitio o un documento donde se describa el formato de una dirección de correo electrónico, las reglas sobre el formato de la dirección (nombre.apellido@sitio.com)?
Gracias y hasta pronto.
¿Alguien tendría un sitio o un documento donde se describa el formato de una dirección de correo electrónico, las reglas sobre el formato de la dirección (nombre.apellido@sitio.com)?
Gracias y hasta pronto.
5 respuestas
La especificación precisa se encuentra en el párrafo 6.1 de la RFC 822:
http://ietf.org/rfc/rfc0822.txt
Pero para decirlo de manera más simple:
Caracteres permitidos: a-z 0-9 . _ -
(diferencia entre minúsculas/mayúsculas ignorada)
seguido del arroba (@)
seguido de un nombre de dominio o subdominio existente (mismos caracteres permitidos).
http://ietf.org/rfc/rfc0822.txt
Pero para decirlo de manera más simple:
Caracteres permitidos: a-z 0-9 . _ -
(diferencia entre minúsculas/mayúsculas ignorada)
seguido del arroba (@)
seguido de un nombre de dominio o subdominio existente (mismos caracteres permitidos).
Hola,
¿Y alguien tendría una máscara PHP para validar este tipo de direcciones?
He hecho un intento del cual estaba satisfecho utilizando software de XSS y pruebas manuales
pero parece que un pequeño astuto spammer logró engañarme...
Les doy mi código para corregir:
¿Y alguien tendría una máscara PHP para validar este tipo de direcciones?
He hecho un intento del cual estaba satisfecho utilizando software de XSS y pruebas manuales
pero parece que un pequeño astuto spammer logró engañarme...
Les doy mi código para corregir:
$ident = '[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]'; $domain = '([a-z0-9]([-a-z0-9]*[a-z0-9]+)?)'; $regex = '/^'.$ident.'+'.'(\.'.$ident.'+)*'.'@'.'('.$domain.'{1,63}\.)+'.$domain.'{2,63}$/i'; if (preg_match($regex, $mail)==false) { return false; } else { return true; }
Atención, la RFC822 NO es la RFC vigente para una dirección de correo electrónico.
https://tools.ietf.org/html/rfc3696
y su errata:
http://www.rfc-editor.org/cgi-bin/errataSearch.pl?rfc=3696
En resumen, para todo lo que esté antes del @, se permiten
- letras (mayúsculas Y minúsculas, pero es el servidor quien decide si distingue o no)
- números
- los caracteres ! # $ % & ' * + - / = ? ^ _ ` . { | } ~
Así, Finances/pole_S&P/Jean.Valjean*flashbang*6+4=10@montfermeil.les-miserables.com es una dirección VÁLIDA.
Incluso es posible poner espacios y barras \ usando comillas: "Jean Valjean"@les-miserables.com es una dirección de correo electrónico válida.
https://tools.ietf.org/html/rfc3696
y su errata:
http://www.rfc-editor.org/cgi-bin/errataSearch.pl?rfc=3696
En resumen, para todo lo que esté antes del @, se permiten
- letras (mayúsculas Y minúsculas, pero es el servidor quien decide si distingue o no)
- números
- los caracteres ! # $ % & ' * + - / = ? ^ _ ` . { | } ~
Así, Finances/pole_S&P/Jean.Valjean*flashbang*6+4=10@montfermeil.les-miserables.com es una dirección VÁLIDA.
Incluso es posible poner espacios y barras \ usando comillas: "Jean Valjean"@les-miserables.com es una dirección de correo electrónico válida.
Que tengas un buen día y gracias de nuevo por la rapidez.