Как получить и вставить идентификатор CodeIgniter - PullRequest
1 голос
/ 07 октября 2019

Я сохраняю свои данные вот так

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)];
    }
}

my id on $data - автоматическое увеличение базы данных, в то время как id on $data2 - не моя проблема, вот почему я не смогполучить id на $data и вставить его при прокачке, но оно всегда возвращает 0

Ответы [ 2 ]

1 голос
/ 07 октября 2019

Вам необходимо получить вставленный идентификатор после вставки его в базу данных:

$this->db->insert('investor', $data);
$new_id = $this->db->insert_id();

Как видно из документации: https://codeigniter.com/user_guide/database/helpers.html

0 голосов
/ 07 октября 2019

Попробуйте это.

    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;
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...