[mail php] recoit en double ou triple !

Résolu/Fermé
Edouard - 7 juin 2007 à 16:50
 Utilisateur anonyme - 23 nov. 2009 à 10:00
Salut,

Je veux faire un petit script qui envoie une newsletter en html en récupérant le contenu d'une page html déjà sur le site (accessible comme cela avec un lien du type : si vous n'arrivez pas à lire cliquez ici).

Je passe l'algoritme qui sera derrière (BDD...)

Le code est basique, et fonctionne mais je reçois 2-3 emails à chaque fois !

Code :
<?php
$file="contenu.html";
$contenu = fread(fopen($file, "r"), filesize($file));
$email = "info@domaine.fr";
$titre = "TITRE";
$entete = $entete ="Content-type:text/html;From : from@domaine.fr;Reply-To:trash@phpteam.net";
mail($email, $titre, $contenu, $entete);
echo "email envoyé";
?>
A voir également:

29 réponses

Même problème chez Nuxit mél envoyé en double, triple et qqfois plus ...
Je suis preneur de toutes bonne nouvelles sur la question !


Fred
0
Salut,

Pour ma part, j'ai pas de réponse. Free s'est calmé tout seul...

Le script a été utilisé depuis sur des sites hébergés chez OVH et Lycos. Aucun soucis.

Plutôt inquiétant comme truc. Surtout que si ça se remet à déconner je risque d'avoir qelques clients au bout du fil...

Pour ma part je pense que ni la dtd ni le navigateur ne puisse être en cause, dans la mesure où c'est le php qui envoie l'email, que le problème apparait quelque soit le script en amont...

Je crois que ça vient du serveur de mail de nos hébergeur et qu'on ne peut rien y faire.

A+ Edouard
0
bonjour, j'ai eu un pb similaire, je ne sais pas si le votre est le meme:
mail($To, $sujet, $message, $headers)

le mail etait toujours envoyé en double.
en ce qui me concerne, la solution était simple:

dans mon $headers j'avais les entetes classique "from: to: ..."
et donc dans mon entete "to:.." j'avais l'adresse répété de ma variable $To. en supprimant de $headers la ligne avec "To:.." je ne recoit desormais plus qu'un mail, donc tout va bien.
a+
0
AAARGGGHH c'est quoi ce délire encore ??!!

Après orange qui s'amuse à passer son smtp sur 587 sans prévenir personne voila le php qui déraille...

Je suis hebergé chez ovh avec smtp perso et j'ai le même problème de mail en triple.
0
Salut,

Moi ça c'est calmé, mais vérifie bien les headers( $from ; $to...) et la DTD.

Edouard
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Malheuresement j'ai tout essayé, et moi c'est pour envoyer un message unique seulement.

- Même sans headers "mail($to,$sujet,$message)" ou avec un header simple rien n'y fait.

- La DTD est en strict depuis le début mais cela n'a aucun rapport ;)

- L'envoi de mail via la fonction unix "mail" fonctionne donc cela ne vient pas du smtp

Par contre je ne rencontre le problème qu'avec php5, avec le 4 tout fonctionne bien, je vais donc creuser cette piste.
0
C'est maintenant revenu à la normale...sans rien changer. Encore un truc à se rendre dingue.
0
totolarigolade
27 juin 2008 à 16:47
Voici la solution (un peu tard mais bon...)

http://lists.evolt.org/archive/Week-of-Mon-20030714/144979.html

en faite, le faite de mettre un to dans le header et de remettre l'adresse mail dans la fonction mail envoye aux 2 adresses !
0
Désolé totolarigolade,

Mais c'est officiel, c'est un bug de l'espace !

Sérieux, regarde mes posts, je n'ai pas de TO dans les headers, donc ça ne vient pas de là.

Merci quand même.

Edouard



________________________________
"si l'informatique c'était binaire (ça marche ou ça marche pas) ça se saurait depuis longtemps...
0
j'avais egalement le meme pb avec la fonction mail ()
je recevai 2 mail a chaque fois sur un serv dedié apparement mon pb etait que je mettais le retour de la fonction dans une variable comme il se doit mais bon ??
ex : $envoiOK=mail(xxxxxx);
j'ai supprimé ma variable de retour et ca a marché
donc j'appelle simplement mail(xxxxx);

je sais que ce n'est pas le meme pb pour vous mais si d'autres personnes lisent ce post ca poura peut etre les aider
0
Utilisateur anonyme
23 nov. 2009 à 10:00
Comment enlever la copie recue en double à chaque mail svpi
0