[PHP] Syntaxe

Alli -  
okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'ai une petit fonction qui recherche si il n'y a pas de caractères interdits dans un e-mail, mais celle si m'interdit aussi les + que je souhaiterais autoriser dans les e-mail (du type autoriser blabla.tretre+moi@gmail.com )

if ( !eregi("(^[a-z])(\.|-|_)?([0-9a-z]){0,}(\.|-|_)?([a-z0-9]+)((\.|-|_)?([a-z0-9]+)){0,}@([a-z0-9\-]+)\.([a-z]{2,4}$)", $email1) ) 
{
	$a_renvoyer=utf8_encode("Saisir correctement l'e-mail");
}


Je dois avouer que je ne comprend pas grand chose à cette syntaxe.

Que dois-je rajouter ou enlever.

Merci beaucoup
A voir également:

3 réponses

okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   126
 
essaye de comprendre ce que tu utilises avant de le mettre sur ton site.
va voir le tuto sur le site du zéro qui explique les expression régulière (ou regex)
(^[a-z])(\.|-|_)?([0-9a-z]){0,}(\.|-|_)?([a-z0-9]+)((\.|-|_)?([a-z0-9]+)){0,}@([a-z0-9\-]+)\.([a-z]{2,4}$)
la traduction est :
1) (^[a-z])
la chaine commence par une lettre
2) (\.|-|_)?
Il doit y avoir 0 ou 1 fois un "." ou "-" ou "_"
ainsi de suite.

perso, je trouve ce code particulièrement long et inutile pour une syntaxe de mail.
j'utilise celle-ci qui est plus simple a comprendre.
^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$
1) ^[a-z0-9._-]+
la chaine commence par au moins une lettre minuscule ou un chiffre ou "." ou "_" ou "-"
2) @
doit contenir ensuite un @
3) [a-z0-9._-]{2,}
pareil que 1 sauf qu'il doit au moins avoir 2 caractères.
4) \.[a-z]{2,4}$
ensuite on termine par un point et entre 2 et 4 lettres.

Mais va voir des explication sur les regex ;)
0
Alli
 
Merci.

Je pose la question, car c'est un prestataire qui à pondu ce code, que je ne serais pas allé voir, si l'adresse du site envoyé dans l'e-mail n'était pas fausse.
Et je suis bien content de ne pas être le seul à trouver cette syntaxe longue et compliqué pour ce qu'elle à a faire.
0
okuni Messages postés 1221 Date d'inscription   Statut Membre Dernière intervention   126
 
pas de problème :)
0