amatrix
Messages postés11Date d'inscriptionvendredi 8 août 2003StatutMembreDernière intervention25 décembre 2004
-
28 déc. 2003 à 15:51
tommythefreak
Messages postés3Date d'inscriptionvendredi 30 avril 2004StatutMembreDernière intervention10 juin 2004
-
7 juin 2004 à 16:29
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
tommythefreak
Messages postés3Date d'inscriptionvendredi 30 avril 2004StatutMembreDernière intervention10 juin 2004 7 juin 2004 à 16:29
oui j'ai remarqué ca par après, le mieux est encore de vérifier si le nom de domaine existe...
Voila la fonction que j'ai créée :
function verifmail($email)
{
//verification de l'adresse mail au format x*[.x*]@x*.xx[x][.xx[x]]
if (eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]{2,})*\.[a-z0-9-]{2,}$", $email))
{
//recuperation du nom de domaine
list($name, $domain) = explode("@", $email);
//verification du nom de domaine
if (!checkdnsrr($domain))
{
return "Nom de domaine inconnu";
}
else
{
return 0;
}
}
else
{
return "Format invalide";
}
}
Je crois qu'elle est asez complète cette fois :)
cs_gysmovoile
Messages postés1Date d'inscriptionvendredi 14 février 2003StatutMembreDernière intervention 7 juin 2004 7 juin 2004 à 15:59
@tommythefreak :
les noms de domaines peuvent très bien avoir une extension de 4 lettres également ...
exemple *.aero ! et y en a plein d'autre (*.info ...)
tommythefreak
Messages postés3Date d'inscriptionvendredi 30 avril 2004StatutMembreDernière intervention10 juin 2004 30 avril 2004 à 11:55
si je ne me trompe ce test acceptera des adresses de type xxx.xxx@xxx.xxxxxxx
alors qu'un domaine ne peut avoir que 2 ou 3 caractères dans son extension (.fr, .com)
et n'acceptera pas des domaines du style xxx.xx.xx (fr.st, co.uk)
une solution serait de remplacer l'expression régulière par
^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]{2,3})*\.[a-z0-9-]{2,3}$
Je viens seulement d'apprendre les ereg donc je ne suis pas sûr ;)
virtuelkiller
Messages postés44Date d'inscriptionsamedi 8 mars 2003StatutMembreDernière intervention 9 mars 2016 27 janv. 2004 à 18:18
Une petite astuce : activer le compte par mail.
Je m'explique quand les usagers créent un compte celui-ci n'est validé que par le lien qui sera inscrit dans le mail que vous enverrai à l'email donnée lors de l'inscription.
affiliatel
Messages postés11Date d'inscriptionmardi 27 janvier 2004StatutMembreDernière intervention22 novembre 2004 27 janv. 2004 à 12:17
certains usagers code www.email@domain.com
quelqu'un à une astuce pour éviter cela ?
virtuelkiller
Messages postés44Date d'inscriptionsamedi 8 mars 2003StatutMembreDernière intervention 9 mars 2016 11 janv. 2004 à 14:42
Désolé pour le retard ;-)
if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$",$email))
//^[_a-z0-9-] verifie s'il y a bien des caractères alphanumérique sans espace
//+(\.[_a-z0-9-]+)* verifie la présence d'un point et si oui après avec un texte alphanumérique
//@[a-z0-9-]+(.[a-z0-9-]+)*$ tout cela autour d'un arobase et vérifie un texte avec un point (wanadoo.fr par exemple)
{
//si il n'y a pas cela erreur
echo"<script language="Javascript">alert("Votre adresse e-mail est incorrect. Attention\, elle vous permettra de récupérer votre pass si vous le perdez \!");history.back();</script>";
exit;
}
amatrix
Messages postés11Date d'inscriptionvendredi 8 août 2003StatutMembreDernière intervention25 décembre 2004 28 déc. 2003 à 15:51
Si tu savais laisser un commentaire pour expliker le commande if(!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*$",$email))
car je n ai rien compris merci
7 juin 2004 à 16:29
Voila la fonction que j'ai créée :
function verifmail($email)
{
//verification de l'adresse mail au format x*[.x*]@x*.xx[x][.xx[x]]
if (eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]{2,})*\.[a-z0-9-]{2,}$", $email))
{
//recuperation du nom de domaine
list($name, $domain) = explode("@", $email);
//verification du nom de domaine
if (!checkdnsrr($domain))
{
return "Nom de domaine inconnu";
}
else
{
return 0;
}
}
else
{
return "Format invalide";
}
}
Je crois qu'elle est asez complète cette fois :)
7 juin 2004 à 15:59
les noms de domaines peuvent très bien avoir une extension de 4 lettres également ...
exemple *.aero ! et y en a plein d'autre (*.info ...)
30 avril 2004 à 11:55
alors qu'un domaine ne peut avoir que 2 ou 3 caractères dans son extension (.fr, .com)
et n'acceptera pas des domaines du style xxx.xx.xx (fr.st, co.uk)
une solution serait de remplacer l'expression régulière par
^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]{2,3})*\.[a-z0-9-]{2,3}$
Je viens seulement d'apprendre les ereg donc je ne suis pas sûr ;)
27 janv. 2004 à 18:18
Je m'explique quand les usagers créent un compte celui-ci n'est validé que par le lien qui sera inscrit dans le mail que vous enverrai à l'email donnée lors de l'inscription.
27 janv. 2004 à 12:17
quelqu'un à une astuce pour éviter cela ?
11 janv. 2004 à 14:42
if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$",$email))
//^[_a-z0-9-] verifie s'il y a bien des caractères alphanumérique sans espace
//+(\.[_a-z0-9-]+)* verifie la présence d'un point et si oui après avec un texte alphanumérique
//@[a-z0-9-]+(.[a-z0-9-]+)*$ tout cela autour d'un arobase et vérifie un texte avec un point (wanadoo.fr par exemple)
{
//si il n'y a pas cela erreur
echo"<script language="Javascript">alert("Votre adresse e-mail est incorrect. Attention\, elle vous permettra de récupérer votre pass si vous le perdez \!");history.back();</script>";
exit;
}
28 déc. 2003 à 15:51
car je n ai rien compris merci