1
I am sending a newsletter to the emails I have registered in my bank. Sending is being done, but wrongly. Each contact receives a copy of another person’s email.
This is my code, connection values have been deleted:
<?php
require_once('../Connections/conexao.php');
// Inclui o arquivo class.phpmailer.php localizado na pasta phpmailer
include("../phpmailer/class.phpmailer.php");
mysql_select_db($database_conexao, $conexao);
$query_News = "SELECT * FROM `newsletter` WHERE status = 1 AND fora = 0 ORDER BY id ASC";
$News = mysql_query($query_News, $conexao) or die(mysql_error());
$row_News = mysql_fetch_assoc($News);
$totalRows_News = mysql_num_rows($News);
// Inicia a classe PHPMailer
$mail = new PHPMailer();
// $mail->SMTPDebug = 2;
// Define os dados do servidor e tipo de conexão
// ---------------------------------------------
$mail->IsSMTP(); // Define que a mensagem será SMTP
$mail->Host = "mail.meusite.com.br"; // Endereço do servidor SMTP
$mail->SMTPAuth = true; // Usa autenticação SMTP? (opcional)
$mail->Username = 'meuemail'; // Usuário do servidor SMTP
$mail->Password = 'minhasenha'; // Senha do servidor SMTP
$mail->Port = 587;
// Define o remetente
// ------------------
$mail->From = 'meuemail'; // Seu e-mail
$mail->FromName = "Newsletters - Móveis Sao Bento"; // Seu nome
// Loop para envio das mensagens
do {
$id = $row_News['id'];
$email = $row_News['email'];
// Define os destinatário(s)
// -------------------------
$mail->AddAddress($email,$nome); // Cliente
// Define os dados técnicos da Mensagem
// ------------------------------------
// Define e-mail´s que será(ão) enviado como HTML
$mail->IsHTML(true);
$mail->CharSet = 'iso-8859-1'; // Charset da mensagem (opcional)
// Define a mensagem (Texto e Assunto)
// -----------------------------------
$mail->Subject = "Newsletter"; // Assunto da mensagem
$mail->Body = "<div align=left>
<style type='text/css'>
<!--
.style1 {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
}
-->
</style>
<table width=600 border=0>
<tr>
<td width='18%' align='left'>
<div align='left'></div>
<div align='left'></div></td>
</tr>
<tr>
<td align='left'><p align='left' class='titulos'>
Assunto - Newsletter <br>
E-mail - $email <br />
</p>
<p align='center' class='titulos'>
Esse e-mail foi enviado automaticamete, não responda.<br />
<a href=unsubscribe.php?id=$id>Descadastrar de nossa Newsletter</a>
</p>
</td>
</tr>
</table>
</div>";
// Envia o e-mail
// ---------------
$status = $mail->Send();
} while ($row_News = mysql_fetch_assoc($News));
if ($status == 1) {
echo 'Os e-mails foram enviados corretamente ';
} else {
echo 'Os e-mails não puderam ser enviados, por favor, tente novamente';
}
// Limpa os destinatários e os anexos
// ----------------------------------
$mail->ClearAllRecipients();
$mail->ClearAttachments();
?>
This will then send a single email with all the addresses exposed, every turn of the
while
the first and the following will receive the emails. I believe the idea is to send an email per customer, just give aclearAddress
at the end loop.– rray
Hello @rray is exactly what is happening, the clearAddress would be out of the loop?
– adventistapr