je suis un petit nouveau ici et je débute également le codage PHP.
Je bloque sur une problématique concernant l'envoie de mails via phpmailer.
J'ai sur une base SQL une liste d'une cinquantaine d'adresse mails.
Mon code me permet normalement de requête cette liste pour ensuite envoyer un même mail à l'ensemble des destinataires.
Le problème c'est que les destinataires ont reçu plusieurs mail alors que je n'ai effectué qu'un seul envoi...j'imagine que quelque chose cloche dans mon code mais je ne vois pas.
Pouvez vous m'aider? Merci.
Ci dessous un extrait du code
<?php
include("config2.php");
$q = mysql_query("SELECT Mail from table_sms");
mysql_close(); // on ferme la connexion
?>
<?php
// connexion à la base
include("config.php");
// on ferme la connexion à mysql
mysql_close();
require('phpmailer/class.phpmailer.php');
$headers = "MIME-Version: 1.0"."\r\n";
$headers .= "Content-type: text/html; charset=utf-8"."\r\n";
$mail = new PHPMailer();
$mail->Host = 'smtp.domaine.fr';
$mail->SMTPAuth = false;
$mail->Port = 25; // Par défaut
$mail->CharSet = 'utf-8';
// Expéditeur
$mail->SetFrom(''.$guichet.'');
// Destinataire
while( $r=mysql_fetch_array($q) )
{
$email = $r['Mail'];
for($i=0;$i<count($email);$i++){
$mail->AddAddress($email);
};
}
// Objet
$mail->Subject = 'PGR DAO' ;
$mail->MsgHTML(''.$_POST['texte_mail'].'<br><br>'.$url.'');
// Envoi du mail avec gestion des erreurs
if(!$mail->Send()) {
echo 'Erreur : ' . $mail->ErrorInfo;
} else {
$message='Mail envoyé';
echo '<script type="text/javascript">window.alert("'.$message.'");</script>';
echo header('Location: module_sms.php');
}
?>