2016-09-19 14 views
0

私のフォームが送信されていません。私のコードが表示され、エラーがあるかどうか確認できますか?フォームが送信されていません

HTML

<form id="contactForm" novalidate class="s-form wow zoomInUp" data-wow-delay="0.5s"> 
    <div class="s-relative"> 
     <select name="user-topic" id="user-topic" class="m-select"> 
      <option value="Not select">O que você precisa?</option> 
      <option value="Topic 1">Solicitar contato com o vendedor</option> 
      <option value="Topic 2">Agendar revisão</option> 
      <option value="Topic 3">Cotação de peças</option> 
      <option value="Topic 4">Crítica/Sugestão</option> 
     </select> 
     <span class="fa fa-caret-down"></span> 
    </div> 
    <input type="text" placeholder="NOME" value="" name="user-name" id="user-name" /> 
    <input type="text" placeholder="E-MAIL" value="" name="user-email" id="user-email" /> 
    <input type="text" placeholder="TELEFONE" value="" name="user-phone" id="user-phone" /> 
    <textarea id="user-message" name="user-message" placeholder="DEIXE SUA MENSAGEM"></textarea> 
    <button type="submit" class="btn m-btn">Enviar mensagem<span class="fa fa-angle-right"></span></button> 
</form> 

PHP:

<?php 
// Check for empty fields 
if(empty($_POST['name']) || empty($_POST['email']) || empty($_POST['message']) || !filter_var($_POST['email'],FILTER_VALIDATE_EMAIL)){ 
echo json_encode(array('error'=>'true')); 
return false; 
} 

$name = $_POST['name']; 
$email_address = $_POST['email']; 
$message = $_POST['message']; 

$lastname = $_POST['lastname']; 
$phone = $_POST['phone']; 
$subject = ($_POST['subject'] ? $_POST['subject'] : "Website Contact Form: $name"); 



// Create the email and send the message 
$to = '[email protected]';// Add your email address inbetween the '' replacing [email protected] - This is where the form will send a message to. 
$email_subject = $subject; 
$email_body = "You have received a new message from your website contact form.\n\n"."Here are the details:\n\nName: $name\n\nLast Name:  $lastname\n\nEmail: $email_address\n\nPhone: $phone\n\nMessage:\n$message"; 
$headers = "From: [email protected]\n"; // This is the email address the generated message will be from. We recommend using something like [email protected] 
$headers .= "Reply-To: $email_address"; 
mail($to,$email_subject,$email_body,$headers); 
echo json_encode(array('success'=>'true')); 
return true;    
?> 

Javascriptを:

$(function() { 
$("input,textarea").jqBootstrapValidation({ 
preventSubmit: true, 
submitError: function($form, event, errors) { 
    // additional error messages or events 
}, 
submitSuccess: function($form, event) { 
    event.preventDefault(); // prevent default submit behaviour 
    // get values from FORM 
    var topic = $("select#user-topic").val(); 
    var name = $("input#user-name").val(); 
    var email = $("input#user-email").val(); 
    var phone = $("input#user-phone").val(); 
    var message = $("textarea#user-message").val(); 
    var firstName = name; // For Success/Failure Message 
    // Check for white space in name for Success/Fail message 
    if (firstName.indexOf(' ') >= 0) { 
     firstName = name.split(' ').slice(0, -1).join(' '); 
    } 
    $.ajax({ 
     url: "../../mail/contact_me.php", 
     type: "POST", 
     dataType: 'json', 
     data: { 
      topic: topic, 
      name: name, 
      email: email, 
      phone: phone, 
      message: message 
     }, 
     cache: false, 
     success: function(data) { 
      if(data.error){ 
       // Fail message 
       $('#success').html("<div class='alert alert-danger'>"); 
       $('#success > .alert-danger').html("<button type='button' class='close' data-dismiss='alert' aria-hidden='true'>&times;").append("</button>"); 
       $('#success > .alert-danger').append("<span>Perdão " + firstName + ", parece que ocorreu uma falha no envio, tente novamente!</span>"); 
       $('#success > .alert-danger').append('</div>'); 
       //clear all fields 
       $('#contactForm').trigger("reset"); 
      } 
      else if(data.success){ 
       // Success message 
       $('#success').html("<div class='alert alert-success'>"); 
       $('#success > .alert-success').html("<button type='button' class='close' data-dismiss='alert' aria-hidden='true'>&times;").append("</button>"); 
       $('#success > .alert-success').append("<span>Sua mensagem foi enviada com sucesso </span>"); 
       $('#success > .alert-success').append('</div>'); 
       //clear all fields 
       $('#contactForm').trigger("reset"); 
      } 
     } 
    }) 
}, 
filter: function() { 
    return $(this).is(":visible"); 
}, 
}); 
}); 


/*When clicking on Full hide fail/success boxes */ 
$('#name').focus(function() { 
    $('#success').html(''); 
}); 

それはメッセージが表示され、成功に来る、フォームを送信する必要がありますが、彼は表示されません。私は別のプロバイダと別の私のサーバー上のサイトを入れて、それが正常に働いていた:

これはpage

NOTESです。それは顧客の提供者かもしれませんか?

+0

submitツールをクリックすると何が起きているのかを確認するには開発ツールのネットワークページをチェックしてください。 –

+0

開発ツールが送信されています。少なくとも私の理解ではそれがあります。 @ JaromandaX –

答えて

0

メールサーバーで設定されているFromヘッダーでメールが使用されていますか?

$headers = "From: [email protected]\n"; 

修正するのを忘れたようです。

+0

私はそれを試して、動作しませんでした –

関連する問題