[英]how to retrieve last insert id in uuid codeigniter
i have a trouble when retrieve last insert id in codeigniter. 我在codeigniter中检索最后一个插入ID时遇到麻烦。 when i try to debug like var_dump();
当我尝试像var_dump()进行调试时; the output just send int(0)
输出只是发送int(0)
i use uuid as id with primary key. 我使用uuid作为主键的id。 this is the code:
这是代码:
$this->db->set('id_customer','uuid_short()',FALSE);
$query = $this->db->insert('customer',$data);
$id = $this->db->insert_id();
echo var_dump($id);
if($query)
{
$array = array(
'kode_trans' => 'uuid()',
'trans_date' => 'NOW()'
);
$this->db->set('id_customer','$id');
$this->db->set($array,'',FALSE);
$this->db->insert('transaction_header');
return $id;
}else{
return FALSE;
}
im newbie in ci. 我是ci的新手。 there is something wrong with my code?
我的代码有问题吗?
The "insert_id" function uses PHP's mysql_insert_id function, which returns " The ID generated for an AUTO_INCREMENT column by the previous query on success, 0 if the previous query does not generate an AUTO_INCREMENT value " “ insert_id”函数使用PHP的mysql_insert_id函数,该函数返回“ 成功时由上一个查询为AUTO_INCREMENT列生成的ID,如果前一个查询未生成AUTO_INCREMENT值则为0 ”
You could try it this way; 您可以这样尝试;
$id = uuid_short();
$data['id_customer'] = $id;
$query = $this->db->insert('customer', $data);
if ( $query )
{
$array = array(
'kode_trans' => 'uuid()',
'trans_date' => 'NOW()'
);
$query = $this->db->insert('transaction_header', $array);
return $id;
}
else
{
return false;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.