2013-08-21 137 views
1

這將是一個問題的形式。發送jQuery和HTML到AJAX或PHP,然後發送到郵件

我的問題是如何將填好的複選框和估計的價格發送到我的電子郵件。我只是想複製整個表格併發送給我的郵件。

鏈接的形式,因爲它是現在:http://magnusaga.com/skjema/mailsend.php

的HTML:

<form id="ContactForm" action="/mail.php" > 

<p> <input type="checkbox" id="waterdm" name="waterdm" value="10" />Water Damage</p> 

    <p> <input type="checkbox" id="screendm" name="screendm" value="20" />Screen Damage</p> 

    <p> <input type="checkbox" id="Chargerdm" name="Chargerdm" value="30" />Charger Damage</p> 

    <p> <input type="checkbox" id="hdphdm" name="hdphdm" value="10" />Headphone Damage</p> 
<p>Calculated Price: 
    <input type="text" name="price" id="price" /> 
     <input type="text" name="days" id="greater" /> 

</p> 
    <input class="submit" value="send"/> 
     <div class="form_result"> </div> 
      <div class="day_result"> </div> 
</form> 

jquery的:

<script> 

$(document).ready(function() { 
    var $inputs = $('input[type="checkbox"]') 
    $inputs.on('change', function() { 
     var sum = 0; 
     $inputs.each(function() { 
      if(this.checked) 
       sum += parseInt(this.value); 
     }); 

       if(sum > 30) 
      $("#greater").val("3 days"); 
     $("#price").val(sum); 

    }); 



}); 

</script> 

我想我已經把它添加到PHP。

回答

0

我可以建議這個jquery插件。 Jquery Form

<script> 
    $(document).ready(function(){ 
      $('#submit').click(function(){ 
       var queryString = $('#myform').formSerialize(); 
       // the data could now be submitted using $.get, $.post, $.ajax, etc 
       $.ajax({ 
        type: "POST", 
        data: queryString, 
        success: function(data){ 
         alert('Message Sent'); 
        } 
       }); 
      }); 
    }); 
</script> 
<form id="form" action="" id="myform"> 
    <p> 
     <input type="checkbox" id="waterdm" name="waterdm" value="10" />Water Damage</p> 
    <p> 
     <input type="checkbox" id="screendm" name="screendm" value="20" />Screen Damage</p> 
    <p> 
     <input type="checkbox" id="Chargerdm" name="Chargerdm" value="30" />Charger Damage</p> 
    <p> 
     <input type="checkbox" id="hdphdm" name="hdphdm" value="10" />Headphone Damage</p> 
    <p>Calculated Price: 
     <input type="text" name="pris" id="price" /> 
    </p> 
    <p>Estimated days: 
     <input type="text" name="dager" id="greater" /> 
    </p> 
    <input type="submit" value="send" id="submit"/> 
    <div class="form_result"></div> 
    <div class="day_result"></div> 
</form> 

PHP代碼:

$message = ""; 
foreach($_POST as $k => $v){ 
    $v = strip_tags($v); 
    $message .= "<p>$k:$v</p>"; 
} 
0

有兩種方法得到這個郵寄給您:使用一個正常的形式,將其發送到服務器PHP運行時,它使用PHP到過程電子郵件文本,並使用PHP郵件()命令發送給您。

另一種方式更基本,您在HTML表單中將mailto:[email protected]設置爲動作,並將表單編碼設置爲「text/plain」,「application/x-www-form-urlencoded」或「multipart/form-data」取決於您的需求。然而,這需要用戶配置一個郵件程序並點擊以使郵件程序發送電子郵件。

第三種方式,使用jQuery.post將表單發送到服務器也是可能的,但包括可能不必要的額外處理。