Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/04/2007, 11h11   #1
Membre à l'essai
 
Étudiant
Inscription : février 2007
Messages : 94
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2007
Messages : 94
Points : 21
Points : 21
Par défaut expression regulière pour contrôle d'adresse mail

bonjour à tous,

plutot que de pompé betement les codes existant(qui fonctionnent tres bien ) je suis en train de faire ma fonction de controle mail..
bien evidemment ça ne marche pas comme je veux donc pouvez vous me dire ce qui ne vas pas dans mon expression merci
Code :
eregi("^[a-zA-Z0-9\-_\.]@[a-zA-Z0-9\-_\.]$",$mail)
je commence doucement pour effectuer les tests.
zit_zit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 11h24   #2
Membre actif
 
Inscription : août 2002
Messages : 194
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 194
Points : 194
Points : 194
Envoyer un message via MSN à Léortien
ton expression ne marche pas?
ou elle ne correspond pas à ce que tu veux?

je n'ai pas parlé les expressions régulières depuis longtemps
mais à vu de nez je traduis ça par :

expression qui commence par
un caractère alphanumérique ou un - un _ ou un .
puis le caractère @
puis
un caractère alphanumérique ou un - un _ ou un .
fin de l'expression


à vue de nez ça va matcher les truc du genre
a@R
8@t
_@.

j'espère que je n'ai pas fait d'erreur de traduction
__________________
Tout le monde savait que c'était impossible. Il est venu un imbécile qui ne le savait pas et qui l'a fait.
(\ _ /)
(='.'=) Voici Lapinou. Aidez le à conquérir le monde
(")-(") en le reproduisant.


Spidercochon, spidercochon, il peut marcher au plafond
...MM ......Voici Spidercochon. Aidez le à conquérir le monde
E(....)~....en le reproduisant.
...w
Léortien est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 11h26   #3
Membre chevronné
 
Avatar de haltabush
 
Développeur Web
Inscription : avril 2005
Messages : 726
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 726
Points : 790
Points : 790
J'ai trouvé une petite fonciton qui test si l'adresse est bine compatible avec la RFC1822 (il me semble).
Je vous la colle ici :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
//Fonction de vérification de mail... compliquée? ben oui mais conforme RFC822 (la clââAââsse)
function is_valid_email_address($email){
 
    $qtext = '[^\\x0d\\x22\\x5c\\x80-\\xff]';
    $dtext = '[^\\x0d\\x5b-\\x5d\\x80-\\xff]';
    $atom = '[^\\x00-\\x20\\x22\\x28\\x29\\x2c\\x2e\\x3a-\\x3c'.
            '\\x3e\\x40\\x5b-\\x5d\\x7f-\\xff]+';
    $quoted_pair = '\\x5c[\\x00-\\x7f]';
    $domain_literal = "\\x5b($dtext|$quoted_pair)*\\x5d";
    $quoted_string = "\\x22($qtext|$quoted_pair)*\\x22";
    $domain_ref = $atom;
    $sub_domain = "($domain_ref|$domain_literal)";
    $word = "($atom|$quoted_string)";
    $domain = "$sub_domain(\\x2e$sub_domain)*";
    $local_part = "$word(\\x2e$word)*";
    $addr_spec = "$local_part\\x40$domain";
 
    return preg_match("!^$addr_spec$!", $email) ? 1 : 0;
}
haltabush est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 11h37   #4
Membre à l'essai
 
Étudiant
Inscription : février 2007
Messages : 94
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2007
Messages : 94
Points : 21
Points : 21
ok merci pour votre je vois comment modifier tout ça et je vous tiens au courant
zit_zit est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 12h03   #5
Membre à l'essai
 
Étudiant
Inscription : février 2007
Messages : 94
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2007
Messages : 94
Points : 21
Points : 21
c'est bon j'ai fini.
bon mon experession n'est pas tres tres pousser dans la verification mais sa permet d'eviter quelque erreur enfin sa repond a mon besoin pour l'instant voila le code:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function verif_mail($mail)
{
 
 if(eregi("^([a-zA-Z0-9]+)@([a-zA-Z0-9]+).{2,4}$",$mail))
 {
		echo  "ok<br>";
 }
 else
 {if(eregi("^([a-zA-Z0-9]+)([_\.-]+)([a-zA-Z0-9]+){1,}@([a-zA-Z0-9]+).([a-zA-Z]+){2,4}$",$mail))
 	{echo "ok<br>";}
	else
		echo "erreur<br>";
 }
 
 }
merci encore pour votre aide à bientot
zit_zit est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h59.


 
 
 
 
Partenaires

Hébergement Web