Tenho um script para envio de newsletters, porém quando o executo ele multiplica os e-mail sendo enviado para cada usuário a mesma quantidade de registros na tabela, ou seja, se a tabela possui 10 registros, são enviadas 10 cópias para cada e-mail :blink:. Já tentei de várias formas diferentes. Agora peço a ajuda de vc's para solucionar esse problema.
Abaixo estou postando o código exatamente como está para verificação do possível erro:
Pergunta
Ed_MacGyver
Pessoal,
Tenho um script para envio de newsletters, porém quando o executo ele multiplica os e-mail sendo enviado para cada usuário a mesma quantidade de registros na tabela, ou seja, se a tabela possui 10 registros, são enviadas 10 cópias para cada e-mail :blink:. Já tentei de várias formas diferentes. Agora peço a ajuda de vc's para solucionar esse problema.
Abaixo estou postando o código exatamente como está para verificação do possível erro:
<?php session_start(); include "conexao.php"; include "mailer.php"; $txt_news = $_POST["txt_news"]; $txt_assunto = $_POST["txt_assunto"]; $mail->Subject = "$txt_assunto"; $mail->Body = "$txt_news"; $sql = mysql_query("SELECT * FROM news WHERE ativo = 'S'"); $total = mysql_num_rows($sql); $mailok = 0; $falha = 0; while($lista = mysql_fetch_array($sql)){ $email = $lista["email"]; $mail->AddAddress("$email","$email"); if($mail->Send()){ $mailok = $mailok + 1; $msg = "<font color=green>SUCESSO!</font>"; } else{ $falha = $falha + 1; $msg = "<font color=red>FALHA!</font>"; } ?> <font face='Arial' size='2'>Enviando para <b><?php echo $email?></b>... <b><?php echo $msg?></b></font><br> <?php } ?> <script>alert("<?php echo $total?> e-mails deveriam ser enviados...\n<?php echo $mailok?> foram mandados corretamente,\n<?php echo $falha?> falharam!\n")</script>O arquivo mailer.php possui o complemento do código para envio de e-mails através da classe PHPMailer:<?php require_once("PHPMailer_v5.1/class.phpmailer.php"); $mail = new PHPMailer(); $mail->IsSMTP(); $mail->Host = "smtp.dominio.com.br"; $mail->SMTPAuth = true; $mail->Username = "email@email.com.br"; $mail->Password = "senha"; $mail->From = "email@email.com.br"; $mail->FromName = "Meu Nome"; $mail->IsHTML(true); ?>Ajuda aê pessoal.
Editado por Ed_MacGyverLink para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.