Ir para conteúdo

Arquivado

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

carlaborginha

Formulário de envio em PHP não envia emails hotmail, gmail etc.

Recommended Posts

Oi, pessoal. Tudo bem?

 

Tenho um formulário em PHP que funciona em 50% rs. O problema é que ele só envia os dados desde que o email do cliente não seja hotmail, gmail, etc. Não entendo muito de PHP.

Alguém poderia, por favor, me ajudar?

Segue o código que estou usando:

<?php
$action=$_REQUEST['action'];
if ($action=="")    /* display the contact form */
    {
    ?>
	
					
<form  action="" method="POST" enctype="multipart/form-data">				
 <input type="hidden" name="action" value="submit">
						
<div class="form-group">
<input type="text" name="name" class="form-control" required placeholder="Nome"/>
</div>
<div class="form-group">
<input type="text"name="email" class="form-control" required placeholder="E-mail"/>
                               
</div>
<div class="form-group">
							
<textarea name="message" id="message" required class="form-control" rows="8" placeholder="Escreva sua Mensagem"></textarea>
                               
</div>                        
<div class="form-group">
<input type="submit" value="Enviar" name="enviar" class="btn btn-submit"/>
                               
                            </div>
							
                        </form>
						
					
       <!-- Envio do formulario na própria página -->
						
<?php
} 
else                /* send the submitted data */
{
$name=$_REQUEST['name'];
$email=$_REQUEST['email'];
$message=$_REQUEST['message'];
if (($name=="")||($email=="")||($message==""))
{
echo "Todos os campos são obrigatórios por favor preencha <a href=\"\">o formulário</a> novamente.";
}
else{        
$from="From: $name<$email>\r\nReturn-path: $email";
$subject="Formulário de Contato do Site";
mail("contato@comanchearcoeflecha.com.br", $subject, $message, $from);
echo "E-mail enviado com sucesso!";
}
}  
?> 
						
		<!-- FIM FORM -->

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 ergosum
      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
    • 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>"; ?>
×

Informação importante

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