繁体   English   中英

从php获取ajax调用的返回值

[英]get return value from php for ajax call

我试图从php中的数据库插入获取自动增量id回到我的javascript ajax调用:

我的ajax调用看起来像这样:

//get values
        var note = $('#note1').val();

        alert(userID);
        alert(beerID);


        var ajaxSettings = {
        type: "POST",
        url: "atn.php",
        data: {u:userID , b:beerID ,n:note},
        success: function(data){
            alert(data);


     } ,
        error: function(xhr, status, error) { alert("error: " + error); }

    };          

        $.ajax(ajaxSettings);

        return false;

我的php脚本看起来像这样:

<?php
error_log("starting code"); 
require_once('myConnectDB.inc.php');

        $u = $_POST['u'];
        $b = $_POST['b'];
        $n = $_POST['n'];

        //do some checks etc

        $db = new myConnectDB();


        $u = $db->real_escape_string($u);
        $n = $db->real_escape_string($n);
        $b = $db->real_escape_string($b);

        $query3 = "INSERT INTO tn (userID,beerID,note) VALUES ($u, '$b', '$n')";


        $result = $db->query($query3);

        $dbID = mysql_insert_id();

        echo $dbID;



?>

我试图发回的$ dbID在php脚本运行后没有收到警报。 我在警报中收到此错误:

<br />
<b>Warning</b>:  mysql_insert_id() [<a href='function.mysql-insert-id'>function.mysql-insert-id</a>]: A link to the server could not be established in <b>/home4/m133414/public_html/atn.php</b> on line <b>23</b><br /> 

替换以下行:

$dbID = mysql_insert_id();

对于这一个:

$dbID = $db->insert_id;

由于您在使用面向对象的版本时错误地使用了mysql_insert_id()的过程版本,因此为了保持一致,我们也在这里使用OOP版本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM