我像这样保存我的数据
public function saveInvestors($id = 0)
{
$data = array ('id' => $id );
$data2 = array ('ref_id' => $data['id]);
if ($id == 0)
{
return [$this->db->insert('investor', $data), $this->db->insert('leveling', $data2)];
}
}
我对$data
id
是数据库上的自动增量,而id
$data2
不是我的问题,这是我无法在$data
上获取id
并在调平时插入它,但它总是返回 0
插入数据库后需要获取插入的 id:
$this->db->insert('investor', $data);
$new_id = $this->db->insert_id();
如文档中所示:https://codeigniter.com/user_guide/database/helpers.html
试试这个。
public function saveInvestors($id = 0)
{
$data = array('id' => $id);
if ($id == 0) {
$this->db->trans_begin();
$this->db->insert('investor', $data);
$id_investor = $this->db->insert_id();
$data2 = array('ref_id' => $id_investor);
$this->db->insert('leveling', $data2);
if ($this->db->trans_status() === TRUE) {
$this->db->trans_commit();
return TRUE;
} else {
$this->db->trans_rollback();
return FALSE;
}
}
}