Não é possível enviar e-mail através do Google SMTP com PHPMailer
Pergunta
Eu estou tentando enviar mensagens usando SMTP do Google em combinação com PHPMailer, mas não posso fazê-lo funcionar. Este é meu código:
$mail->IsSMTP();
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Username = "myemail@gmail.com";
$mail->Password = "**********";
$mail->Port = "465";
Em primeiro lugar eu não entender completamente o que deve ser preenchido como 'SMTPSecure', alguns dizem 'ssl
', outros dizem 'tls
'. Seguinte para 'Porta' eu pudesse entrar '465' ou '587'. Mas nenhuma das combinações funcionam ... Note que eu estou usando uma conta regular Gmail e não Google Apps. Na minha conta do Gmail Eu já habilitado 'acesso POP'.
O erro que eu recebo é: "Must issue a STARTTLS command first
". O que significa SSL falhou, mas não sei porquê ...
Solução
Ok, o problema era a versão do PHPMailer. I atualizado para PHPMailer versão 5 e tudo funcionou muito bem. Eu estava usando PHPMailer versão 1.02.
Outras dicas
Eu tive problemas semelhantes com GMail quando usá-lo através CodeIgniter
Para mim, alterando a opção anfitrião trabalhou:
$mail->Host = "ssl://smtp.googlemail.com";
Set $ ??mail-> SMTPDebug = 1; Ele lhe dará mais informações sobre este erro. Muito provavelmente você vai ter "Incapaz de encontrar o transporte socket 'SSL' - esqueceu-se para habilitá-lo quando você configurou PHP". Para corrigir esse Remover ";" de; linha php_openssl.dll extensão = no php.ini.
PS Eu também gosto XAMPP:)))
$ host = "ssl: //smtp.gmail.com"; $ Port = "465"
I mudou de SSL para SSL. Funciona.
De acordo com este post aqui, o Google não pode oferecer este serviço mais:
http://www.web-development-blog.com/archives/send-e-mail-messages-via-smtp-with-phpmailer-and-gmail/