Ir para conteúdo
Fórum Script Brasil

mari_sanchesr

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Posts postados por mari_sanchesr

  1. Olá! estou tentando usar um script jQuery/Ajax pra carregar um formulário sem refresh da página e enviar os dados para o meu email, acontece que ao preencher o formulário e dar submit, retorna o erro de que o email digitado não é válido, mesmo você digitando o email corretamente.

    Alguém sabe o que pode estar acontecendo?

    Meu formulário:

    <form id="formulario" method="post" action="javascript:func()">
       <table cellpadding="0" cellspacing="5px">
        <tr>
         <td>
          <input type="text" name="nome" id="nome" placeholder="NOME" required />
         </td>
         <td>
          <input type="email" name="email" id="email" placeholder="E-MAIL" required />
         </td>
        </tr>
        <tr>
         <td colspan="2">
          <textarea name="mensagem" id="mensagem" rows="20" placeholder="MENSAGEM" required></textarea>
         </td>
        </tr>
        <tr>
         <td colspan="2">
          <input type="submit" id="enviar" value="ENVIAR" /> 
         </td>
        </tr>
       </table>                
      </form>

    O script que estou usando:

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
    <script type="text/javascript" language="javascript">
       $(function($) {
       $("#formulario").submit(function() {
         var nome = $("#nome").val();
         var email = $("#email").val();
         var mensagem = $("#mensagem").val();
         $("#statusform").html("<img src='img/ajax-loader.gif' alt='ENVIANDO' />");
         $.post('processa.php', {nome: nome, email: email, mensagem: mensagem}, function(resposta) {
             $("#statusform").slideDown();
             if (resposta != false) {
                $("#statusform").html(resposta);
             }
             else {
                $("#statusform").html("Sua mensagem foi enviada com sucesso. Peço que aguarde, em breve retornarei seu contato!");
                $("#nome").val("");
                $("#email").val("");
                $("#mensagem").val("");
             }
          });
       });
       });
    </script>


    *** #statusform é uma DIV que criei pra aparecer a resposta de confirmação de envio ou o erro de preenchimento. É onde estou recebendo o "Digite um e-mail válido!".

    E a página de processamento:

    <?php
    
    // Destinatário:
    $para = "meuemail@meudominio.com.br";
    // Assunto:
    $assunto = "Contato";
    // Data de Envio:
    $data_envio = date("d/m/Y h:i:s");
    
    // Dados do Formulário:
    $nome = $_POST["nome"];
    $email = $_POST["email"];
    $mensagem = "<strong>Contato:</strong> $nome ($email)<br />";
    $mensagem .= "<strong>Mensagem: </strong>".$_POST['mensagem']."<br /><br />";
    $mensagem .= "Enviado em $data_envio.";
    
    $headers = "MIME-Version: 1.1\r\n"; 
    $headers .= "Content-Type:text/html; charset=UTF-8\r\n";
    $headers .= "From: $para\r\n";
    $headers .= "Return-Path: $para\r\n";
    $headers .= "Reply-To: $email\r\n";
    
    if (empty($nome)) {
      echo "Você não digitou seu nome!";
      echo "nome:".$nome;
    } 
    elseif (!preg_match("^[a-zA-Z0-9\._-]+@[a-zA-Z0-9\._-]+.([a-zA-Z]{2,4})$", $email)) {
      echo "Digite um e-mail válido!";
      echo "email:".$email;
    } 
    elseif (empty($mensagem)) {
      echo "Você não digitou sua mensagem!";
      echo "msg:".$mensagem;
    }
    else {
      $envio = mail($para, $assunto, $mensagem, $headers);
      if($envio) {
        echo false;
      }
      else {
        echo "A mensagem não foi enviada. Tente novamente!";
      } 
    }
    
    ?>

    Obrigada! =)

×
×
  • Criar Novo...