Phpmailer não envia como corrigir?
É muito comum encontrar usuários com problemas de envio de e-mails utilizando o phpmailer, a descrição mais recorrente encontrada em fóruns é que o script estava funcionando normalmente e do nada parou de enviar e-mails.
Neste artigo você vai aprender como corrigir o código para que o envio seja realizado com sucesso.
Saiba como corrigir problemas de envio via phpmailer
Phpmailer Porta 25
Após o acordo de gerência da porta 25 pelos órgãos competentes, começaram a pipocar diversos casos de clientes com problemas no envio de mensagens utilizando formulários em seus web sites.
O grande causador de tudo isso é a falta de autenticação, que se faz necessária para que os provedores identifiquem de que usuário está partindo determinada mensagem.
Como era de se esperar formulários que utilizam a função phpmailer foram subitamente afetados por esta mudança.
Os provedores de hospedagem rapidamente iniciaram adequação alterando a porta SMTP de 25 para 587 que obrigatoriamente exige autenticação com usuário e senha.
Milhares de usuários foram afetados sobrecarregando o suporte técnico das empresas de hospedagem de sites, e simplesmente o circo começou a pegar fogo.
Correção do erro phpmailer
A correção do problema é muito simples basta que seja adicionado ao script linhas para autenticação.
Modelos podem ser encontrados na base de conhecimento da maioria das empresas de hospedagem de sites.
Vou linkar aqui o exemplo de um phpmailer utilizando SMTP para que vocês possam utilizar como modelo.
Conclusão
Espero que tenham percebido como uma questão tão simples pode tornar-se um monstro por falta de informação adequada.
Por isso é muito importante saber escolher corretamente sua empresa de hospedagem de sites.
Uma base de conhecimento sólida disponível é de extrema importância para quem deseja manter um nível aceitável de operação em seu web site.
Olá.
Costumo construir sites com um programa específico (https://www.wysiwygwebbuilder.com/) e já construí dezenas de sites, hospedados em diversos lugares (Locaweb, Specialist, DialHost, HostGator, Totalwork, GoDaddy…) em em todos os formulários de contato funcionam corretamente, mas não no UOLHost!! Só lá tenho problemas, os formulários de contato simplesmente não enviam as mensagens. Há alguma configuração específica, algum detalhe que seja só no UOL?
Luís, verifique se o formulário está de acordo com as especificações do provedor. Caso esteja tudo correto e o problema persista abra um chamado técnico, espero ter ajudado. Forte abraço.
Olá, como vai?
Tenho uma rotina que usa o phpmailer, a qual funcionava até segunda feira normalmente. Ela estava configurada corretamente, inclusive o corpo do email também estava completo. Mas hoje, sem modificação alguma, ela apresentou alguns erros:
ERRO: exception ‘phpmailerException’ with message ‘Message body empty’ in D:\xampp\htdocs\phpmail\class.phpmailer.php:831 Stack trace: #0 D:\xampp\htdocs\phpmail\class.phpmailer.php(798): PHPMailer->PreSend() #1 D:\xampp\htdocs\teste1.php(99): PHPMailer->Send() #2 {main}
Como proceder?
Desde já, Obrigada
Olá Verifique se no formulário a variável $mail na linha Body está com B maiúsculo, confira também se houve mudança da versão do PHP por parte do provedor de hospedagem, e caso persista solicite um modelo junto a equipe de suporte.