如何在 CodeIgniter 中获取/返回最后插入的 id?

Posted

技术标签:

【中文标题】如何在 CodeIgniter 中获取/返回最后插入的 id?【英文标题】:How to get/return last inserted id in CodeIgniter? 【发布时间】:2017-09-20 13:13:38 【问题描述】:

我有疑问。我有 2 个表,名称是 'tbl_pendidikan' 和 'tbl_datapribadi'。我有模型,名字是 M_pascasarjana.php

function pendidikan($table,$data) 
  $this->db->select_max('id_pendaftar');
  $get_id = $this->db->get('tbl_datapribadi');
  $query = $this->db->insert($table,$data);

 //END FUNCTION//

这是我的控制器

foreach($_POST['user'] as $user) 
    $this->m_pascasarjana->pendidikan('tbl_pendidikan', $user);
  

我尝试从表 'tbl_datapribadi' 中获取最后一个 id。如何将最后一个 id 插入表 'tbl_pendidikan'?

【问题讨论】:

试试return $this->db->insert_id() 我在哪里写的??你能为我写信吗? CodeIgniter activerecord, retrieve last insert id?的可能重复 【参考方案1】:
function pendidikan($table,$data) 
    $last_row = $this->db->select('id_pendaftar')->order_by('id_pendaftar',"desc")->limit(1)->get('tbl_datapribadi')->row()->id_pendaftar;
    $data['column_name'] = $last_row;
    $query = $this->db->insert($table,$data);
    return $this->db->insert_id();
 

$last_row 将保存 tbl_datapribadi 表中的最后一个 id。 column_name 将是您最后插入的 id 的列名。

【讨论】:

@syaifulhusein 太好了.. 如果对您有帮助,您可以投票并接受我的回答.. :)

以上是关于如何在 CodeIgniter 中获取/返回最后插入的 id?的主要内容,如果未能解决你的问题,请参考以下文章

如何获取 Codeigniter 中模型之间事务中关系的最后一个 ID?

使用 PHP/CodeIgniter 在 MySQL 中获取最后执行的查询

codeigniter php 和 jquery - 如何从多个表中获取数据并通过 ajax 返回

在codeigniter中多次进入mysql时获取最后插入的'Id'

如何在 CodeIgniter 中获取活动记录插入的结果

CodeIgniter 在 JSON 响应中返回 HTML