Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tiago Sousa

Problema com PHPMAILER

Recommended Posts

Boas malta,

tenho um sistema de newsletter para um cliente que tem funcionado bem até que começou a surgir um problema.

Uso a class Phpmailer para enviar os emails, uso autenticação SMTP e funcionou sempre correctamente. Envio por pacotes de 60 emails mas ultimamente surge este problema quando já vai a meio do envio da newsletter:

 

"Mailer Error: SMTP Error: Could not connect to SMTP host.Mailer Error: The following From address failed: newsletter@euroticketman.comMailer Error: SMTP Error: The following recipients failed: mail@sanghitravels.com, globe@globeforex.com, easterntravels@yahoo.co.in etc etc etc..."

 

Ando farto de procurar no google e todos dizem que será problema de ligação ao host obviamente, mas este problema só surge a meio, e muitas das vezes nem surge!

 

O código que uso para enviar é o seguinte:

<?php 
$mail  = new PHPMailer(); // defaults to using php "mail()"

$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host	   = "mail.euroticketman.com"; // SMTP server
$mail->SMTPAuth = true; // 'true' para autenticação
$mail->Username = "newsletter@euroticketman.com"; // usuário de SMTP
$mail->Password = "********"; // senha de SMTP
$mail->From	   = "newsletter@euroticketman.com";
$mail->AddReplyTo('geral@euroticketman.com', 'Admin');
$mail->FromName   = "Newsletter EuroTicketMan";
$mail->Subject	= $assunto;
$completo = "<html>
<head>
<title>EuroTicketMan - Newsletter</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" />
</head>

<body>
teste
		</body>
</html>";
$mail->MsgHTML($completo);

for($i=0; $i < count($conjvalues); $i++){
	$envio++;
	$mail->AddBCC("$conjvalues[$i]", "");

	if ($envio == 60){	
	
		if(!$mail->Send()) {
			  echo "Mailer Error: " . $mail->ErrorInfo;
		} else {
		?>
		   <div style="width:800px; position:relative; margin-left:auto; margin-right:auto;">	
		   <?php 

		   echo "<br><img src=\"".COMPONENTS_IMGS."/tiraadmin.jpg\" width=\"190\" height=\"9\" border=\"0\" alt=\"\"><br><br>
		  <span style=\"font:arial;\"><b>Conjunto de Emails Enviado.</b><br>Por favor aguarde pelo proximo conjunto...</span>";
		  ?>
		</div>
		<?php 
		}
		
		flush();
		$envio = 0;
		 $mail->ClearAllRecipients();
		 $mail->AddAddress("geral@euroticketman.com", "All");
	
	}

}

Obrigado pela ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique se estes endereços existem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique se estes endereços existem.

Sim existem. A newsletter tem funcionado normalmente, sem qualquer problema. Mas nas ultimas semanas esse problema começou a surgir, mas não em todas as vezes que é enviada a newsletter. Ou seja, o cliente ainda ontem enviou e correu tudo normalmente, hoje já voltou a surgir esse problema, não quebra em nenhum email especifico nem nada do género. E no post só coloquei alguns emails de exemplo porque quando esse problema ocorre os restantes emails dão todos erro. Ex:

 

"SMTP Error: The following recipients failed: mail@sanghitravels.com, globe@globeforex.com, easterntravels@yahoo.co.in, kanpur@mayfair.co.in, .... (continua) Mailer Error: SMTP Error: The following recipients failed: travels@infotechs.lk, maet@mackinnonsamex.com, patrickhuang@perfect.com.tw ... (continua) "

 

Isto porque eu envio pacotes de 60 emails de cada vez...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem certeza que existem ? o dominio sanghitravels.com por exemplo nao respondeu no teste que acabei de fazer ... logo a mensagem nao podera ser entregue.

 

Traduzindo a mensagem de erro:

SMTP Error: The following recipients failed
Erro SMTP: os seguintes receptores falharam

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, muito provavelmente estão ai emails que não existem mas o problema não é esse, porque ele normalmente envia sempre e para além disso quando dá o principal erro: Mailer Error: SMTP Error: Could not connect to SMTP host. é quando começa falhar. Apartir daí todos os os emails falham e não enviados. Imaginemos que são 5 mil emais. Se isso ocorrer no email nº 100 ele dá "SMTP Error: The following recipients failed:" para os retsantes 4900. E esses 4900 emails não estão todos errados...

Já me disseram para mudar o host de mail.euroticketman.com para 127.0.0.1

Vou ver se isso resolve a situação

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso parece limite de emails que podem ser enviados. Você deve estar estourando o limite de emails por hora do seu provedor. Verifica essa possibilidade ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, esse tópico é de 2009, ou seja, tem 5 anos. Não espere que o Tiago Souza apareça te dando alguma resposta. Mete a cara no google, vai no stackoverflow, traduza os tópicos com problema parecido, leia também a documentação do PHPmailer, muitas vezes a solução está na documentação e ninguém se da conta de verificar. Vale a pena você remontar o seu código e verificar o que pode estar errado. O seu problema pode ser um erro de lógica, quem sabe?! :thumbsup:

 

Boa sorte

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.