Change php reply email

Asked

Viewed 811 times

1

I’m using the following code:

    if(isset($_POST['sendContato'])){
        $nome = strip_tags(filter_input(INPUT_POST,'nome'));            
        $telefone = strip_tags(filter_input(INPUT_POST,'telefone'));
        $email = strip_tags(filter_input(INPUT_POST,'email'));
        $mensagem = strip_tags(filter_input(INPUT_POST,'mensagem'));

        if(($nome == '') OR ($telefone == '') OR ($email == '') OR ($mensagem == '')){
            echo "<div class='false'>Por Favor, Preencha os Campos em branco!</div>";
        }elseif(!validaEmail($email)) {
            echo "<div class='false'>O e-mail inserido é invalido!</div>";
        }else{
            $date = date("d/m/Y");
            $horass = date('H:i:s');
            $nome_usermail="Nome do Site";
            $login_usermail="[email protected]";
            $senha_usermail="SENHA DO EMAIL";
            $subject_usermail="Contato do Site";    

            $to_reposta="[email protected]";   
            $to_mail[1]= $dEmailDestino['email'];
            $to_nome[1]="Administrador";  
            //$to_nome[2]="Nome..."; 

            require_once('dts/mail/class.phpmailer.php');

            $mail = new PHPMailer(); // INICIA A CLASSE PHPMAILER 
            $mail->IsSMTP(); //ESSA OPÇÃO HABILITA O ENVIO DE SMTP
            $mail->SMTPDebug = 1;
            $mail->Port = 587; // Indica a porta de conexão para a saída de e-mails

            $mail->Host = 'smtp.'.substr(strstr($login_usermail, '@'), 1); //SERVIDOR DE SMTP, USE smtp.SeuDominio.com OU smtp.hostsys.com.br
            $mail->SMTPAuth = true; //ATIVA O SMTP AUTENTICADO
            $mail->Username = "$login_usermail"; //EMAIL PARA SMTP AUTENTICADO (pode ser qualquer conta de email do seu domínio)
            $mail->Password = "$senha_usermail"; //SENHA DO EMAIL PARA SMTP AUTENTICADO 
            $mail->From = "$to_reposta"; //E-MAIL DO REMETENTE 
            $mail->FromName = "$nome_usermail"; //NOME DO REMETENTE

            for($i = 1; $i <= 1; $i++){
                $mail->AddAddress("$to_mail[$i]","$to_nome[$i]"); //E-MAIL DO DESINATÁRIO, NOME DO DESINATÁRIO --> AS VARIÁVEIS ALI PODEM FAZER REFERÊNCIA A DADOS VINDO DE $_GET OU $_POST, OU AINDA DO BANCO DE DADOS
            }

            /*
            for($i=1;$i<=count($to_mail);$i++){
                $mail->AddAddress("$to_mail[2]","$to_nome[$i]"); //E-MAIL DO DESINATÁRIO, NOME DO DESINATÁRIO --> AS VARIÁVEIS ALI PODEM FAZER REFERÊNCIA A DADOS VINDO DE $_GET OU $_POST, OU AINDA DO BANCO DE DADOS
            }
            */

            $mail->WordWrap = 50; // ATIVAR QUEBRA DE LINHA
            $mail->IsHTML(true); //ATIVA MENSAGEM NO FORMATO HTML
            $mail->Subject = "$subject_usermail"; //ASSUNTO DA MENSAGEM 
            $mail->Body = "
            Nome: $nome<br/>
            E-mail: $email<br/>
            Telefone: $telefone<br/>
            Mensagem: $mensagem<br/><br/>

            Data: $date - $horass
            "; //MENSAGEM NO FORMATO HTML, PODE SER TEXTO OU IMAGEM 

            // verifica se está tudo ok com oa parametros acima, se nao, avisa do erro. Se sim, envia. 

            if(!$mail->Send()){
                echo "<script>
                       alert('Os dados não podem ser enviados! Erro.: $mail->ErrorInfo'); 
                       location.href='".BASE."/contato'; 
                       </script>";
                //echo "Erro: " . $mail->ErrorInfo;
                //$status_contato=2;
            }else{  
                echo $_SESSION['return'] = '<div class="posiTivo">E-mail enviado com sucesso!</div>';                   
                header('Location: '.BASE.'/contato');
                //$status_contato=1;                    
            }


        }
    }

The problem is that the email: [email protected] is only to configure the php Mailer user and password!

I wanted to put another e-mail for reply, there: $to_reposta="[email protected]";

But if I change, give the following mistake:

SMTP -> ERROR: RCPT not accepted from server: 553 5.7.1 : Sender address Rejected: not owned by user [email protected] SMTP Error: The following Recipients failed: [email protected]

  • What kind of mistake?

  • SMTP -> ERROR: RCPT not accepted from server: 553 5.7.1 : Sender address Rejected: not owned by user [email protected] SMTP Error: The following Recipients failed: [email protected] ?

  • What if in the login_usermail and senha_usermail you put the credentials of the email you are trying to send?

  • Ai gives the error: SMTP Error: Could not connect to SMTP host !

  • Apparently this is a security restriction of your SMTP server, not accepting a "reply-to" address of different domain than the sending one.

  • Is there any way to enable this? It is a UOL hosting!

  • Ever tried to use $mail->AddReplyTo instead of trying to inform another email like from?

  • removing the: $mail->From = "$to_reposta"; ????? E by putting the: $mail->Addreplyto ?

  • @user3081, no. The method from is still necessary. Add another line with this statement. Check my answer on the question.

Show 4 more comments

1 answer

1

One option is to use the method addReplyTo class PHPMailer.

Implementation:

$mail->AddReplyTo = "$to_resposta";

Link to the Documentation.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.