我在项目中创建了一个自定义表单,并为其创建了邮件功能。现在我想保存用户在数据库中发布的所有数据如何实现呢?
这是我的表格:
<form id="formMy">
<input name="txtFirstName" type="text" required placeholder="Name" id="txtFirstName">
<input name="PopupContact_email" type="email" required placeholder="E-Mail Address" id="requestemail">
<input name="txtOrganisationName" type="text" required placeholder="Company/ Institute Name" id="requestcompany">
<input type="hidden" name="hiddenform">
<button class="btn btn-primary btn-lg bbtn" data-toggle="modal" data-target="#myModal" style="display:none;">
Launch demo modal
</button>
<button type="button" class="btn btn-inverse" style="vertical-align:top;" name="submit" onClick="ajaxFormSubmit2();">Request a Demo</button>
</form>
这是我的ajax代码:
<script>
function ajaxFormSubmit2(){
var txtFirstName = jQuery('#txtFirstName').val();
var requestemail = jQuery('#requestemail').val();
var requestcompany = jQuery('#requestcompany').val();
var atpos=requestemail.indexOf("@");
var dotpos=requestemail.lastIndexOf(".");
if(txtFirstName=="" || requestemail=="" || requestcompany==""){
jQuery('.alertred').show();
jQuery(".alertred").delay(10000).hide(0);
jQuery('.alertred').html('<strong>Error!</strong> Please Fill out all the fields.');
return false;
}
else if (atpos<1 || dotpos<atpos+2 || dotpos+2>=requestemail.length)
{
jQuery('.alertred').show();
return false;
}
else
{
jQuery.post("<?php echo get_bloginfo('template_directory').'/mail2.php'; ?>",{txtFirstName:txtFirstName,requestemail:requestemail,requestcompany:requestcompany},function(r){
if(r=="success"){
jQuery('.success').show();
}
});
}
}
</script>
答案 0 :(得分:0)
您可以使用 formId_specifier.serialize()方法获取所有表单数据。你可以在你的php文件中找到这个,就像这个例子一样。
JS Code ::
$(document).on('submit', 'form#form_id',function(){
$.post(
MyAjax.ajax_url,{
action: AJAX_FILE_URL,
data: me.serialize()
}, function(response){
// Handle after getting response
}
);
});
在PHP代码中,您可以使用以下代码获取表单日期:
parsestr($_POST['data'], $form_data); // now all form data is assign to $form_data