mysql_insert_id总是返回1,没有在数据库中添加任何行


mysql_insert_id always returns 1 , with no rows added in the DB

我正在使用以下代码:

    $sql = "insert into " . $mainDb .
    ".carrot_purchases_history(userid,pack_id,type,type_amount,carrots,coins,purchase_date,order_id)
    values(".$userid.",-66,".$type.",".$amount.",0,0,now(),".$order_id.")";
    $query = mysql_query($sql);
    $cph_id = mysql_insert_id();
    if ($cph_id < 1) {
        return -1;
    }
    return $cph_id;

cph_id总是返回1。这个表有一个自动增量。同样,表中不输入任何记录。当我在phpmyadmin中运行相同的查询时,它可以工作并输入记录。你知道我哪里做错了吗

EIDT:原来问题是我如何打印的东西。查询和其余部分正在工作。给您添麻烦了。

如果您的表已经为主键设置了自动递增功能,则可以从插入查询中省略idMySQL将自动插入