CodeIgniter 的 insert_id() 函数总是返回 1
CodeIgniter's insert_id() function is always returning 1
我有以下内容:
function insert_data($table=0,$data)
{
if($table !== 0)
{
if ($this->db->table_exists($table))
{
$this->db->insert($table,$data);
return $this->db->insert_id();
}
}
return 0;
}
我用
称呼它
...
$insert_info = array(
'event_id' =>$id,
'checklist_name'=>$_POST['event_name'].' Checklist',
'checklist_type'=>2,
'status' =>1,
'created_by' =>$this->session->userdata('superadmin_id'),
'created_date' =>date('Y-m-d H:i:s'),
'updated_by' =>$this->session->userdata('superadmin_id'),
'updated_date' =>date('Y-m-d H:i:s')
);
$new_checklist_id = $this->db->insert('checklist_event',$insert_info);
echo $new_checklist_id;
die();
...
但是,1 总是被回显。我可以确认 table 中有十几条记录,所以不确定为什么每次都返回 1。有什么建议吗?
这是table
的结构
However, 1 is always echo'd
你实际上回显了 Query Builder Class insert() function 的 return,这是对还是错。
使用这种方法:
$this->db->insert('checklist_event',$insert_info);
$new_checklist_id = $this->db->insert_id();
echo $new_checklist_id; die();
您似乎根本没有调用函数 insert_data($table=0,$data)
我有以下内容:
function insert_data($table=0,$data)
{
if($table !== 0)
{
if ($this->db->table_exists($table))
{
$this->db->insert($table,$data);
return $this->db->insert_id();
}
}
return 0;
}
我用
称呼它...
$insert_info = array(
'event_id' =>$id,
'checklist_name'=>$_POST['event_name'].' Checklist',
'checklist_type'=>2,
'status' =>1,
'created_by' =>$this->session->userdata('superadmin_id'),
'created_date' =>date('Y-m-d H:i:s'),
'updated_by' =>$this->session->userdata('superadmin_id'),
'updated_date' =>date('Y-m-d H:i:s')
);
$new_checklist_id = $this->db->insert('checklist_event',$insert_info);
echo $new_checklist_id;
die();
...
但是,1 总是被回显。我可以确认 table 中有十几条记录,所以不确定为什么每次都返回 1。有什么建议吗?
这是table
的结构However, 1 is always echo'd
你实际上回显了 Query Builder Class insert() function 的 return,这是对还是错。
使用这种方法:
$this->db->insert('checklist_event',$insert_info);
$new_checklist_id = $this->db->insert_id();
echo $new_checklist_id; die();
您似乎根本没有调用函数 insert_data($table=0,$data)