Ir para conteúdo

POWERED BY:

Arquivado

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

ergosum

Problema em responder e-mail recebido via formulário de e-mail

Recommended Posts

Olá pessoal!

 

Estou desenvolvendo um site e nele há um formulário de contato para envio de e-mail em ".php". Ao testar o formulário, dá tudo certinho, o dono do site recebe o e-mail, mas quando ele responde o e-mail, a mensagem vai para ele mesmo e não para quem preencheu o formulário no site.

 

Como resolver isso, de modo que ao clicar em responder (no Outlook) o e-mail vá para quem preencheu o formulário?

 

O código que estou utilizando é esse:

 

<?php

function sendMail($para, $mensagem, $assunto)
{
    require_once('class/smtp/SMTP.php');
    require_once('class/smtp/MAIL.php');

    $m = new MAIL;


    $smtp      = "smtp.abcd***.com.br";
    $usuario = "contatoviasite@abcd***.com.br";
    $senha      = "123456";

    $m = new MAIL; // initialize MAIL class
    $m->From($usuario); // set from address
    $m->AddTo($para); // add to address
    $m->Subject($assunto); // set subject
    $m->Html($mensagem); // set text message

    // connect to MTA server 'smtp.hostname.net' port '25' with authentication: 'username'/'password'
    $c = $m->Connect($smtp, 25, $usuario, $senha) or die(print_r($m->Result));
    

    $m->Send($c);

if (!empty($_POST)){

    $assunto = "Mensagem enviada através do website";

    $mensagem = "<h1>Mensagem enviada atrav&eacute;s do website</h1>";
    
    foreach ($_POST as $key => $value) {
        $mensagem .= "<p><strong>$key:</strong> $value</p>";
    }

    //$mensagem .= "<hr>";
    //$mensagem .= "<p><strong>IP:</strong> " . $_SERVER['REMOTE_ADDR'] . "</p>";
    //$mensagem .= "<p><strong>Info do usu&aacute;rio:</strong> " . $_SERVER['HTTP_USER_AGENT'] . "</p>";

    $destinatario = 'contato@abcd***.com.br';

    // Envia o e-mail
    sendMail($destinatario, $mensagem, $assunto);

    // Redireciona o usuario para a mensagem
    header("Location: mensagem.html");

}

?>

 

Se puderem me ajudar, agradeço.

ergosum

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por andreamari81
      Olá, tenho um site em html e o envio do formulário foi feito em php. Porém, mesmo com os campos obrigatórios do formulário, eu recebo emails em branco. Quando perguntei pra hospedagem o que poderia ser, eles me responderam que quando acessam a página pelo navegador www.meusite.com.br/enviar.php ele envia o formulário em branco.
      Existe alguma maneira de bloquear o acesso a essa pagina enviar.php para que não receba mais emails em branco?
      Não sei se ficou claro, porque sou totalmente leiga em php.
      Obrigada
    • Por Bruniinhass
      tenho um formulario simples com nome/email/telefone e um botão radio 
       
      <label>Quantidade de Pessoas</label> <input type="radio" id="quantidade" name="valor" value="Valor1">Até 50 pessoas <input type="radio" id="quantidade" name="valor" value="Valor2">De 51 a 180 pessoas <input type="radio" id="quantidade" name="valor" value="Valor3">Acima de 181 pessoas nesse botão, quero q quando a pessoa enviar o formulario vá um texto formatado e um link ao invés de escrever "valor1" "valor2" "valor3"
      pensei numa função java script mas não sei fazer mt certo
      alguem tem uma solução?
    • Por Afrânio Costa
      Pessoal,
      Tenho um formulário onde o visitante do site pode indicar o site a um amigo.
      Ao enviar ocorrem 2 coisas:
      1) um deles é que no hotmail vai para spam e no outlook não chega. Só funciona no g-mail.
      2) O outro é que eu queria que a mensagem de sucesso aparecesse abaixo do formulário, mas está sendo exibida em um alert.
      Alguém pode me ajudar em ao menos uma dessas coisas? Não sou de php, por isso tive certa dificuldade.
      Obrigado!
    • Por pamdornas
      Pessoal eu não entendo muito de programação, e estou com problema no meu formulário de contato, ele envia a mensagem pro meu email mas quando chega, chega da seguinte forma:
      Nome:

      Email:

      Telefone:

      Assunto:

      Mensagem:
      Os dados não vem preenchidos mesmo quando preencho tudo.

      Ahh e a mensagem que deveria aparecer depois que preencho o formulário e clico em enviar, não está aparecendo

      O meu código é:

      <?php // Destinatário $para = "meuemail@meuemail.com.br"; // Assunto do e-mail $Assunto = "Contato do site"; // Campos do formulário de contato $nome = $_POST['nome']; $email = $_POST['email']; $telefone = $_POST['telefone']; $assunto = $_POST['assunto']; $mensagem = $_POST['mensagem']; // Monta o corpo da mensagem com os campos $corpo = "Nome: $nome Email: $email Telefone: $telefone Assunto: $assunto Mensagem: $mensagem"; // Cabeçalho do e-mail $headers = "Content-Type:text/html; charset=UTF-8\r\n"; $headers .= "From: SEUEMAIL@seudominio.com.br\r\n"; //Vai ser //mostrado que o email partiu deste email e seguido do nome $headers .= "Return-Path: SEUEMAIL@seudominio.com.br\r\n"; //caso a msg //seja respondida vai para este email. $headers .= "MIME-Version: 1.0\n"; mail($para, $assunto, $corpo, $header); $msg = "Sua mensagem foi enviada com sucesso."; // Mostra a mensagem acima e redireciona para index.html echo "<script>location.href=`index.html`; alert(`$msg`);</script>"; ?>
    • Por PauloLapienis
      Pessoal, não manjo muito de programação em php, por isso estou apanhando para fazer o envio de email pelo site funcionar.
      Estou usando/editando um template que baixei.
      A tela da Mensagem enviada com Sucesso, exibe beleza, mas o email não chega no destino.
      * Estou testando o envio direto no servidor de hospedagem.
      Abaixo os códigos para conferencia dos mais experts.

      - Código do Form

      <form id="contactform" action="contactform/contact.php" method="post" class="validateform" name="send-contact">
      <div id="sendmessage">A sua mensagem foi enviada com Sucesso!</div>
      <div id="errormessage"></div>
      <form action="" method="post" role="form" class="contactForm">
      <div class="form-group">
      <input type="text" name="name" class="form-control" id="name" placeholder="Seu Nome" data-rule="minlen:4" data-msg="Por favor, insira ao menos 4 caracteres" />
      <div class="validation"></div></div>
      <div class="form-group">
      <input type="email" class="form-control" name="email" id="email" placeholder="Seu Email" data-rule="email" data-msg="Por favor, digite um email válido" />
      <div class="validation"></div></div>
      <div class="form-group">
      <input type="text" class="form-control" name="subject" id="subject" placeholder="Assunto" data-rule="minlen:4" data-msg="Por favor, insira ao menos 8 caracteres" />
      <div class="validation"></div></div>
      <div class="form-group">
      <textarea class="form-control" name="message" rows="5" data-rule="required" data-msg="Please write something for us" placeholder="Sua mensagem"></textarea>
      <div class="validation"></div></div>
      <div class="text-center"><button type="submit" class="btn btn-theme">Enviar mensagem</button></div>
      </form>


      - Código do contact.php
      <?php

      include 'config.php';
      error_reporting (E_ALL ^ E_NOTICE);
      $post = (!empty($_POST)) ? true : false;
      if($post)
      {
      $name = stripslashes($_POST['name']);
      $email = trim($_POST['email']);
      $subject = stripslashes($_POST['subject']);
      $message = stripslashes($_POST['message']);

      $error = '';
      if(!$error)
      {
      $mail = mail(WEBMASTER_EMAIL, $subject, $message,
      "From: ".$name." <".$email.">\r\n"
      ."Reply-To: ".$email."\r\n"
      ."X-Mailer: PHP/" . phpversion());

      if($mail)
      {
      echo 'Mensagem enviada com Sucesso!';
      }
      }

      }
      ?>

      - Código do config.php
      <?php
      // To
      define("WEBMASTER_EMAIL", 'meuemail@meudominio.com.br');
      ?>

×

Informação importante

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