Sender’s email is the default email in the form

Asked

Viewed 431 times

0

I would like the email and name of the person filling the form, appear as the sender in my email box, otherwise google groups the messages from the same sender.

$mail->Sender = "xxxxxx"; // Conta de email existente e ativa em seu domínio
$mail->From = "xxxxxxx"; // Sua conta de email que será remetente da mensagem
$mail->FromName = "Form do site"; // Nome da conta de email

My code is exactly like this:

<?php
// Adiciona o arquivo class.phpmailer.php - você deve especificar corretamente o caminho da pasta com o este arquivo.
require_once("phpmailer/PHPMailerAutoload.php");
// Inicia a classe PHPMailer
$mail = new PHPMailer();

// DEFINIÇÃO DOS DADOS DE AUTENTICAÇÃO - Você deve auterar conforme o seu domínio!
$mail->IsSMTP(); // Define que a mensagem será SMTP
$mail->Host = "smtp.xxx.com.br"; // Seu endereço de host SMTP
$mail->SMTPAuth = true; // Define que será utilizada a autenticação -  Mantenha o valor "true"
$mail->Port = 587; // Porta de comunicação SMTP - Mantenha o valor "587"
$mail->SMTPSecure = false; // Define se é utilizado SSL/TLS - Mantenha o valor "false"
$mail->SMTPAutoTLS = false; // Define se, por padrão, será utilizado TLS - Mantenha o valor "false"
$mail->Username = 'xxxx'; // Conta de email existente e ativa em seu domínio
$mail->Password = 'xxx'; // Senha da sua conta de email

// DADOS DO REMETENTE
$mail->Sender = "xxxxx"; // Conta de email existente e ativa em seu domínio
$mail->From = "xxxx"; // Sua conta de email que será remetente da mensagem
$mail->FromName = "Form do site"; // Nome da conta de email

// DADOS DO DESTINATÁRIO
$mail->AddAddress('[email protected]', 'Nome - Recebe1'); // Define qual conta de email receberá a mensagem
//$mail->AddAddress('[email protected]'); // Define qual conta de email receberá a mensagem
//$mail->AddCC('[email protected]'); // Define qual conta de email receberá uma cópia
//$mail->AddBCC('[email protected]'); // Define qual conta de email receberá uma cópia oculta

// Definição de HTML/codificação
$mail->IsHTML(true); // Define que o e-mail será enviado como HTML
$mail->CharSet = 'utf-8'; // Charset da mensagem (opcional)

// DEFINIÇÃO DA MENSAGEM
$mail->Subject  = "Formulário de Contato"; // Assunto da mensagem
$mail->Body .= " <strong>Atendimento:</strong> ".$_POST['atendimento']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Curso:</strong>        ".$_POST['curso']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Nome:</strong>             ".$_POST['nome']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Certificado:</strong>  ".$_POST['certificado']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>CPF:</strong>          ".$_POST['cpf']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>E-mail: </strong>      ".$_POST['email']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Celular:</strong>      ".$_POST['celular']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Outro telefone:</strong>" .$_POST['telefone']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Rua:</strong>          ".$_POST['rua']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Número:</strong>       ".$_POST['numero']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Complemento:</strong>  ".$_POST['complemento']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Bairro:</strong>       ".$_POST['bairro']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Cidade:</strong>       ".$_POST['cidade']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Estado:</strong>       ".$_POST['uf']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>CEP:</strong>          ".$_POST['cep']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Como nos conheceu?:</strong> ".$_POST['facebook'].", ".$_POST['instagram'].", ".$_POST['google'].", ".$_POST['outrasformas'].", ".$_POST['indicacao']."<br>"; // Texto da mensagem
$mail->Body .= " <strong>Termo:</strong> ".$_POST['termo']."<br>"; // Texto da mensagem
$mail->Body .= "
<BR><BR>
<strong>DADOS PARA O CONTRATO</strong>
<BR><BR>
".$_POST['nome'].", portadora do CPF: ".$_POST['cpf'].", reside no endereço; ".$_POST['rua'].", Nº: ".$_POST['numero'].", ".$_POST['complemento'].", ".$_POST['bairro'].", ".$_POST['cidade'].", ".$_POST['uf'].", CEP: ".$_POST['cep']."";


// ENVIO DO EMAIL
$enviado = $mail->Send();
// Limpa os destinatários e os anexos
$mail->ClearAllRecipients();

// Exibe uma mensagem de resultado do envio (sucesso/erro)
if ($enviado) {
  echo "E-mail enviado com sucesso!";
} else {
  echo "Não foi possível enviar o e-mail.";
  echo "<b>Detalhes do erro:</b> " . $mail->ErrorInfo;
}

2 answers

1

    //vindos do formulário
    $nome = $_POST['nome']; // Nome do remetente
    $remetente = $_POST['email']; // Email do remetente

Replace in SENDER DATA these two lines

  $mail->From = "xxxx"; // Sua conta de email que será remetente da mensagem
  mail->FromName = "Form do site"; // Nome da conta de email

For

    $mail->From = $remetente; // email
    $mail->FromName = $nome; // nome

0

It would be something like that:

<form action="enviar.php" method="post" >
  <label for="ipt-nome">Nome:</label>
  <input type="text" name="nome" id="ipt-nome">
  <label for="ipt-email">Email:</label>
  <input type="email" name="email" id="ipt-email">
  <button>Enviar</button>
</form>

Your php file to send the email:

   <?php
   $_aDados = $_POST;
   // Pega os valores do formulário enviado por POST e remove tags html
   $nome = strip_tags($_aDados['nome']);
   $email = strip_tags($_aDados['email']);

   if (empty($nome)){
     $aErro[] = "Campo Nome deve ser preenchido.";
   }

   if (empty($email)){
     $aErro[] = "Campo Email deve ser preenchido.";
   }
   // valida se o email informado é válido
   if (!filter_var($email, FILTER_VALIDATE_EMAIL)){
     $aErro[] = "Informe um email válido.";
   }

  if (!empty($aErro)) {
   // Mostra as mensagens de erro

 } else {
  // Enviar o email
  $destinatarioEmail = '[email protected]'; //email do destinatário
  $destinatarioNome = 'destinatário'; //nome do destinatário

  $oPHPMailer = new PHPMailer();
  $oPHPMailer->IsMail();
  $oPHPMailer->CharSet = 'utf-8';
  $oPHPMailer->IsHTML(true);
  $oPHPMailer->From = $nome;
  $oPHPMailer->FromName = $email;
  $oPHPMailer->AddAddress($destinatarioEmail, $destinatarioNome);
  $oPHPMailer->Subject = 'Formulário SITE';
  $oPHPMailer->Body = $sMensagemEmail;
  $oPHPMailer->Send();
}
  • couldn’t! :(

  • Didn’t get what? Managed to get the form data in your php file?

  • I posted the code in full below...

  • can help me?

  • Which error is returning?

Browser other questions tagged

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