这将是一个问题表单。
我的问题是如何将填写好的复选框和估计价格发送到我的电子邮件中。我只想把整个表格复印一份,然后寄到我的邮箱里。
链接到现在的表单: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中。
我可以推荐这个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>";
}
有两种方法可以将其邮寄给您:使用普通表单,将其发送到运行PHP的服务器,使用PHP将其处理为电子邮件文本,然后使用PHP mail()命令将其发送给您。
另一种方式更为基本,您可以将mailto:me@myself.com作为HTML表单中的操作,并根据需要将表单编码设置为"text/plain"、"application/x-www-form-urlencoded"或"multipart/form-data"。然而,Thsi要求用户配置了一个邮件程序,并点击以使邮件程序发送电子邮件。
第三种方法,使用jQuery.post将表单发送到服务器也是可能的,但包括可能不必要的额外处理。