O PHPMailer é uma popular classe PHP que envia e-mails autenticados através de um servidor SMTP. Confira nesse material:
- Etapa inicial: Requisitos
- Etapa final: Configuração do PHP Mailer na hospedagem
- Como verificar os erros do formulário PHPMailer?
Etapa inicial: Requisitos
1Valide os requisitos iniciais:
✓ Arquivo zipado com as classes do PHPMailer, disponível para download no Github
✓ Código do PHP Mailer:
- Este código é responsável por localizar e carregar as classes do PHPMailer. Substitua os valores pelos dados reais da conta a ser configurada:
<?php
require("/home/usuario/diretoriodeinstalação/PHPMailer-master/src/PHPMailer.php");
require("/home/usuario/diretoriodeinstalação/PHPMailer-master/src/SMTP.php");
$mail = new PHPMailer\PHPMailer\PHPMailer();
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for Gmail
$mail->Host = "servidor.hostgator.com.br";
$mail->Port = 465; // or 587
$mail->IsHTML(true);
$mail->Username = "origem@dominio.com.br";
$mail->Password = "insira a senha aqui";
$mail->SetFrom("origem@dominio.com.br");
$mail->Subject = "Assunto da mensagem";
$mail->Body = "Escreva o texto do email aqui";
$mail->AddAddress("destino@dominio.com.br");
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Mensagem enviada com sucesso";
}
?>
Etapa final: Configuração do PHP Mailer na hospedagem
1No cPanel, clique em Arquivos
- Depois clique em Gerenciador de arquivos
2Faça o upload do arquivo com as classes do PHPMailer para a pasta desejada
- Depois, descompacte o arquivo dentro da pasta
3Crie um arquivo com a extensão .php, de preferência na mesma pasta do arquivo com as classes do PHPMailer
4Insira o código do PHPMailer no arquivo criado
Como verificar os erros do formulário PHPMailer?
Para identificar os erros que um formulário pode apresentar, é possível ativar a linha DEBUG ao código do PHPMailer:
1No código do PHPMailer, abaixo da linha "$mail = new PHPMailer (true)" adicione as seguintes linhas:
$mail->SMTPDebug = 2;
$mail->Debugoutput = 'html';