|
![Picture of Waldir Liebmann Picture of Waldir Liebmann](/graphics/unknown.gif) Waldir Liebmann - 2007-09-26 12:14:29 - In reply to message 10 from Manuel Lemos
Thanks for the answer! I had realized that yesterday and fixed the problem. My bad. If you are kind to help me: Now I am trying to send a bulk mail and the mail does not reach its destination.
Melhor falar portguês, ja que voce é português, e eu brasileiro. :-)
Veja o codigo abaixo pf e se tiver alguma observação ...
Valeu.
$from_name = "NeuroTraumaBrasil";
$from_address = "contato@neurotraumabrasil.com.br";
$reply_address = "contato@neurotraumabrasil.com.br";
$reply_name = "reply";
$error_delivery_address="contato@neurotraumabrasil.com.br";
$error_delivery_name="NeuroTraumaBrasil";
$email_message=new sendmail_message_class;
$email_message->delivery_mode=SENDMAIL_DELIVERY_QUEUE; $email_message->bulk_mail_delivery_mode=SENDMAIL_DELIVERY_INTERACTIVE;
$email_message->SetBulkMail(1);
$subject=$assunto;
$email_message->SetEncodedEmailHeader("From",$from_address,$from_name);
$email_message->SetEncodedEmailHeader("Reply-To",$from_address,$from_name);
if(defined("PHP_OS")
&& strcmp(substr(PHP_OS,0,3),"WIN"))
$email_message->SetHeader("Return-Path",$error_delivery_address);
$email_message->SetEncodedEmailHeader("Errors-To",$error_delivery_address,$error_delivery_name);
$email_message->SetEncodedHeader("Subject",$subject);
$email_message->cache_body=1; //sem personalizacao de email
$html_message=$msgHTML;
$email_message->CreateQuotedPrintableHTMLPart($html_message,"",$html_part);
$text_message="Esta mensagem tem formato HTML, favor utilizar cliente que suporta formato Html.";
$email_message->CreateQuotedPrintableTextPart($email_message->WrapText($text_message),"",$text_part);
$alternative_parts=array(
$text_part,
$html_part
);
$email_message->AddAlternativeMultipart($alternative_parts);
for($recipient=0;$recipient<count($to);$recipient++)
{
$to_address=$to[$recipient]["address"];
$to_name=$to[$recipient]["name"];
$email_message->SetEncodedEmailHeader("To",$to_address,$to_name);
$error=$email_message->Send();
if(strlen($error))
break;
}
$email_message->SetBulkMail(0);
if(strlen($error))
return "Error: $error";
else
return "";
![Picture of Waldir Liebmann Picture of Waldir Liebmann](/graphics/unknown.gif) Waldir Liebmann - 2007-09-26 12:26:00 - In reply to message 11 from Waldir Liebmann
Na verdade eu ja testei o codigo acima com diversos valores para "$email_message->delivery_mode" e tb ja testei com e sem o $email_message->bulk_mail_delivery_mode. Não envia.
Eu ja consegui enviar email html usando a classe "email_message_class", sem bulk. Mas este com bulk usando sendmail, nao estah enviando. Curioso eh que cheguei a enviar com o bulk e depois parou de funcionar. A funcao retorna OK, sem erros.
Sds,
Waldir
![Picture of Waldir Liebmann Picture of Waldir Liebmann](/graphics/unknown.gif) Waldir Liebmann - 2007-09-26 13:08:54 - In reply to message 12 from Waldir Liebmann
Manuel, quando eu uso a classe sendmail_message_class a mensagem nao eh enviada. Quando eu troco para usar a email_message_class a mensagem eh enviada, mesmo usando bulk e html. Mas com a sendmail nada. Como quero enviar emails para umas 1500 pessoas, queria utilizar a questao da fila de envio SENDMAIL_DELIVERY_QUEUE. O que voce propoe? Grato.
Waldir
![Picture of Manuel Lemos Picture of Manuel Lemos](/picture/user/1.jpg) Manuel Lemos - 2007-09-27 01:26:37 - In reply to message 13 from Waldir Liebmann
Primeiro, precisa ter a certeza que o seu sistema usa mesmo o sendmail e não algo compatível como postfix, qmail ou exim. Se não for o sendmail, pode não funcionar.
Mesmo quando usa sendmail, quando o modo é SENDMAIL_DELIVERY_QUEUE, pode demorar meia hora ou mais até o sendmail começar a enviar nas mensagens.
Se mesmo assim, as mensagens não sairem, vá na shell e use o comando mailq para ver se as mensagens estão na fila e qual o erro que pode estar a dar .
|