PHP无法获取插入的最后一条记录的ID

麦迪兹

我正在尝试获取插入到phpMyAdmin表中的最后一条记录的ID,但到目前为止我只得到0。

我几乎尝试了所有方法(例如,此答案的解决方案:链接或此页面推荐的内容:link),但我无法使其正常运行。

我的表具有作为主键的列ID,并标记为AUTO_INCREMENT。

我使用一个函数查询来建立与数据库的连接,然后执行查询:

function query($sql) {
    $conn = mysqli_connect ( DB_HOST, DB_USER, DB_PASSWORD, DB_NAME );
    // Check connection
    if (mysqli_connect_errno ()) {
        echo 'connection failed: ' . mysqli_connect_error ();
    }
    // Check if the server is alive
    if (mysqli_ping ( $conn )) {
        // echo 'Connection is ok';
    } else {
        echo 'Error: ' . mysqli_error ( $dbc );
    }

    $sql = mysqli_query ( $conn, $sql );
    $last_id = mysqli_insert_id( $conn );
    $num_rows = mysqli_num_rows ( $sql );
    $result = mysqli_fetch_assoc ( $sql );

    return array (
            "num_rows" => $num_rows,
            "result" => $result,
            "sql" => $sql,
            "last_id" => $last_id
    );
    mysqli_close($conn);
}

然后,我从另一个调用第一个函数的位置执行查询:

function reg_shp_add($address_type, $company_name, $country, $state, $city, $zip, $street_name, $street_number, $tel){
    if($address_type=="residential"){
        $my_address_type = "r";
    }else{
        $my_address_type = "c";
    }
        $this->query ( "INSERT INTO `Addresses` (`company_name`, `street_address`, `address_two`, `zip_code`, `city_name`, `state_id`, `country_id`, `phone_number`, `res_comm_add`, `date_entered`) VALUES ('$company_name', '$street_name', '$street_number', '$zip', '$city', '$state', '$country', '$tel', '$my_address_type', CURRENT_TIMESTAMP)" );
        $address_id = $sql ['user_id'];
        $customer_id = $_COOKIE['userId'];
        $this->query ( "INSERT INTO `Cust_address_type` (`cust_id`, ` mail_address_id`, `address_type`) VALUES ('$customer_id', '$address_id', 'Shipping')" );
        return 'Address was saved.';

}

我首先尝试从我的reg_shp_add函数中检索最后一个ID,但我想它必须从第一个ID中完成。

有人可以帮我吗?

吉特里西斯

我测试了您的代码,并且函数mysqli_insert_id与我正常工作了[[“ last_id”] => int(8))但是问题出在您的第二个功能上,即数据检索上。

$this->query ( "INSERT INTO `Addresses` (`company_name`, `street_address`, `address_two`, `zip_code`, `city_name`, `state_id`, `country_id`, `phone_number`, `res_comm_add`, `date_entered`) VALUES ('$company_name', '$street_name', '$street_number', '$zip', '$city', '$state', '$country', '$tel', '$my_address_type', CURRENT_TIMESTAMP)" );
$address_id = $sql ['user_id'];

这里的$ sql变量是未定义的,您会想将返回值存储到$ sql中,就像这样:

$sql = $this->query ( "INSERT INTO `Addresses` (`company_name`, `street_address`, `address_two`, `zip_code`, `city_name`, `state_id`, `country_id`, `phone_number`, `res_comm_add`, `date_entered`) VALUES ('$company_name', '$street_name', '$street_number', '$zip', '$city', '$state', '$country', '$tel', '$my_address_type', CURRENT_TIMESTAMP)" );
$address_id = $sql ['user_id'];

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

插入跳过记录集中的最后一条记录

来自分类Dev

获取mysql表中的最后一条记录

来自分类Dev

在MySQL的下一条记录中插入最后一条记录字段

来自分类Dev

Linq查询以获取最后一条记录

来自分类Dev

Oracle SQL从有序数据集中获取第一条记录和最后一条记录

来自分类Dev

MySQL JOIN最后一条记录

来自分类Dev

如何获取日期中的第一条记录和最后一条记录

来自分类Dev

MySQL返回第一条和最后一条记录以获取连续相同的结果

来自分类Dev

SQL更新或插入基于找到的最后一条记录

来自分类Dev

为每个ID选择每月的最后一条记录

来自分类Dev

如何选择每个ID的最后一条记录

来自分类Dev

While循环仅插入最后一条记录

来自分类Dev

如何从sql server中获取最后一条记录?

来自分类Dev

Linq查询以获取最后一条记录

来自分类Dev

如何使用分组依据获取最后一条记录

来自分类Dev

如果该记录没有任何唯一ID,如何从列中获取最后一条记录?

来自分类Dev

读取文件的最后一条记录

来自分类Dev

获取MongoDB中第一条记录的ID

来自分类Dev

PHP json foreach仅返回最后一条记录

来自分类Dev

如何获取组之间的第一条记录和最后一条记录?

来自分类Dev

获取每个不同ID的最后一条记录

来自分类Dev

andorid-db查询以获取最后一条记录或组中的第一条(如果最后一条记录与先前的记录重复)

来自分类Dev

php Foreach循环仅提取最后一条记录

来自分类Dev

分区表并在谷歌大查询中获取第一条和最后一条记录

来自分类Dev

获取相关模型中的最后一条记录

来自分类Dev

查看每组的最后一条记录

来自分类Dev

MySQL查询获取最后一条记录然后加入

来自分类Dev

在mysql子查询中按日期获取第一条记录和最后一条记录的值

来自分类Dev

SQLite:如何获取最后一条记录?

Related 相关文章

  1. 1

    插入跳过记录集中的最后一条记录

  2. 2

    获取mysql表中的最后一条记录

  3. 3

    在MySQL的下一条记录中插入最后一条记录字段

  4. 4

    Linq查询以获取最后一条记录

  5. 5

    Oracle SQL从有序数据集中获取第一条记录和最后一条记录

  6. 6

    MySQL JOIN最后一条记录

  7. 7

    如何获取日期中的第一条记录和最后一条记录

  8. 8

    MySQL返回第一条和最后一条记录以获取连续相同的结果

  9. 9

    SQL更新或插入基于找到的最后一条记录

  10. 10

    为每个ID选择每月的最后一条记录

  11. 11

    如何选择每个ID的最后一条记录

  12. 12

    While循环仅插入最后一条记录

  13. 13

    如何从sql server中获取最后一条记录?

  14. 14

    Linq查询以获取最后一条记录

  15. 15

    如何使用分组依据获取最后一条记录

  16. 16

    如果该记录没有任何唯一ID,如何从列中获取最后一条记录?

  17. 17

    读取文件的最后一条记录

  18. 18

    获取MongoDB中第一条记录的ID

  19. 19

    PHP json foreach仅返回最后一条记录

  20. 20

    如何获取组之间的第一条记录和最后一条记录?

  21. 21

    获取每个不同ID的最后一条记录

  22. 22

    andorid-db查询以获取最后一条记录或组中的第一条(如果最后一条记录与先前的记录重复)

  23. 23

    php Foreach循环仅提取最后一条记录

  24. 24

    分区表并在谷歌大查询中获取第一条和最后一条记录

  25. 25

    获取相关模型中的最后一条记录

  26. 26

    查看每组的最后一条记录

  27. 27

    MySQL查询获取最后一条记录然后加入

  28. 28

    在mysql子查询中按日期获取第一条记录和最后一条记录的值

  29. 29

    SQLite:如何获取最后一条记录?

热门标签

归档