Array
(
)

Erro ao enviar email utilizando PHPMailer

PHP
Wesley Jonas
   - 25 jul 2016

Quando eu tento executar esse código no navegador aparece a seguinte mensagem: SMTP connect() failed.
Por favor, me ajudem!!!
#Código
<?php
require_once "class/class.phpmailer.php";
require_once "class/class.smtp.php";
$Nome = strip_tags(trim(filter_input(INPUT_POST, 'nome')));
$Eil = strip_tags(trim(filter_input(INPUT_POST, 'email')));
$Assunto = strip_tags(trim(filter_input(INPUT_POST, 'assunto')));
$From = "teste@gmail.com";
$Email = new PHPMailer;
$Email->SetLanguage("br");
$Email->IsMail();
$Email->IsHTML(true);
$Email->IsSMTP(); // Define que a mensagem será SMTP
$Email->Host = "smtp.teste.com.br"; // Endereço do servidor SMTP, não altere esse campo.
$Email->SMTPAuth = true; // ativando a autenticação SMTP (obrigatório, não alterar)
$Email->Username = 'teste@teste.com.br'; // usuário de smtp Usuário do servidor SMTP (endereço de email), altere para suas informações.
$Email->Password = ''; // Senha do servidor SMTP (senha do email usado), altere para suas informações
$Email->Port = 587; //Porta de envio de SMTP (obrigatório, não alterar)
$Email->SMTPDebug = 2; // Debugar: 1 = erros e mensagens, 2 = mensagens apenas
$Email->SMTPAuth = true; // Autenticação ativada
$Email->SMTPSecure = 'ssl'; // SSL REQUERIDO pelo GMail
$Email->CharSet = 'UTF-8'; // Charset da mensagem
$Email->From = $From;
$Email->FromName = "WFPcomputer";
$Email->AddAddress($From, "Orcamento");
$Email->Subject = "Orcamento";
$Email->Subject = "Orcamento"; // Assunto da mensagem
$Email->Body .= "\r\n Nome: ".$Nome.""; // Texto da mensagem
$Email->Body .= "\r\n E-mail: ".$Eil.""; // Texto da mensagem
$Email->Body .= "\r\n Telefone: ".$Assunto.""; // Texto da mensagem

if ($Email->send()) {
echo "E-mail enviado com sucesso!";
} else {
echo "Não foi possível enviar o e-mail.";
}
/*echo "<pre>";
print_r($Email);*/
?>

William (devwilliam)
   - 25 jul 2016

Dá uma olhada nesse post, cito passos para liberação do smtp para o gmail.
Enviar e-mails localhost com PHP e PHPMailer

0
|
0

Wesley Jonas
   - 26 jul 2016

Olá, William,

Eu testei o código que está no post que você me indicou, configurei o apache, testei no servidor local e remoto e continua a mesma coisa. O que pode ser?

0
|
0

William (devwilliam)
   - 26 jul 2016

Você liberou na sua conta no gmail, como detalhei no post?

0
|
0

Douglas Noronha
   - 26 jul 2016

Coloque assim no else para saber qual o erro.
echo "E-mail não pode ser enviado: ".$mail->ErrorInfo;

0
|
0

Wesley Jonas
   - 26 jul 2016

WIlliam, ela já está liberada. E eu também testei com o ultramail e o erro continuou.

Douglas, o erro já está sendo exibido através desta linha: #Código $Email->SMTPDebug = 2; ;

0
|
0

Wesley Jonas
   - 26 jul 2016

Entrem nesse link e vejam que conseguem enviar o email: http://www.colegiomontesinai.com.br

0
|
0

William (devwilliam)
   - 26 jul 2016


Citação:
Entrem nesse link e vejam que conseguem enviar o email: http://www.colegiomontesinai.com.br


Acabei de baixar o demo do meu blog em outra máquina e fiz o teste com a minha conta do GMAIL, enviou normalmente.

0
|
0

Wesley Jonas
   - 26 jul 2016

William, você quer que eu coloque aqui o meu php.ini e o httpd.conf?

0
|
0

Douglas Noronha
   - 26 jul 2016

E qual o erro que está dando?

0
|
0

Wesley Jonas
   - 26 jul 2016

SMTP connect() failed.

0
|
0

William (devwilliam)
   - 26 jul 2016

Você está usando estas configurações?

Servidor SMTP: smtp.gmail.com
Porta: 465
SMTPSecure: ssl
Usuário: seu_email@gmail.com
Senha: sua_senha

0
|
0

Wesley Jonas
   - 26 jul 2016

Sim, olha as imagens:

http://www.colegiomontesinai.com.br/imagem01.png
http://www.colegiomontesinai.com.br/imagem02.png

0
|
0

Douglas Noronha
   - 26 jul 2016

Tente usar assim:

#Código
$mail = new PHPMailer();
$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->Port = 587;
$mail->SMTPSecure = 'tls';
$mail->SMTPAuth = true;
$mail->Username = "user";
$mail->Password = "senha";
$mail->setFrom("user@dominio.com.br");
$mail->Subject = 'Assunto';
$mail->addAddress('destino@dominio.com.br','usuario');
$mail->Body = $html;
if(!$mail->send()){
echo "E-mail não pode ser enviado: ".$mail->ErrorInfo;
}
else{
echo "E-mail de enviado";
}

0
|
0

Wesley Jonas
   - 26 jul 2016

Já consegui, pessoal. Obrogado!!

0
|
0

William (devwilliam)
   - 27 jul 2016

Wesley se possível compartilhe sua solução, outros podem passar pelo mesmo problema.

0
|
0