如何在WordPress中以自定义形式保存用户数据库中的数据?

时间:2014-02-25 11:19:28

标签: database wordpress email

我在项目中创建了一个自定义表单,并为其创建了邮件功能。现在我想保存用户在数据库中发布的所有数据如何实现呢?

这是我的表格:

<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>&nbsp;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>

1 个答案:

答案 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