发送Ajax发布请求并检索插入的id

时间:2016-11-25 05:47:52

标签: javascript php jquery mysql ajax

我正在尝试提交一个表单,该表单将数据插入到运行正常的mysql数据库中。然后我想返回新插入行的id(mysql表中的id自动增量),因为我想在提交表单后打开一个模态,所以我可以提供一个链接,其中包含id作为url中的参数。

要使用以下代码发送表单数据:

$(document).ready(function(){
$("#submitForm").click(function(){

var string = $('#commentForm').serialize();

// AJAX Code To Submit Form.
    $.ajax({
        type: "POST",
        url: "SubmitData.php",
        data: string,
        cache: false,
        success: function(result){
        //alert(result);
        }
    });
});
});

然后,SubmitData.php文件将表单数据插入数据库。

在SubmitData.php中,我可以创建一个变量来获取新插入的行的id,如
$last_id = mysqli_insert_id($conn);

有没有办法可以在同一个函数中从SubmitData.php文件返回$ last_id?

2 个答案:

答案 0 :(得分:4)

是使用以下echo从SubmitData.php返回id:

echo json_encode(['id'=>$last_id]);

JS:

$(document).ready(function(){
$("#submitForm").click(function(){

var string = $('#commentForm').serialize();

// AJAX Code To Submit Form.
    $.ajax({
        type: "POST",
        url: "SubmitData.php",
        data: string,
        cache: false,
        success: function(result){
          alert(result.id);//this will alert you the last_id

        }
    });

});

});

答案 1 :(得分:1)

在该php文件中打印最后一个id

echo $last_id;

在ajax成功函数中获取

success: function(result){
        alert(result);

}