Magicarno Posté 24 Janvier 2009 Posté 24 Janvier 2009 Bonjour, Malgré des recherches sur le net je n'ai pas trouvé d'explication à mon problème. Je désire envoyé un email aux abonnées à ma newsletter. Les adresses sont dans un base MySQL et l'envoie se fait automatiquement par un tache CRON. Le problème est que mon script ci-dessous considère qu'il envoie un mail à chaque destinaire alors que dans les faits, seul le premier mail au premier destinataire est envoyé. Je ne vois pas où est mon erreur <?php// RECUPERATION NEWSLETTER$Contenu = file_get_contents('Page de la Newsletter'); $Sujet = "Newsletter du ".$DATE;$requete = "SELECT * FROM TABLE_DES_ABONNES WHERE `ACTIF` =1";$resultat = mysql_query( $requete );$nombre_abonnés = mysql_num_rows( $resultat );$i=0;while ($i<$nombre_abonnés){$enregistrement = mysql_fetch_array( $resultat );$Destinataire = $enregistrement[EMAIL];$From = "From:MOI\n";$From .= "MIME-version: 1.0\n";$From .= "Content-type: text/html; charset= iso-8859-1\n";if (mail($Destinataire,$Sujet,$Contenu,$From)) // Envoi du message{ echo "Votre message a bien été envoyé à $Destinataire<br>";}else // Non envoyé{ echo "Votre message n'a pas pu être envoyé à $Destinataire<br>";}//mail($Destinataire,$Sujet,$Contenu,$From);//echo "Envoi d'un email à $Destinataire<br>";$i++;}echo "Fin, tout est ok.<br>";?> Merci d'avance
muska92 Posté 1 Février 2009 Posté 1 Février 2009 Essaie plutôt ça : <?php// RECUPERATION NEWSLETTER$Contenu = file_get_contents('Page de la Newsletter');$Sujet = "Newsletter du ".$DATE;$requete = "SELECT * FROM TABLE_DES_ABONNES WHERE `ACTIF` =1";$resultat = mysql_query( $requete );[b]while ($enregistrement = mysql_fetch_array( $resultat );){[/b]$Destinataire = $enregistrement[EMAIL];$From = "From:MOI\n";$From .= "MIME-version: 1.0\n";$From .= "Content-type: text/html; charset= iso-8859-1\n";if (mail($Destinataire,$Sujet,$Contenu,$From)) // Envoi du message{echo "Votre message a bien été envoyé à $Destinataire<br>";}else // Non envoyé{echo "Votre message n'a pas pu être envoyé à $Destinataire<br>";}//mail($Destinataire,$Sujet,$Contenu,$From);//echo "Envoi d'un email à $Destinataire<br>";$i++;}echo "Fin, tout est ok.<br>";?>
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant