Autor Tópico: PHPMailer não funciona no servidor (SMTP) [Resolvido]  (Lida 10886 vezes)

Offline cerebro

  • Usuário Ubuntu
  • *
  • Mensagens: 19
  • Liberdade!
    • Ver perfil
PHPMailer não funciona no servidor (SMTP) [Resolvido]
« Online: 03 de Agosto de 2012, 10:43 »
Pessoal estou tentando usar a classe PHPMailer em um sistema que estou fazendo, no meu computador (ubuntu 11.10, Apache2.2 e php 5.3) ele funcionou, porem quando fiz FTP dos arquivos para o servidor (onde o site ficara hospedado) e navego ate o script php que envia um email de teste (mesmo script do meu computador) ele apresenta o seguinte erro:SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
Erro de SMTP: Não foi possível conectar com o servidor SMTP.
Entre em contato com a empresa de hospedagem e me perguntaram quais configurações SMTP em precisava. E sinceramente eu não sei, alguém pode me ajudar? já teve esse problema? ou sabe que configurações SMTP são necessárias para enviar email (eu achei que fossem todas, afinal SMTP é para enviar mensagem é?)
« Última modificação: 03 de Agosto de 2012, 19:14 por cerebro »
By Cerebro Vasconcelos

Offline cerebro

  • Usuário Ubuntu
  • *
  • Mensagens: 19
  • Liberdade!
    • Ver perfil
Re: PHPMailer não funciona no servidor (SMTP)
« Resposta #1 Online: 03 de Agosto de 2012, 10:55 »
Aaaa...
o meu script é:
Código: [Selecionar]
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Email em php
        </title>
    </head>
    <body>
        <?php
        
#error_reporting(E_ALL); // Caso queira debugar eventuais erros
        #error_reporting(E_ALL && E_STRICT); // Caso queira debugar eventuais erros
        
date_default_timezone_set('America/Sao_Paulo'); // Acerta o horário
        
require_once('PHPMailer_v5.1/class.phpmailer.php'); 
        
$mail = new PHPMailer();
        
$mail->SetLanguage('br');
        
$mail->IsSMTP(); // Configura o objeto para usar SMTP
        
$mail->SMTPDebug 2// Debug do SMTP (para teste)
        // 1 = erros e mensagens
        // 2 = somente mensagens
        
$mail->SMTPAuth true// ativa a autenticação SMTP. O Gmail exige autenticação, preciso disso
        
$mail->SMTPSecure "ssl"// Configura o tipo de criptografia do SMTP do Gmail, no caso, SSL
        
$mail->Host "smtp.gmail.com"// Configura servidor SMTP do Gmail
        
$mail->Port 465// Configura porta do servidor SMTP do Gmail
        
$mail->Username "cerebro.vasconcelos@gmail.com"// Gmail remetente
        
$mail->Password "MINHA_SENHA"// Senha remetente
        
$mail->SetFrom('victor.jesus@gmail.com''Victor'); //não sei
        
$mail->AddReplyTo("cerebro.vasconcelos@somavirtual.com","VasconcelosSV"); // resposta
        
$mail->Subject "Envio de e-mail pelo php"// Assunto do e-mail
        
$mail->AltBody "Para visualizar a mensagem, por favor, use um cliente de e-mail compatível/configurado para ver mensagens HTML!"// Mensagem alternativa caso o destinatário. Veja o e-mail em um aplicativo sem suporte ou não configurado para ver mensagens HTML
        
$mail->MsgHTML("Se isto aparecer eh por que funcionou"); // conteúdo
        //$endereco = "cerebro.vasconcelos@yahoo.com.br";
        
$mail->AddAddress("cerebro.vasconcelos@yahoo.com.br""CerebroYahoo"); // destinatário
        
if(!$mail->Send()) 
        {
                echo 
"Erro: " $mail->ErrorInfo;
        }else 
        {
                echo 
"Mensagem Enviada!";
        }
        
?>

    </body>
</html>
funciona na minha máquina e não no servidor da web
By Cerebro Vasconcelos

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: PHPMailer não funciona no servidor (SMTP)
« Resposta #2 Online: 03 de Agosto de 2012, 13:46 »
"Connection timed out" significa que ele tentou, tentou... mas não conseguiu comunicação com o servidor. Pergunte se eles não estão bloqueando a porta.

Offline denisbr

  • Usuário Ubuntu
  • *
  • Mensagens: 8
    • Ver perfil
Re: PHPMailer não funciona no servidor (SMTP)
« Resposta #3 Online: 03 de Agosto de 2012, 14:25 »
Altera em
Código: [Selecionar]
$mail->SMTPDebug = 2; para
Código: [Selecionar]
$mail->SMTPDebug = 1;  para ter mais informações sobre a tentativa de envio do e-mail. Mas é como o irtigor o servidor não está conseguindo se comunicar com o servidor do google.

Offline cerebro

  • Usuário Ubuntu
  • *
  • Mensagens: 19
  • Liberdade!
    • Ver perfil
Re: PHPMailer não funciona no servidor (SMTP) [Resolvido]
« Resposta #4 Online: 03 de Agosto de 2012, 19:16 »
Bom gente eu fiz substituí a classe por uma própria da empresa de hospedagem e funcionou.
Obrigado pela ajuda.
By Cerebro Vasconcelos