ajax不能用于php

时间:2017-12-23 13:02:21

标签: php jquery html ajax

我一直在尝试使用ajax将数据插入到我的数据库中,但它不起作用。所以我编写了一个代码来尝试对php文件进行基本调用,它也不起作用:

这是我的HTML代码:

 <form >
    <h4 class="header-title m-t-0 m-b-30">Cordonnées de facturation</h4>

    <div class="form-group">
        <label class="col-md-4 control-label">code facture</label>
        <div class="col-md-6">
            <input type="text" id="code_facture" class="code_facture form-control" placeholder="Ex : 008A00098">
        </div>
    </div>

    <div class="form-group">
        <label class="col-md-4 control-label">Numéro du dossier</label>
        <div class="col-md-6">
            <input type="text" id="code_dossier" class="code_dossier form-control" placeholder="Ex : 008A00098">
        </div>
    </div>

    <div class="form-group">
        <label class="col-md-4 control-label">TPS</label>
        <div class="col-md-6">
            <input type="text" id="tps" class="tps form-control" placeholder="Ex : 0">
        </div>
    </div>    


    <div class="form-group">
        <label class="col-md-4 control-label">TVQ</label>
        <div class="col-md-6">
            <input type="text" id="tvq" class="tvq form-control" placeholder="Ex : 0">
        </div>
    </div>  

    <div class="form-group">
        <label class="col-md-4 control-label">Référence</label>
        <div class="col-md-6">
            <input type="text" id="reference" class="reference form-control" placeholder="Ex : VAR R4055555">
        </div>
    </div>

    <div class="form-group">
        <label class="col-md-4 control-label">PNR</label>
        <div class="col-md-6">
            <input type="text" id="pnr" class="pnr form-control" placeholder="Ex : M15478LD265">
        </div>
    </div>

    <div class="form-group">
            <label class="col-md-4 control-label">Date de facturation</label>
            <div class="col-md-6">
            <input type="text" placeholder="12/12/2012" data-mask="99/99/9999" id="date_facturation" class="date_facturation form-control">
            <span class="font-13 text-muted">jj/mm/aaaa</span>
            </div>
        </div>
    <div class="form-group">
        <button type="submit" class="btn" id="addfacturebutton"> ajouter</button>    
    </div>

这是我的ajax脚本

 <script>
    $('#addfacturebutton').click(function(e){
    e.preventDefault();
    $.ajax({
        type: 'POST',
        url: 'insertFacture.php',
        data:{
            code_facture:$('input[id=code_facture').val(),
            code_dossier:$('input[id=code_dossier').val(),
            tps:$('input[id=tps').val(),
            tvq:$('input[id=tvq').val(),
            reference:$('input[id=reference').val(),
            pnr:$('input[id=pnr').val(),
            date_facturation:$('input[id=date_facturation').val(),

        },
        success:function(data){

        },
    });
});
</script>

所以在我的php文件中我试着写die('test');但插入数据库也不起作用。 它没有调用函数

这是我的php文件:

<?php

  include('functions.php');

   $data = $_POST['code_dossier'];

   die('works');

?>

3 个答案:

答案 0 :(得分:0)

您的代码无法确认js代码是否有效。

试试这个:

更改此行:

success:function(data){

}

为:

success:function(data){
    alert(data)
}

并更改每次出现:

').val()

]').val()

如果有警报,则js正在运行。我在php代码中看不到任何与数据库相关的内容。

答案 1 :(得分:0)

您是否尝试转储$_POST文件的insertFacture.php?好像你确实有错误的php文件名或functions.php

的错误

答案 2 :(得分:0)

要减少ajax中的代码行,您可以在表单标记上添加id属性,然后serialize()或使用FormData()

<form id='myFormTag'>

然后在ajax中,只需在FormData()

上拨打submit()即可
$('#myFormTag').submit(function(e){
e.preventDefault();
  $.ajax({
  data: new FormData(this),
  //other AJax Stuff

 success:function(data){
  alert(data)
 }

  });

});