7
respostas

SMTP connect() failed.

Estou tentando enviar o email mas não vai, aparece essa mensagem

SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
7 respostas

Olá Vinicius,

De qual servidor você está enviando o -email ? Se for de um servidor do google, por exemplo, de uma conta pessoal, algumas coisas podem impedir a conexão.

Nesse caso algumas configurações devem ser feitas na sua conta, como habilitar o envio a partir de aplicações. No caso de conta google pode ser feita aqui => https://www.google.com/settings/security/lesssecureapps

Dê uma olhada nessa dúvida que rolou aqui mesmo no forum (https://cursos.alura.com.br/forum/topico-smtp-connect-failed-28502), também pode ajudar.

Abraço

Você precisa entrar no gmail que está recebendo a mensagem e ativar a opção de Permitir aplicativos menos seguros, na configuração da conta.

Então pessoal, eu sabia que tinha que fazer isto, e já tinha feito, e mesmo assim essa mensagem ficou aparecendo

Opa Vinícius,

Você permitiu envio através da app e mesmo assim continua tendo problemas ? ..

Como ficou seu código ?

Coloque o seu código de envio de e-mail aqui no post, para nós lhe ajudarmos.

Estou com o mesmo problema... O código do envia-contato.php

<?php
session_start();
$nome=$_POST["nome"];
$email=$_POST["email"];
$mensagem=$_POST["mensagem"];

require_once("PHPMailerAutoload.php");

$mail= new PHPMailer();

$mail->isSMTP();
$mail->Host='smtp.gmail.com';
$mail->Port=587;
$mail->SMTPSecure='tls';
$mail->SMTPAuth=true;
$mail->Username="alura.php.e.mysql@gmail.com";
$mail->Password="123456";


$mail->setFrom("alura.php.e.mysql@gmail.com","Alura Curso PHP e MySQL");
$mail->addAddress("alura.php.e.mysql@gmail.com");
$mail->Subject="Email de contato da loja";

$mail->msgHTML("<html> de:{$nome}<br/> email:{$email}<br/>mensagem:{$mensagem}</html>");
$mail->AltBody="de:{$nome}\nemail:{$email}\nmensagem:{$mensagem}";


if($mail->send()){

    $_SESSION["sucess"]="Mensagem enviada com sucesso";
    header("Location:index.php");
} else {

    $_SESSION["danger"]="Erro ao enviar mensagem".$mail->ErrorInfo;
    header("Location:contato.php");    
}

die();

Cara, troca o e-mail... Você está usando André, e-mail alura.php.e.mysql@gmail.com e a senha 123456. Eu estava com o mesmo problema. Troquei e funcionou. Coloca um e-mail e senha seu do gmail.