PHP Mailer - Enviando e-mail autenticado em Plataforma Windows

De Wiki Locaweb
Ir para: navegação, pesquisa

Atenção. Antes de realizar qualquer envio, por favor siga nossas recomendações, dessa forma evitará problemas ao enviar suas mensagens.


PHP Mailer


Caso o serviço de e-mail de seu domínio não esteja hospedado com a Locaweb, você pode fazer o envio das mensagens utilizando autenticação no servidor de e-mails de seu domínio . Neste artigo daremos um exemplo de como fazer o envio utilizando o PHPMailer .

O PHPMailer é uma classe pronta para envio de e-mails através do PHP via conexão SMTP ou POP3.

Primeiramente você precisa fazer o download da versão utilizada nesse exemplo: download


Descompacte os arquivos em sua hospedagem no diretório com o nome de phpmailer


Nota: Nesse tutorial iremos utilizar a versão 2.3 do PHPMailer. Nos servidores da locaweb está liberada apenas a porta 587 para o envio, caso esteja utilizando a porta 25 deverá alterar a mesma para 587

Exemplo Funcional


mailer.php

  • Inclui o arquivo class.phpmailer.php localizado na pasta phpmailer
require("phpmailer/class.phpmailer.php");


  • 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.seudominio.com.br"; // Endereço do servidor SMTP
$mail->SMTPAuth = true; // Autenticação
$mail->Username = 'e-mail@seudominio.com.br'; // Usuário do servidor SMTP
$mail->Password = 'sua senha'; // Senha da caixa postal utilizada


  • Define o remetente
$mail->From = "e-mail@seudominio.com.br"; 
$mail->FromName = "Nome do Remetente ";


  • Define os destinatário(s)
$mail->AddAddress('destinatario@dominio.com.br', 'Nome do Destinatário');
$mail->AddAddress('e-mail@destino2.com.br');
$mail->AddCC('copia@dominio.com.br', 'Copia'); 
$mail->AddBCC('CopiaOculta@dominio.com.br', 'Copia Oculta');


  • Define os dados técnicos da Mensagem
$mail->IsHTML(true); // Define que o e-mail será enviado como HTML
$mail->CharSet = 'iso-8859-1'; // Charset da mensagem (opcional)


  • Texto e Assunto
$mail->Subject  = "Mensagem Teste"; // Assunto da mensagem
$mail->Body = 'Este é o corpo da mensagem de teste, em HTML! 
<IMG src="http://seudominio.com.br/imagem.jpg" alt=5":)"   class="wp-smiley"> ';
$mail->AltBody = 'Este é o corpo da mensagem de teste, em Texto Plano! \r\n 
<IMG src="http://seudominio.com.br/imagem.jpg" alt=5":)"  class="wp-smiley"> ';


  • Anexos (opcional)
$mail->AddAttachment("e:\home\login\web\documento.pdf", "novo_nome.pdf");


  • Envio da Mensagem
$enviado = $mail->Send();


  • Limpa os destinatários e os anexos
$mail->ClearAllRecipients();
$mail->ClearAttachments();


  • Exibe uma mensagem de resultado
if ($enviado) {
echo "E-mail enviado com sucesso!";
} else {
echo "Não foi possível enviar o e-mail.
 
";
echo "Informações do erro: 
" . $mail->ErrorInfo;
}


Atenção: O código mencionado é somente um exemplo. Caso haja dúvidas quanto sua utilização, sugerimos que verifique juntamente a um desenvolvedor de sua confiança. Esse exemplo foi desenvolvido na versão 5.2 do PHP. Caso sua hospedagem esteja em um servidor windows 2008 será necessário alterar a versão do PHP para 5.2, por padrão a mesma vem na versão 5.3, para alterar: Hospedagem - Windows 2008 R2

Veja também


Ferramentas pessoais
Espaços nominais

Variantes
Ações
Navegação
Ferramentas
Criar um livro