[PHP] controle de saisie mail

[Fermé]
Signaler
Messages postés
350
Date d'inscription
lundi 30 juin 2008
Statut
Membre
Dernière intervention
26 mai 2016
-
Messages postés
1628
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
5 septembre 2012
-
Bonjour, Voilà j'explique j'ai une zone de saisie ou je peux ecrire mon adresse mail lors d'une inscription sur un site

<td>Mail : </td><td><input type="text" name="mail" value="<?php if

(isset($_POST['mail'])) echo htmlentities(trim($_POST['mail'])); ?>"></td></tr>

<tr>

J'aimerais pouvoir gérer le fait que ce soit bien une adresse email ... comment faire ?

pour que ça soit du type : chaine@chaine.chaine (exemple : NomPrenom@msn.com )

gérer le fait qu'il y est une chaine avant "@" et une chaine apres "@" et un "." apres la chaine apres "@" et enfin une chaine apres le "."


ça a lair compliqué lol
si qqn peut m'aider

3 réponses

Messages postés
21
Date d'inscription
lundi 7 juin 2010
Statut
Membre
Dernière intervention
10 juin 2010
5
Utiliser des Regex, voici un petit exemple péché sur le site. Je ne l'ai pas testé, mais au cas où tu chercher "regex control mail" et tu auras plein de réponse.

<?php
$chaine='truc-chose_machin_@expreg.com';
if(!preg_match(''^[[:alnum:]]([-_.]?[[:alnum:]])+_?@[[:alnum:]]([-.]?[[:alnum:]])+\.[a-z]{2,6}$'',$chaine))
{
echo 'pas bon';
}
else
{
echo 'bon';
}
?>
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41713 internautes nous ont dit merci ce mois-ci

Messages postés
1628
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
5 septembre 2012
113
Utiliser Regex c'est bien, car tu peur le faire toi-même.

Bon, autrement, il y a :
if(filter_var($email, FILTER_VALIDATE_EMAIL))
{
// good email
}
else
{
// pas good email
}
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41713 internautes nous ont dit merci ce mois-ci


Ou un peut plus simple :P

if (preg_match("#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$#", $email))
{
echo "ok";
}
else
{
echo "erreur";
}