Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá galera,preciso de ajuda!
Eu estou trabalhando em um script no qual carrega e ler um arquivo .txt e envia uma mensagem para o e-mail dos usuários,está tudo funcionando bem o problema é quer na caixa de e-mail dos usuários está mostrando os e-mails dos outros usuários.( TIPO ENVIANDO COPIAS ).
Na opção de (PARA) está mostrando isso:
para: Você é um vencedor <sandoval.tec@hotmail.com>,
Você é um vencedor <site.digitaweb@gmail.com>,
Você é um vencedor <sanfree10@gmail.com> eu tenho estes 3 e-mails de teste.
COMO RESOLVO ISSO PARA ENVIAR A MENSAGEM PARA UM ÚNICO E-MAIL POR VEZ.
Estou usando php mailer
OBRIGADO
Meu amigo você poderia falar um pouco mais sobre a biblioteca ClearAddresses().
Você tem algum exemplo que possa mostrar.
OBRIGADO.
<?php
$mail->isSMTP();
$mail->Host = $host;
$mail->SMTPAuth = true;
$mail->Username = $username;
$mail->Password = $password;
$mail->Port = $port;
$mail->SMTPSecure = $secure;
/////////CONFIGURAÇÃO DO SERVIDOR/////////
$mail->From = $From;
$mail->FromName = $FromName;
//$mail->addReplyTo($From,$FromName);//Responde ao remetente.
$a = array('site.digitaweb@gmail.com','sanfree10@gmail.com');
foreach ($a as $key => $email) {
$mail->addAddress($email,'sandoval');//Aqui está o endereço de email e o nome de quem vai receber a mensagem.
$mail->isHTML(true); //Mensagem em html.
$mail->CharSet = 'utf-8'; //correção de acentuação.
$mail->wordwrap = 70; //Só até 70 caracteres e quebra linha.
$mail->Subject = 'Marketing Digital'; // Aqui é o assunto da mensagem.
$mail->Body = '<b>Estou testando o envio de email </b> do site <h2>site</h2>.'; // Aqui é o corpo da mensagem.
$mail->AltBody = 'Este email é um teste.';
}//foreach
//////////ENVIAR O EMAIL/////////////
$send = $mail->Send();
if ($send){
echo "E-mail enviado com sucesso!";
}else{
echo'Erro : '.$mail->ErrorInfo;
}
//////////ENVIAR O EMAIL/////////////
?>
Ai o código
<?php
$mail->isSMTP();
$mail->Host = $host;
$mail->SMTPAuth = true;
$mail->Username = $username;
$mail->Password = $password;
$mail->Port = $port;
$mail->SMTPSecure = $secure;
/////////CONFIGURAÇÃO DO SERVIDOR/////////
$mail->From = $From;
$mail->FromName = $FromName;
//$mail->addReplyTo($From,$FromName);//Responde ao remetente.
$a = array('site.digitaweb@gmail.com','sanfree10@gmail.com');
foreach ($a as $key => $email) {
$mail->ClearAllRecipients( );//A cada volta do laço remove os e-mails anteriores.
$mail->addAddress($email,'sandoval');//Aqui está o endereço de email e o nome de quem vai receber a mensagem.
$mail->isHTML(true); //Mensagem em html.
$mail->CharSet = 'utf-8'; //correção de acentuação.
$mail->wordwrap = 70; //Só até 70 caracteres e quebra linha.
$mail->Subject = 'Marketing Digital'; // Aqui é o assunto da mensagem.
$mail->Body = '<b>Estou testando o envio de email </b> do site <h2>site</h2>.'; // Aqui é o corpo da mensagem.
$mail->AltBody = 'Este email é um teste.';
//////////ENVIAR O EMAIL/////////////
$send = $mail->Send();
if ($send){
echo "E-mail enviado com sucesso!";
}else{
echo'Erro : '.$mail->ErrorInfo;
}
//////////ENVIAR O EMAIL/////////////
}//foreach
?>
DEU CERTO AQUI MUITO OBRIGADO.
$mail->ClearAllRecipients( )
Utilize a função nativa da biblioteca ClearAddresses()