Erreur PHP fonction mail()

Fermé
Utilisateur anonyme - 20 avril 2016 à 21:47
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 - 25 avril 2016 à 20:48
Bonsoir.

J'ai un petit problème avec mon code PHP, en fait, tout va bien dans le code en soit, le problème est que lorsqu'un utilisateur s'inscrit sur mon site, il doit entrer un email, si l'email est valide alors il n'y a aucun problème et un code de confirmation est envoyé, mais si l'email n'est pas valide, PHP affiche une erreur au visiteur... J'aimerais pouvoir prevenir cette erreur avec un if ou autre (comme !empty ou isset pour les POST des formulaires), auriez-vous des idées ?

Merci.
A voir également:

1 réponse

jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
21 avril 2016 à 08:55
Bonjour,

Pourrais tu être plus précis ?
Quand tu dis : "si l'email n'est pas valide" ... tu veux dire l'utilisateur rentre autre chose qu'un email ?
Dans ce cas, il existe en php
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    // invalid emailaddress
}

mais le mieux est de vérifier LORS DE LA SAISIE par l'utilisateur (avant même qu'il ne valide ton formulaire...) ... et pour ça, il faut le faire en JAVASCRIPT (via des expressions réulères)
Par exemple via cette fonction
function validateEmail(email) {
    var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    return re.test(email);
}

Et sur l'input de ton formulaire qui doit recevoir le mail.. ajouter un onkeyup qui appel cette fonction par exemple.

0
Utilisateur anonyme
25 avril 2016 à 19:17
Bonjour,

Merci, mais mon probleme est de verifier si l'adresse email existe, et non si elle a la bonne syntaxe...
0
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
25 avril 2016 à 19:43
Ah ben c'est vrai que c'était clairement dit dans ta question. ....
d'où l'importance d'être précis dans ses questions !!!
Enfin bon... non...ça. .. on ne fait pas.
On envoie le mail à l'utilisateur. .. et on lui indique que si il n'a rien reçu. .. de vérifier si son email est bon...
0
Utilisateur anonyme
25 avril 2016 à 19:56
Mais alors, comment savoir s'il a reçu quelque chose ou pas ? Comment éviter cette erreur qui s'affiche ? (ou alors personnaliser le message d'erreur)
0
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
25 avril 2016 à 20:35
Quelle erreur s'affiche ?
0
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
25 avril 2016 à 20:48
Après...; si vraiment tu souhaites vérifier si l'email existe ou non... tu peux t'inspirer de ceci : https://www.phpclasses.org/package/6650-PHP-Check-if-an-e-mail-is-valid-using-SMTP.html
0