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 22/12/2006, 08h48   #1
Modérateur
 
Avatar de Dsphinx
 
Homme
Développeur Web
Inscription : septembre 2005
Messages : 1 032
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Suisse

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2005
Messages : 1 032
Points : 754
Points : 754
Par défaut eregi vérification validité email

Bonjour,

J'ai fais une fonction qui controle l'email d'une personne mais cette dernière ne vérifie que la présence du @ comment faire pour qu'elle vérfife aussi la présence d'un . après le @ ??? Merci !

Code :
1
2
3
4
5
6
7
8
9
10
11
12
	function email_OK ($email)
	{
	    $test_mail = eregi('^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)+$',$email);
	    if ($test_mail)
		{
			return TRUE;
	    }
	    else
		{
	        return FALSE;
	    };
	}
Dsphinx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2006, 08h49   #2
Membre éclairé
 
Avatar de johweb
 
Inscription : décembre 2003
Messages : 332
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : décembre 2003
Messages : 332
Points : 316
Points : 316
Tiens, moi j'utilise ceci.
Elle est améliorable, mais fonctionnelle :
Code :
1
2
3
4
5
6
7
8
9
function verif_email($toto){
	$tmptest=true;
	$toto = strtolower($toto);
	if (strlen($toto) < 6){ $tmptest=false; }
	if (strlen($toto) > 255) { $tmptest=false;  }
	if (!ereg("@", $toto)){ $tmptest=false;  }
	if (preg_match_all("/([^a-zA-Z0-9_\@\.\-])/i", $toto, $trouve)){ $tmptest=false;  }
	return $tmptest;
	}
johweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2006, 08h57   #3
Modérateur
 
Avatar de Dsphinx
 
Homme
Développeur Web
Inscription : septembre 2005
Messages : 1 032
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Suisse

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2005
Messages : 1 032
Points : 754
Points : 754
Merci ! Elle est pas mal ta fonction ! mais elle ne vérifie pas la présence d'un . !

Je vais voir ce que je peux faire... Y a t-il une fonction pour vérifier la présence d'un caractère ? j'ai rajouter :

Code :
1
2
3
4
		if (!ereg(".", $toto))
		{
			$tmptest=false;
		}
Mais ca ne fonctionne pas...
Dsphinx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2006, 11h35   #4
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Le point est un métacaractère, c'est à dire qu'il possède une signification particulière dans une expression régulière. En effet, celui-ci a pour valeur de dire qu'il équivaut à un caractère, n'importe lequel.

Vous devez donc l'échapper (ie le faire précéder d'un backslash) pour utiliser sa valeur en tant que simple caractère :
Code :
1
2
3
if (!ereg("\.", $toto))  {
    $tmptest=false;
}
Note : j'espère que vous utilisez des noms de variables plus explicites dans vos scripts parce que sur des scripts importants vous allez vite perdre votre temps à savoir quel est le rôle de chaque variable. Pensez également que c'est peut être nous qui vous relirons !


Julp.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2006, 11h38   #5
Modérateur
 
Avatar de Dsphinx
 
Homme
Développeur Web
Inscription : septembre 2005
Messages : 1 032
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Suisse

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2005
Messages : 1 032
Points : 754
Points : 754
J'avais oublié le \ ! Pardon ! Merci Julp ! T'en fais pas les noms de variables sont finalisé à la fin pour avoir le meilleur nom en fonction de son utilité dans le code !

Dsphinx 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 23h58.


 
 
 
 
Partenaires

Hébergement Web