Colocar Resposta 
 
Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
resposta automatica com phpmailer
23-06-2016, 19:24
Mensagem: #1
resposta automatica com phpmailer
Boa tarde , a minha duvida é bastante simples de entender, contudo a solução não é assim tão facil de resolver,vamos lá:

criei uma pagina para enviar email com a classe PHPMAILER , com o objectivo de quando se envia um email, o remetente recebe uma resposta automatica....e é aqui que está a grande duvida!

Se usando esta classe, para evitar que os emailS caem na caixa de spam,usando para isso a autenticação smtp...o que resulta muito bem uma vez que definimos:

$mail->Password = 'senha do email'; // PASSWORD DA CONTA DE E-MAIL !
$mail->Username = 'email'; //EMAIL PARA ONDE VÃO SER ENVIADOS OS E-MAIL´S !

já na resposta automatica isso torna-se uma tarefa impossivel,pois no meu caso , no campo $_post['email'] , podemos captar o email para onde vai ser direcionada a resposta automatica....; mas no campo em que teremos de inserir a senha desse email já nao conseguimos inserir, pois nao sabemos a senha desse memo email, certo?

com a função mail() , funciona tudo bem , so que os email vao para o spam....

com este script, consegui de facto enviar email para onde queria , so que receber a resposta automatica já nao resulta, pois teria de saber a senha desse email:

$mail->Password = 'senha do email'; // PASSWORD DA CONTA DE E-MAIL !

    
    require_once('../phpmailer/class.phpmailer.php');
require_once('../phpmailer/class.smtp.php');


    $mail = new PHPMailer();



$mail->IsSMTP(); 
$mail->SMTPAuth = true; 
    $mail->Host = 'smtp.gmail.com'; 




$mail->Password = '******';  
$mail->Username = 'joaonunofz@gmail.com';

 
    $mail->FromName = "Site";
$mail->ADDReplyto($email); 


$mail->IsHTML(true);
    $mail->CharSet = 'utf-8'; 


$mail->AddAddress($email_ADMINISTRADOR); 
$mail->Subject = $assunto;
$mail->Body = $mensagem; 

   
    $mail->Send();// Envia o e-mail

$mail->ClearAllRecipients();

 
echo 'MENSAGEM ENVIADA'


//---------------------------RESPOSTA AUTOMATICA--------------------------------------------------------
    require_once('../phpmailer/class.phpmailer.php');// Inclui o arquivo class.phpmailer.php localizado na pasta phpmailer
require_once('../phpmailer/class.smtp.php');


    $mail = new PHPMailer();



$mail->IsSMTP(); 
$mail->SMTPAuth = true;
    $mail->Host = 'smtp.gmail.com'; 




$mail->Password = '????????'; <-OQUE PONHO AQUI???SENAO PUZER NADA NUNCA RECEBO A RESPOSTA AUTOMATICA... Sad 
$mail->Username = $email; //EMAIL PARA ONDE VÃO SER ENVIADOS OS E-MAIL´S VINDO DA VARIAVEL $EMAIL!

...  
   DAQUI PRA FRENTE SEI O CODIGO....
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
18-08-2016, 16:44
Mensagem: #2
RE: resposta automatica com phpmailer
Em meus projetos eu uso este padrão de código e sempre funcionou:


Código:
<?php

// Email Submit
// Note: filter_var() requires PHP >= 5.2.0

function escape($val){
    return strip_tags($val);
}

require_once('class.phpmailer.php');
require_once('class.smtp.php');

if ( isset($_POST['email']) && isset($_POST['nome']) && isset($_POST['fone']) && filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {

    $nome = isset($_POST['nome']) ? escape($_POST['nome']) : '';
    $email = isset($_POST['email']) ? escape($_POST['email']) : '';
    $fone = isset($_POST['fone']) ? escape($_POST['fone']) : '';
    $conteudo = isset($_POST['mensagem']) ? escape($_POST['mensagem']) : '';

        $message = "Nome: ".$nome."\r\n";
        $message .= "Email: ".$email."\r\n";
        $message .= "Fone: ".$fone."\r\n\r\n";
        $message .= "Mensagem: ".$conteudo."\r\n\r\n";    

    
        $mailer = new PHPMailer();
        $mailer->IsSMTP();
        $mailer->SMTPDebug = 1;
        //$mailer->isHTML();
        $mailer->Port = "587"; //Indica a porta de conexão para a saída de e-mails
        $mailer->SMTPSecure = "tls"; //(opção usada somente na plesk 11.5 - Linux)
        $mailer->Host = "smtp.dominio.com.br";
        $mailer->SMTPAuth = true; //define se haverá ou não autenticação no SMTP
        $mailer->Username = "sender@dominio.com.br"; //Informe o e-mai o completo
        $mailer->Password = "******"; //Senha da caixa postal
        $mailer->FromName = "Nome do remetente"; //Nome que será exibido para o destinatário
        $mailer->From = "sender@dominio.com.br"; //Obrigatório ser a mesma caixa postal indicada em "username"
        $mailer->AddAddress("contato@dominio.com.br"); //Destinatário 1
        $mailer->AddAddress("email@dominio.com.br"); //Destinatário 2
        $mailer->AddReplyTo($email);
        $mailer->AddCC("falecom@dominio.com.br");
        $mailer->Subject = 'Contato no Site - '.$nome;
        $mailer->CharSet = "UTF-8"; // Charset da mensagem (opcional)
        $mailer->Body = $message;
        //$mailer->AltBody = $message;
        
        //Se a mensagem anterior for enviada, a resposta automática é enviada através do código abaixo
        if($mailer->Send()){
        
            $message_2 = "Olá,\r\n\r\n";
            $message_2 .= "Recebemos seu contato no site e em breve responderemos sua mensagem.\r\n\r\n";
            $message_2 .= "Atenciosamente,\r\n\r\n";    
            $message_2 .= "---------------------------------------------------------------\r\n";
            $message_2 .= "Mensagem enviada através do site http://dominio.com.br/\r\n";    
        
            $mailer_2 = new PHPMailer();
            $mailer_2->IsSMTP();
            $mailer_2->SMTPDebug = 1;
            //$mailer_2->isHTML();
            $mailer_2->Port = "587"; //Indica a porta de conexão para a saída de e-mails
            $mailer_2->SMTPSecure = "tls"; //(opção usada somente na plesk 11.5 - Linux)
            $mailer_2->Host = "smtp.dominio.com.br";
            $mailer_2->SMTPAuth = true; //define se haverá ou não autenticação no SMTP
            $mailer_2->Username = "sender@dominio.com.br"; //Informe o e-mai o completo
            $mailer_2->Password = "******"; //Senha da caixa postal
            $mailer_2->FromName = "Nome do remetente"; //Nome que será exibido para o destinatário
            $mailer_2->From = "sender@dominio.com.br"; //Obrigatório ser a mesma caixa postal indicada em "username"
            $mailer_2->AddAddress($email); //Destinatários
            $mailer_2->Subject = 'Sua Mensagem foi recebida';
            $mailer_2->CharSet = "UTF-8"; // Charset da mensagem (opcional)
            $mailer_2->Body = $message_2;
            //$mailer_2->AltBody = $message_2;
            $mailer_2->Send();
        
        }
    
    }

?>
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
18-08-2016, 21:26
Mensagem: #3
RE: resposta automatica com phpmailer
Muito obrigado Smile
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
Colocar Resposta 


Saltar Fórum:


Utilizadores a ver este tópico: 1 Visitante(s)