Bonjour,
Je souhaiterais savoir si il est possible de gérer les faux mails d'expéditeur avec la fonction mail() ?
Merci par avance
Bonjour,
Je souhaiterais savoir si il est possible de gérer les faux mails d'expéditeur avec la fonction mail() ?
Merci par avance
Si tu veux dire : "detecter qu'une adresse email n'existe pas" ?
Alors non la fonction mail ne te permettra pas de faire ça.
N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP
merci pour cette réponse mais donc quand une adresse n'est pas valide (mais au bon format) est-ce que la fonction se coupe ? ou elle envoi tout de même un mail?
"Pas au bon format" c'est autre chose encore mais oui la fonction mail essaiera d'envoyer le mail quand même.
Si tu veux analyser le retour d'erreur, utilise la classe PHPMailer.
N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP
Merci pour ta réponse mais c'est la première fois que j'utilise cette fonction... J'ai donc une question peut être un peu bête, est-il possible d'envoyer un mail html contenant une image (image personnalisée selon le destinataire) cliquable avec la fonction mail() ? ou il est préférable de passer par PHPmailer ?
P.S. : il faut peut-être créer un nouveau sujet pour ma nouvelle question ?
Dans tous les cas PHPMailer facilite grandement l'envoi de mail en PHP.
N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP
Bien sûr que c'est possible mais il est plus facile d'apprendre à utiliser PHPMailer que de faire le code correspondant. J'ai pas de meilleur conseil que celui donné par sabotage.
Si c'est par curiosité ou que tu tiens à faire le code toi même tu trouveras ton bonheur avec les mots clés "tuto mail php" dans un moteur de recherche.
Merci pour vos réponses donc j'utilise PHPMailer mais je rencontre un petit soucis lors du choix des destinataires ...
Je souhaite choisir les destinataires depuis la base de donnée faire un while sur toute les adresses de ma table. Donc :
Mon soucis est que le nombre de mail envoyé (à chaque personne) augmente tout le long du while ... comment faire ... ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 while($array=mysql_fetch_array($result)) { $mail->AddAddress($array["mail"]); } $mail -> Send;
Merci par avance pour votre aide
Tu veux dire que le 10ème destinataire recoit 10 fois le mail ?
N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP
oui tu as tout compris ... problème avec le while ?
Montre nous le code entier.
N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP
voilà le code ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 require_once('/phpmailer/class.phpmailer.php'); $mail = new PHPMailer(); $mail->CharSet = "utf-8"; $mail->IsHTML(true); $mail->SetFrom('xxx@gmail.fr', 'Nom Prénom'); $mail->Subject = 'objet'; $requete = "select * from tablel"; $result=mysql_query($requete); while($array=mysql_fetch_array($result)) { $mail->Body = 'Bonjour'.$array["prenom"].' '.$array["nom"]; $mail->AddAddress($array["mail"]); } $mail->Send();
Et si tu mettais $mail->Send(); à l'intérieur de la boucle ?
Merci, je test demain mais quand j'y penses c'est plus logique effectivement...
Par contre j'ai une autre question par curiosité est-il possible d'envoyer un nombre important de mail (environ 10 000 destinataires...) ?
Bonsoir à tous désolé pour le retard j'ai eu quelques soucis de connexion. Donc j'ai essayé d'ajouter le
dans la boucle.
Code : Sélectionner tout - Visualiser dans une fenêtre à part $mail ->send();
J'ai un résultat un peu bizarre le mail est envoyé au premier contact ensuite au premier et au seconde ensuite au premier, second et troisième etc.
voila mon nouveau code qui maintenant fonctionne j'ai modifié la position du while mais c'est peut être un peu long de régénérer la partie "fixe" du mail à chaque fois ... des idées ? ^^
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 require_once('/phpmailer/class.phpmailer.php'); $requete = "select * from table"; $result=mysql_query($requete); while($array=mysql_fetch_array($result)) { $mail = new PHPMailer(); $mail->CharSet = "utf-8"; $mail->IsHTML(true); $mail->SetFrom('xxx@gmail.fr', 'Nom Prénom'); $mail->Subject = 'objet'; $mail->Body = 'Bonjour'.$array["prenom"].' '.$array["nom"]; $mail->AddAddress($array["mail"]); $mail->Send(); }
Je me pose une question...
Est-ce qu'il est plus intéressant de créer un nouveau sujet pour ma question ? pour avoir plus de visibilité ou aucun intérêt?
Ben tu as essayé autrement et ça ne fonctionnait pas, maintenant que tu as trouvé une solution je vois pas ce qui te dérange. Je n'utilise pas cette classe donc je peux pas te répondre catégoriquement sur la meilleure façon de l'utiliser mais ce que je sais c'est que ce qui est long c'est d'envoyer le mail (avec n'importe quel code ou classe que l'on utilise). Donc l'instanciation de la classe dans ta boucle c'est négligeable par rapport au temps d'envoi d'un mail. Peut-être avec un code très optimisé on gagnerait un peu en ressource mémoire mais en temps d'exécution on gagnerait rien.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager