php - 获取提交数据的 id 返回 NaN

标签 php javascript jquery ajax database

我试图检索用户输入的已提交数据的 ID,然后使用 jQuery/Ajax 显示它。这个想法是显示数据的链接或“报价”页面。 “您的报价已提交!单击[链接]转到该页面”链接将如下所示:http://example.com/quote-123 。 123 是报价的 ID。

这是我用来使用 ajax 和 jQuery 提交数据的部分。

$(document).delegate("'#submit-quote'", "submit", function(){
        var quoteVal = $(this).find('[name="quote"]').val();
        $.post("add.php", $(this).serialize(), function(data) {
            var like = $('.quote-wrap span iframe');
            $('.inner').prepend('<div class="quote-wrap group">' + like + '<div class="quote"><p>' + quoteVal+ '</p></div></div>');
            // console.log("success");
            var id = parseInt(data);
            alert(id);
        });
        return false;
    });

alert(id) 返回 NaN。

添加.php:

require('inc/connect.php');


    $quote = $_POST['quote'];
    $quotes = mysql_real_escape_string($quote);

    //echo $quotes . "Added to database";

    mysql_query("INSERT INTO entries (quote) VALUES('$quotes')")
    or die(mysql_error());
    echo mysql_insert_id($quote);

我是 JavaScript 和 PHP 新手,我真的很努力学习和理解它们。如何从提交的报价中获取 ID?

最佳答案

您的粘贴代码中的错误是:

Warning: mysql_insert_id() expects parameter 1 to be resource, string given in C:\wamp\www\virallikesproject\add.php on line 12

它期望的资源是 mysql_connect() 返回的链接标识符,我在您的代码中没有看到它。无论如何,mysql_insert_id()如果您不向其传递资源,则行为是使用最后打开的资源。

更改此行:

mysql_insert_id($quote);

对此:

mysql_insert_id();

应该处理该错误。就整体问题而言,我很担心,因为我根本看不到您在哪里连接到数据库。

关于php - 获取提交数据的 id 返回 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8866862/

相关文章:

php - 有了外键,如何打印出外键引用的主键列?

javascript - 位置固定 - 水平滚动

javascript - 为什么 Date#getHours() 返回小时 + 1?

javascript - 将两个 .height() 加在一起?查询

php - Uploadify-操作完成,但未进行上传

php - 错误 : You have an error in your SQL syntax; check the manual that corresponds to your MySQL

php - 如何编码单引号

javascript - 当轴标签映射为刻度域的一部分时,如何在 d3 中修改堆积条形图的轴标签

jquery - php jquery 动态谷歌广告

php - 如何交叉引用两个sql表然后在行存在时显示一列的输出?