
Como mandar um e-mail utilizando servidor de SMTP com autenticação pelo PHP.
Para enviar e-mails pelo PHP iremos utilizar das classes prontas que irão encurtar o nosso trabalho.
Clique nos link abaixo para baixar:
Descompacte o arquivo e cole as duas classes no diretório aonde está o arquivo PHP que irá enviar os e-mails.
Crie um arquivo PHP de teste no mesmo diretório aonde está as duas classes.
Logo no inicio do arquivo vamos utilizar a função “require_once” para incluirmos a classe “class.phpmailer.php”.
require_once("class.phpmailer.php"); Agora vamos configurar a nossa classe PHPMailer para utilização.
Primeiro você deve substituir os valores de teste nas variáveis abaixo com os dados reais do servidor SMTP que será utilizado.
$servidor_smtp = "smtp.teste.com.br"; $porta = "587"; $usuario = "teste@teste.com.br"; $senha = "123456";
Observação: Por padrão, normalmente a porta utilizada nos servidores de SMTP é a “587”
Agora vamos instanciar a classe PHPMailer.
$mail = new PHPMailer(); $mail->IsSMTP(); $mail->SMTPDebug = 1; $mail->SMTPAuth = true; $mail->SMTPSecure = 'tls'; $mail->Host = $servidor_smtp; $mail->Port = $porta; $mail->Username = $usuario; $mail->Password = $senha;
No código acima, além de passar os dados do SMTP utilizo as seguintes configurações
Ativo o SMTP no objeto
$mail->IsSMTP();
Modo “debug”, informe 1 para erros e mensagens ou número 2 para apenas mensagens
$mail->SMTPDebug = 1;
Informe que a autenticação será necessária no servidor de SMTP.
$mail->SMTPAuth = true;
Modo de segurança que será utilizado, podendo ser “tls” ou “ssl”.
$mail->SMTPSecure = "tls";
Substituí os valores da variáveis abaixo com os dados que você deseja enviar.
$de = "remetente@teste.com.br"; $de_nome = "nome remetente"; $assunto = "assunto de teste"; $corpo = "email de teste"; $para = "destinatario@teste.com.br"; $mail->SetFrom($de, $de_nome); $mail->Subject = $assunto; $mail->Body = $corpo; $mail->AddAddress($para);
Observações: Em alguns servidores de SMTP, por questões de segurança e anti-spam, o usuário utilizado na autenticação (email) deverá ser o mesmo utilizado no “de” da função “SetFrom()”.
Utilize o código abaixo para enviar o e-mail
if($mail->Send()) {
// enviado
} else {
// ocorreu um erro
} Você pode adicionar as validações no código acima.
Observação: no modo “debug” com o valor “2” as mensagens de erro serão incluídas diretamente no arquivo.
Caso os e-mails não estejam sendo enviados e nenhuma mensagem de erro está sendo exibida leve em consideração os seguintes pontos:
/* Configurações */$servidor_smtp = "smtp.teste.com.br";
$porta = "587";
$usuario = "teste@teste.com.br";
$senha = "123456";
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPDebug = 1;
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'tls';
$mail->Host = $servidor_smtp;
$mail->Port = $porta;
$mail->Username = $usuario;
$mail->Password = $senha;
/* Conteúdo e destinatario */$de = "remetente@teste.com.br";
$de_nome = "nome remetente";
$assunto = "assunto de teste";
$corpo = "email de teste";
$para = "destinatario@teste.com.br";
$mail->SetFrom($de, $de_nome);
$mail->Subject = $assunto;
$mail->Body = $corpo;
$mail->AddAddress($para);
if($mail->Send()) {
// email foi enviado
} else {
// ocorreu um erro
}
Módulo gratuito Roger_CnpjAlfanumerico que aplica máscara e validação do novo CNPJ alfanumérico no checkout e formulários do Magento 2 e…
A partir de 06/07/2026 a Receita passa a emitir CNPJ alfanumérico. Conheça o plugin grátis que aplica máscara e validação…
Para remover um módulo do Magento 2, siga os passos abaixo: 1. Desabilitar o módulo Primeiro, desabilite o módulo usando…
Para cancelar 100% do pedido e criar um crédito para todos os itens através da API REST do Magento 2,…
No Magento 2, a quantidade "reservada" na "Salable Quantity" é gerenciada principalmente pelos módulos MSI (Multi-Source Inventory). A "Salable Quantity"…
Como corrigir o erro ao acessar o Admin do Magento 2. Mesmo após fazer o login, permanece na tela de…