在CodeIgniter中检索刚插入数据的主键

3

我刚用 CI 查询构建器将数据添加到 MySQL 中。现在我需要检索这些数据行的主键(Track Code)。我尝试同时使用插入和选择查询,但它并没有起作用。

模型:

public function complainReg($cName,$vName,$Email,$Contact,$date,$Complain,$ip)
        {
            $data = array(
                'cName' => $cName,
                'vName' => $vName,
                'Email' => $Email, 
                'Contact' => $Contact,
                'Date' => $date,
                'Complain' => $Complain,
                'ip' => $ip
                );
            $sql= $this->db->set($data)->get_compiled_insert('tbl_complain');
            $q=$this->db->query($sql);
            return $q;
        }

控制器:

public function index()
    {
        if (isset($_POST['btnRegister'])) 
        {
            $cName=$this->input->post('cName');
            $vName=$this->input->post('vName');
            $Email=$this->input->post('email');
            $Contact=$this->input->post('phone');
            $date=$this->input->post('Date');
            $Complain=$this->input->post('complain');
            $ip=file_get_contents("http://ipecho.net/plain");
            $this->HamroSamajModel->complainReg($cName,$vName,$Email,$Contact,$date,$Complain,$ip);
            $this->session->set_flashdata("message","Your complain has been registered sucessfully");
        }
        $this->load->view('Complain/index');
    }

主键意味着ID吗? - Abdulla Nilam
是的,我使用的ID来插入数据...在记录完数据后,我想将主键作为跟踪代码显示在页面上。 - Aryan
请查看下面的答案。 - Abdulla Nilam
1个回答

2
如果您需要最后插入的ID,请尝试以下方法:
public function complainReg($cName,$vName,$Email,$Contact,$date,$Complain,$ip)
{
    $data = array(
        'cName' => $cName,
        'vName' => $vName,
        'Email' => $Email, 
        'Contact' => $Contact,
        'Date' => $date,
        'Complain' => $Complain,
        'ip' => $ip
    );

    $this->db->insert('tbl_complain', $data);
    $lastID = $this->db->insert_id();
    return $lastID;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接