Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2329 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] tester une adresse e-mail

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] tester une adresse e-mail

n°1417360
hugoOo
laisse pas dépasser ton pixel
Posté le 01-08-2006 à 12:45:17  profilanswer
 

Bonjour :) ,
J'ai vu que lors de l'inscription a certains sites, ils demandent une addresse email puis il testent si l'email est valide (ou  du moins le domaine sur laquelle elle est enregistrée). Donc voilà j'aurai voulu savoir comment on peut faire ça.
 :hello:


---------------
http://over-templates.c.la
mood
Publicité
Posté le 01-08-2006 à 12:45:17  profilanswer
 

n°1417373
gooopil
pfiew
Posté le 01-08-2006 à 13:09:52  profilanswer
 

1.Tu généres un code unique pour l'utilisateur à l'inscription que tu enregistres dans ta base
2.Tu envoies un mail à cette personne. Après deux solutions. Soit tu donnes le code unique dans le mail en demandant à la personne de l'entrer sur le site quand il revient, soit tu fournis un lien dans le mail avec en paramètre ce code unique. De cette façon la personne a juste a cliquer sur le lien pour arriver sur ta page ou son compte sera activée
3. Sur ta page d'activation du compte, tu vérifies que l code fourni correspond à un compte en attente d'activation et si c'est bon tu actives le compte.
4. voila :)

n°1417385
AlphaZone
Posté le 01-08-2006 à 13:22:54  profilanswer
 

gooopil a écrit :

1.Tu généres un code unique pour l'utilisateur à l'inscription que tu enregistres dans ta base
2.Tu envoies un mail à cette personne. Après deux solutions. Soit tu donnes le code unique dans le mail en demandant à la personne de l'entrer sur le site quand il revient, soit tu fournis un lien dans le mail avec en paramètre ce code unique. De cette façon la personne a juste a cliquer sur le lien pour arriver sur ta page ou son compte sera activée
3. Sur ta page d'activation du compte, tu vérifies que l code fourni correspond à un compte en attente d'activation et si c'est bon tu actives le compte.
4. voila :)


+1 :jap:

n°1417455
hugoOo
laisse pas dépasser ton pixel
Posté le 01-08-2006 à 14:33:45  profilanswer
 

je fais déja ça mais ça me convient, merci


---------------
http://over-templates.c.la
n°1417456
gooopil
pfiew
Posté le 01-08-2006 à 14:34:26  profilanswer
 

hugoOo a écrit :

je fais déja ça mais ça me convient, merci


 :??:

n°1417503
sircam
I Like Trains
Posté le 01-08-2006 à 15:18:57  profilanswer
 

Un peu plus rafiné, tenant compte de :
 

Citation :

(ou  du moins le domaine sur laquelle elle est enregistrée


 
Vérifier l'existence du domaine avant d'envoyer l'email. Ca évite que le luser l'utilisateur n'attende un email qui n'arrivera jamais à cause d'une typo dans le nom de domaine.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1417675
AlphaZone
Posté le 01-08-2006 à 19:34:43  profilanswer
 

Exactement sircam. Tout le monde n'est pas chez hotmail et compagnie... faut penser à ceux qui ont leur propre nom de domaine.

n°1417719
speedylol
ouvrire c'est connaissance
Posté le 01-08-2006 à 21:01:33  profilanswer
 

bonjour voilà la solutions
 
if (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$_POST["emai"])){  
// l'adresse e-mail n'est pas valide
                 $erreur="Votre adresse e-mail n'est pas valide...";
 
}

n°1417764
hugoOo
laisse pas dépasser ton pixel
Posté le 01-08-2006 à 22:22:04  profilanswer
 

j'utilise déja ce script mais je me demandai comment tester la validité d'un nom de domaine..
EDIT: je sais qu'il existe une méthode en PEAR mais mon serveur ne le supporte pas.


---------------
http://over-templates.c.la
n°1417877
AlphaZone
Posté le 02-08-2006 à 06:11:14  profilanswer
 

Tu t'en fou un peu de la validité du nom de domaine. C'est à l'utilisateur de faire attention. La méthode proposé par gooopil est parfaite et c'est probablement la plus efficace.

mood
Publicité
Posté le 02-08-2006 à 06:11:14  profilanswer
 

n°1417929
sircam
I Like Trains
Posté le 02-08-2006 à 09:41:02  profilanswer
 

AlphaZone a écrit :

Tu t'en fou un peu de la validité du nom de domaine. C'est à l'utilisateur de faire attention. La méthode proposé par gooopil est parfaite et c'est probablement la plus efficace.


 :heink:  
 
Beh non, si tu veux chouchouter ton client avec une application sérieuse, tu fais le maximum pour que le client ne fasse pas d'erreurs.
 
Si le client veux s'inscrire en ligne, que tu lui annonces que tu vas lui envoyer un email et qu'il ne le reçoit pas, c'est peut-être un client perdu. Tout cela à cause d'une typo dans un nom de domaine.  [:airforceone]
 
Un peu comme si tu faisais une inscription papier et qu'à cause d'une typo, ton dossier était classé sans suite. Je suis sûr que tu serais mécontent. Même l'administration ne procède généralement pas de la sorte. :D
 
De plus, ça réduit les éventuels frais de post-processing, si un opérateur doit lister les inscriptions pendantes ou s'enquérir d'une alerte/audit pour un email qui n'a pas abouti, ou en cas d'appel : "je me suis inscrit sur votre site mais..." et tu commences déjà à perdre de l'argent.
 
Visez la qualité ! En l'occurence, ça ne coûte pas (trop) cher. Il faut juste être prudent que la vérification du nom de domaine ne prenne pas des plombes et, qu'en cas d'échec, elle n'empêche pas l'inscription!


Message édité par sircam le 02-08-2006 à 12:28:17

---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1418049
hugoOo
laisse pas dépasser ton pixel
Posté le 02-08-2006 à 12:06:18  profilanswer
 

+1


---------------
http://over-templates.c.la
n°1418055
gebruik
Posté le 02-08-2006 à 12:25:36  profilanswer
 

Le contrôle d'existence de domaine n'empêche pas non plus l'erreur de saisie d' utilisateur : c'est aussi de sa responsabilité que de vérifier, ou de lui donner les moyens de vérifier, la validité de saisie de son adresse mail.
Chacun sa méthode, mais je préfère de loin un regex pour contrôler la forme et la double saisie d'adresse mail dans un formulaire pour vérification (même si des utilisateurs font du copier/coller).
Accessoirement, rappeler à la validation de l'inscription ou après l'envoi de forumulaire quelle est l'adresse qui a été utilisée.
La méthode est classique et l'erreur 'facteur humain' inévitable.

n°1418057
gooopil
pfiew
Posté le 02-08-2006 à 12:27:59  profilanswer
 

AlphaZone a écrit :

Tu t'en fou un peu de la validité du nom de domaine. C'est à l'utilisateur de faire attention. La méthode proposé par gooopil est parfaite et c'est probablement la plus efficace.


 
 :heink: aussi !
 
Les deux sont complémentaires...C'est pas la même chose, alors comment tu peux dire que ce que j'ai proposé est plus efficace ?  
 
Sinon comme l'a dis Sircam, c'est clair et net que l'idéal c'est de faire la vérification du domaine au moment ou tu vérifies la validité de l'email...La plupart du temps je fais une vérification de domaine, annonce l'erreur au visiteur mais je ne bloque pas l'inscription à cause de ça. C'est le genre de petit plus qui font la différence sur le long terme entre un projet soigné et un autre...

n°1418069
AlphaZone
Posté le 02-08-2006 à 13:09:32  profilanswer
 

gooopil a écrit :

Les deux sont complémentaires...C'est pas la même chose, alors comment tu peux dire que ce que j'ai proposé est plus efficace ?


 
J'aurais du souligner et mettre en gras le "probablement".

n°1418071
jagstang
Pa Capona ಠ_ಠ
Posté le 02-08-2006 à 13:18:39  profilanswer
 

je fais ça aussi parfois. ça assure que le domaine existe, mais pas que l'adresses est valide.  
 
djfsjdflk@jfkldsjfasdfhfsdfhskjhfk.com -> false
ffffdsjfsadjflsdjfsajl@yahoo.fr  -> ok
 

Code :
  1. list($compte, $domaine)=split("@", $email, 2);
  2.           if (!checkdnsrr($domaine, "MX" ))
  3.                {
  4.                echo "<li>invalid e-mail address : ($compte@$domaine)";
  5.        }


Message édité par jagstang le 02-08-2006 à 13:19:16

---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1418224
sircam
I Like Trains
Posté le 02-08-2006 à 15:16:42  profilanswer
 

Il n'est pas possible de tester plus loin que la validité du domaine de toute façon. Plus aucun serveur email ne fournit d'indication sur l'existence ou la non-existence d'une adresse au sein du domaine.
 
[:pingouino]
 
Si la vérification échoue, il convient de distinguer deux cas :
- Le DNS check a échoué. On ne peut rien conclure, si ce n'est qu'on n'a pas pu procéder à la vérification. Il est conseillé de passer un audit/alert;
- Le DNS check dit que le domaine n'existe pas. On peut attirer l'attention de l'utilisateur et l'inviter à corriger son adresse, mais il vaut mieux ne pas l'empêcher de poursuivre.
 
S'assurer que le service est fiable : s'il faut attendre un timeout pour se rendre compte qu'il est dans les choux, c'est no good...


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1418242
jagstang
Pa Capona ಠ_ಠ
Posté le 02-08-2006 à 15:29:34  profilanswer
 

sircam a écrit :

Plus aucun serveur email ne fournit d'indication sur l'existence ou la non-existence d'une adresse au sein du domaine.


 
ça n'a même jamais été possible


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
n°1418437
sircam
I Like Trains
Posté le 02-08-2006 à 17:35:29  profilanswer
 

jagstang a écrit :

ça n'a même jamais été possible


Si, et ça l'est encore en théorie, mais à l'heure actuelle, je ne vois plus aucun serveur mail qui accepte de fournir une réponse.   [:pingouino]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] tester une adresse e-mail

 

Sujets relatifs
envoi de mail après que quel q'un est remplie un formulaireun petit concept de mail
Site accessible à l'adresse web mais invisible sur le ftpLa persistence d'objets en PHP, les outils de mapping
Question de débutant sur les sessions PHP![PHP/MySQL] Wrappers MySQL - manque d'efficacité?
Impossibilité récente de passage de paramètres à un script PHP via URL[HTML/CSS/JS/PHP] DEBUTANTS / NEWBIES, ce topic est pour vous :)
RESOLU [PHP]Gestion des sujets[HTML/JS/PHP]Créer un système de BBCode gérant les tableaux
Plus de sujets relatifs à : [PHP] tester une adresse e-mail


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR