2016-09-16 2 views
0

내 문의 양식을 보내지 않았습니다. 누군가 내가 만든 실수를 볼 수 있을까요? 나는 메서드를 추가하려고 시도했다 "post", 그러나 또한 일하지 않았다.제출 PHP가 작동하지 않습니다

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 de um vendedor</option> 
      <option value="Topic 2">Agendar Revisão</option> 
      <option value="Topic 3">Cotação de Peças</option> 
       <option value="Topic 3">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" data-mask="(00) 0000-0000" /> 
<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> 

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;   
    ?> 

JS :

page
$(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>Sorry " + firstName + ", it seems that my mail server is not responding. Please try again!</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>Your message has been sent. </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(''); 
}); 

. 사이트가 하위 도메인에있을 수 있습니까?

+0

yor url "././mail/contact_me.php"에 문제가있는 것 같습니다.이 URL은 "/mail/contact_me.php"라는 유효한 URL이 아닙니다. – LkPark

+0

귀하의 브라우저? – stweb

+0

콘솔에 아무 것도 표시되지 않습니다. –

답변

0

if(empty($_POST['name'])을 작성했습니다. 유효성을 검사하려면 if(!empty)으로 확인하십시오.

관련 문제