PHPMailer no LocaWeb
Olá a todos,
mesmo seguindo os links de referencia da locaweb eu não consigo fazer meu smtp enviar os emails, quando ele executa a função ele dá o retorno que o email foi enviado, mas, nao recebo.
Já vi inumeros outras postagens aqui e na internet e nenhuma delas funcionou comigo.
#-----------------------------------------------------------------------------------------------------------------------#
[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25
; For Win32 only.
;sendmail_from = me@example.com
# ENVIA EMAIL
#-----------------------------------------------------------------------------------------------------------------------#
function envia_email($destinatario, $assunto, $texto_mensagem, $nome_remetente, $email_remetente)
{
/* Medida preventiva para evitar que outros dom�nios sejam remetente da sua mensagem. */
if (@eregi('tempsite.ws$|locaweb.com.br$|hospedagemdesites.ws$|websiteseguro.com$', $_SERVER[HTTP_HOST])) {
//$emailsender='contato@gordeixos.com.br'; // Substitua essa linha pelo seu e-mail@seudominio
$emailsender = $destinatario;
} else {
//$emailsender = "contato@" . $_SERVER[HTTP_HOST];
$emailsender = $destinatario;
// Na linha acima estamos for�ando que o remetente seja 'webmaster@seudominio',
// voc� pode alterar para que o remetente seja, por exemplo, 'contato@seudominio'.
}
//$emailsender= $email_remetente;
$emailsender = "noreply@" . str_replace('www.', '', $_SERVER[HTTP_HOST]);
/* Verifica qual � o sistema operacional do servidor para ajustar o cabe�alho de forma correta. N�o alterar */
if(PHP_OS == "Linux") $quebra_linha = "\n"; //Se for Linux
elseif(PHP_OS == "WINNT") $quebra_linha = "\r\n"; // Se for Windows
else die("Este script nao esta preparado para funcionar com o sistema operacional de seu servidor");
/* Montando o cabe�alho da mensagem */
$headers = "MIME-Version: 1.1".$quebra_linha;
#$headers .= "Content-type: text/html; charset=iso-8859-1".$quebra_linha;
$headers .= "Content-type: text/html; charset=utf-8".$quebra_linha;
// Perceba que a linha acima cont�m "text/html", sem essa linha, a mensagem n�o chegar� formatada.
$headers .= "From: ".$emailsender.$quebra_linha;
$headers .= "Cc: ".$comcopia.$quebra_linha;
$headers .= "Bcc: ".$comcopiaoculta.$quebra_linha;
$headers .= "Reply-To: ".$email_remetente.$quebra_linha;
// Note que o e-mail do remetente ser� usado no campo Reply-To (Responder Para)
/* Enviando a mensagem */
//Verificando qual � o MTA que est� instalado no servidor e efetuamos o ajuste colocando o paramentro -r caso seja Postfix
if(!mail($destinatario, $assunto, $texto_mensagem, $headers ,"-r".$email_remetente)){ // Se for Postfix
$headers .= "Return-Path: " . $email_remetente . $quebra_linha; // Se "n�o for Postfix"
mail($destinatario, $assunto, $texto_mensagem, $headers );
return true;
}
else
{
Util::envia_email_2($destinatario, $assunto, $texto_mensagem, $nome_remetente, $email_remetente);
}
}
#-----------------------------------------------------------------------------------------------------------------------#
# ENVIA EMAIL
#-----------------------------------------------------------------------------------------------------------------------#
function envia_email_2($destinatario, $assunto, $texto_mensagem, $nome_remetente, $email_remetente)
{
// Inicia a classe PHPMailer
$mail = new PHPMailer();
// Define os dados do servidor e tipo de conex�o
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->IsSMTP(); // Define que a mensagem ser� SMTP
$mail->Host = 'smtp.xxxxxx.com.br'; // Endere�o do servidor SMTP (caso queira utilizar a autentica��o, utilize o host smtp.seudom�nio.com.br)
$mail->Port = 587;
$mail->SMTPAuth = true; // Usar autentica��o SMTP (obrigat�rio para smtp.seudom�nio.com.br)
$mail->Username = 'xxxxxx.com.br'; // Usu�rio do servidor SMTP
$mail->Password = 'xxxxxxx'; // Senha do servidor SMTP
// Define o remetente
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# $mail->From = $destinatario; // Seu e-mail
$mail->Sender = $destinatario; // Seu e-mail
$mail->FromName = $nome_remetente; // Seu nome
// Define os destinat�rio(s)
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->AddAddress($destinatario, $assunto);
//$mail->AddAddress('e-mail@destino2.com.br');
//$mail->AddCC('ciclano@site.net', 'Ciclano'); // Copia
//$mail->AddBCC('fulano@dominio.com.br', 'Fulano da Silva'); // C�pia Oculta
// Define os dados t�cnicos da Mensagem
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->IsHTML(true); // Define que o e-mail ser� enviado como HTML
$mail->CharSet = 'UTF-8'; // Charset da mensagem (opcional)
// Define a mensagem (Texto e Assunto)
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->Subject = $assunto; // Assunto da mensagem
$mail->Body = $texto_mensagem;
$mail->AltBody = $texto_mensagem;
// Define os anexos (opcional)
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
//$mail->AddAttachment("/home/login/documento.pdf", "novo_nome.pdf"); // Insere um anexo
// Envia o e-mail
$enviado = $mail->Send();
// Limpa os destinat�rios e os anexos
$mail->ClearAllRecipients();
$mail->ClearAttachments();
// Exibe uma mensagem de resultado
if ($enviado)
{
return true;
//echo "E-mail enviado com sucesso!";
}
else
{
return false;
//return false;
echo "N�o foi poss�vel enviar o e-mail.
";
echo "Informa��es do erro:
" . $mail->ErrorInfo;
}
}Discussão (1)
Carregando comentários...