Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Wellington09

[Resolvido] phpmailer não envia o e-mail

Recommended Posts

Alguem no forum que já tenha usado a classe phpmailer para envio de e-mails ?

Se alguem puder me ajudar .

Na hora que dou um submit para o envio de meus dados a tela fica em branco não aparece mensagem alguma.

Agora se eu tiro este comando

 

$phpmail->Port = 465;

aparece a seguinte mensagem

Não foi possível enviar a mensagem. Erro: SMTP Error: Could not connect to SMTP host.

 

Uso o WAMP5 Versão 2.0

e nele se encontra o PHP versão 5.2.6

e o Apache versão 2.2.8

 

<?php  
     require_once('phpmailer/class.phpmailer.php');    
     $erros = "";    
     if(empty($_POST['nome'])){
          $erros .= "O nome deve ser preenchido.";   
     }
     if(empty($_POST['email']) ){
          $erros .= "O E-mail deve ser preenchido.";
     }else{
          $email = $_POST['email'];    
          eregi("([\._0-9A-Za-z-]+)@([0-9A-Za-z-]+)(\.[0-9A-Za-z\.]+)",$email,$match);
          if(!isset($match)){              
                $erros .= "O e-mail informado é inválido.</p>";        
          }
     }
     if(empty($_POST['mensagem'])){         
          $erros .= "A mensagem deve ser preenchida.";  
     }
     if( empty($erros) ){ // verifica se a mensagens de erro          
           $phpmail = new PHPMailer(); // Instânciamos a classe PHPmailer para poder utiliza-la          
           $phpmail->IsSMTP(); // envia por SMTP         
           $phpmail->Host = "smtp.gmail.com"; // SMTP servers         
           $phpmail->Port = 465; // Porta SMTP do GMAIL           
           $phpmail->SMTPAuth = true; // Caso o servidor SMTP precise de autenticação          
           $phpmail->Username = "username@gmail.com"; // SMTP username         
           $phpmail->Password = "senha"; // SMTP password          
           $phpmail->IsHTML(true);         //$phpmail->Body // finimos que o e-mail será enviado em formato HTML             
           $phpmail->From = $_POST['email']; // E-mail do remetende enviado pelo method post           
           $phpmail->FromName = $_POST['nome']; // Nome do remetente enviado pelo method post          
           $phpmail->AddAddress("destinatario@gmail.com");// E-mail do destinatario/*         
           $phpmail->AddCC($endereco,$nome); // para enviar cópia de e-mail         
           $phpmail->AddBCC($endereco, $nome); // para enviar cópia de e-mail oculto   */         
           $phpmail->Subject = $assunto; // Assunto do remetende enviado pelo method post         
           $phpmail->Body .= "Nome: ".$_POST['nome'].""; // Nome formatado para visualização         
           $phpmail->Body .= "E-mail: ".$_POST['email']."";// E-mail formatado para visualização         
           $phpmail->Body .= "Telefone: ".$_POST['telefone'].""; // Telefone formatado para visualização         
           $phpmail->Body .= "Assunto: ".$_POST['assunto'].""; // Assunto formatado para visualização          
           $phpmail->Body .= "Mensagem: ".nl2br($_POST['mensagem']).""; // Mensagem formatado para visualização             
           // isto ----> nl2br() significa quebra de linhas em HTML          
           $send = $phpmail->Send(); // é onde nosso e-mail é enviado(ou não?)         
           if($send){              
                 echo "A Mensagem foi enviada com sucesso.";        
           }else{
                echo "Não foi possível enviar a mensagem. Erro: " .$phpmail->ErrorInfo;        
           }
     }else{
          echo $erros;  
     }
?>

lembrando que eu baixei a classe phpmailer e não alterei nada nela, esta tudo la na pasta.

 

Será que falta alguma configuração para que eu consiga fazer o envio para minha caixa de e-mail do gmail ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seu servidor de email está ligado ?

 

então Diego eu só tenho instalado na minha maquina oque eu postei a cima.

Eu não preciso de servidor de e-mail certo ? pois estou usando o smtp do gmail

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alguns pacotes, como por exemplo o XAMPP, vem com servidor de e-mail, ftp, php, mysql e apache.

O WAMP, não. Só vem com PHP, Mysql e Apache.

 

No XAMPP, vem o Mercury, que acredito que é capaz de resolver os seus problemas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

então eu vou instalar este XAMPP e depois eu volto aqui.

mas quando eu for colocar o site na web vou ter algum problema , pois desenvolvi no wamp e no windows .?

ou vai funcionar tudo do jeito q funciona na minha maquina?

Compartilhar este post


Link para o post
Compartilhar em outros sites

hum beleza eue stou esperando terminar de baixar aqui para q eu instale ele .

 

Então o WAMP não enviaria nunca o e-mail certo ?

 

E eu vi alguma coisa no google falando de configurar o php.ini , acabei de ver isto mas não alterei nada é preciso mesmo ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

acabei de instalar aqui o selecionei estas opções

SERVICE SECTION

 

Install Apache

// Mysql

// Filezilla

 

e quando terminou abriu uma janela aqui no canto do relogio

 

com um tal de SVC ativado do

Apache

Mysql

Filezilla

 

e o SVC do Mercury esta desativado .

este mercure que você falow seria o servidor de e-mail certo ?

então deixo ele ativado ?

agora eu tenho q achar a pasta aqui onde eu coloco meus projetos pois no wamp a pasta padrao é WWW.

e depois achar o phpmyadmin para colocar meus sql , mas isto eu faço depois o que eu preciso mesmo é enviar este e-mail

Compartilhar este post


Link para o post
Compartilhar em outros sites

Diego joguei minha classe phpmailer na pasta

 

C:\xampp\php\www\phpmailer

e como ue faço para acessar ela no localhost onde eu entro não estou achando a pasta phpmailer no localhosta

Compartilhar este post


Link para o post
Compartilhar em outros sites

C:\xampp\htdocs

é a pasta onde vão os documentos.

 

Para acessar, apenas digite no navegador:

http://localhost

 

e o PHPMyAdmin é:

http://localhost/phpmyadmin

 

O Mercury é o servidor de e-mail, então deixe-o ativo no painel de controle (do XAMPP) também, assim como o Apache e o MySQL.

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho q me expressei mau eu consigo acessar o localhost na url no meu navegador e consigo tb acessar o phpmyadmin oque eu quis dizer é q não consigo acessar o meu prejeto tipo.

 

http://localhost/phpmailer

 

como não achei a pasta no navegador como no wamp eu digitei na url assim http://localhost/phpmailer

e apareceu a seguinte mensagem

 

Objeto não encontrado!

 

A URL requisitada não foi encontrada neste servidor. Se você digitou o endereço (URL) manualmente, por favor verifique novamente a sintaxe do endereço.

 

Se você acredita ter encontrado um problema no servidor, por favor entre em contato com o webmaster.

Error 404

localhost

07/31/09 11:29:29

Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i PHP/5.2.9

Compartilhar este post


Link para o post
Compartilhar em outros sites

certo coloquei na pasta htdocs mas mesmo assim não consigo acessar meu projeto.

 

segue os seguintes menus no localhost.

 

XAMPP

 

Bem Vindo

Status

Segurança

Documentação

Componentes

phpinfo()

 

Demos

Coleção de CD

Biorítimo

Arte Instantânea

Arte Flash

Agenda de Telefones

Excel_Writer

ADOdb

 

Ferramentas

phpMyAdmin

Webalizer

Mercury Mail

FileZilla FTP

 

Specials

PHP PostScript

PHP Paradox

Compartilhar este post


Link para o post
Compartilhar em outros sites

fiz o teste do envio e acontece a mesma coisa q acontecia no WAMP demora para enviar e quando envia a tela fica branca.

 

 

lembrando que ...

 

XAMPP Status

 

Componente

Status

Sugestão

Banco de dados MySQL ATIVADO

PHP ATIVADO

HTTPS (SSL) ATIVADO

Common Gateway Interface (CGI) ATIVADO

Server Side Includes (SSI) ATIVADO

Serviço SMTP ATIVADO

Serviço FTP ATIVADO

Compartilhar este post


Link para o post
Compartilhar em outros sites

No menu Ferramentas

tem uma opção chamada Mercury Mail

 

fiz um teste por la tentando usar o pequeno formulario q tem e apareceu a seguinte mensagem

 

Esta mensagem ser agora enviada ...

(Requests allowed from localhost only)

 

 

 

Erro! A mensagem nor pode ser enviada!

 

isto tem alguma coisa a ver com o problema de meu envio ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.