在 insert_id() 处,获取 codeigniter 中的最后一个插入 ID extra 1 is coming with id

At insert_id() , get last insert id in codeigniter extra 1 is coming with id

当使用 insert_id() 接收最后一个自动递增插入 ID 时,每个 ID 都会附带额外的 1,当在 MODEL[= 执行 echo print($insert_id) 时39=] 在 CodeIgniter 中。

例如: 我在数据库列中的最后一个自动递增 ID 是 50 在执行 echo ($insert_id); 时显示 501 作为我的最后一个增量 ID。很奇怪。我无法找出额外 1 出现的问题。 任何建议,请帮助我。

我的另一个问题是收到Last Insert Id后,如何接收IDController文件 在 Codeigniter 来自 模态文件 .

模态

public function create($data = [])
{  
   $this->db->insert($this->table,$data);
   $insert_id = $this->db->insert_id();
   echo print_r($insert_id);exit;
    
   //return $insert_id ;
}

希望对您有所帮助:

注意 : 仅使用 echo 打印模型中的插入 ID;并在控制器中获取 id return $insert_id

你的模型应该是这样的:

public function create($data = [])
{   
   if (! empty($data))
   { 
     $this->db->insert($this->table,$data);
     $insert_id = $this->db->insert_id();
     return $insert_id;
   }
}

在你的控制器中:

注意确保您已经在自动加载或控制器中加载模型

public function method_name()
{
  $data = ['your insert data in array'];
  $id = $this->model_name->create($data);
  echo $id;//you will get the id;
}