Codeigniter insert_id 返回零,数据库已经是主数据库并自动递增
Codeigniter insert_id returning zero with database already primary and auto increment
我有一个使用标签的 Codeigniter 应用程序。我有一个添加新标签并将其插入数据库的代码,通过插入,我想获得要插入到关系 table 的标签的 insert_id。我对 table 结构没有问题。这是我的 table 结构:
标签table:
我的问题是这段代码,我不知道为什么它 returns 的 insert_id 为零,但是当我在数据库中查看时,它是从标签 table正确。
这是我的代码:
if (count($user_tags) > 0) {
foreach ($user_tags as $user_tag) {
$this->query->insert('tags', array('tag' => $user_tag));
$new_tag_id = $this->db->insert_id();
print_r($new_tag_id);
// $data = array(
// 'user_id' => $new_user_id,
// 'tag_id' => $new_tag_id
// );
// $this->query->insert('user_tags', $data);
}
}
尝试
$this->db->insert
而不是
$this->query->insert
if (count($user_tags) > 0) {
foreach ($user_tags as $user_tag) {
$this->db->insert('tags', array('tag' => $user_tag));
$new_tag_id = $this->db->insert_id();
print_r($new_tag_id);
}
}
我有一个使用标签的 Codeigniter 应用程序。我有一个添加新标签并将其插入数据库的代码,通过插入,我想获得要插入到关系 table 的标签的 insert_id。我对 table 结构没有问题。这是我的 table 结构:
标签table:
我的问题是这段代码,我不知道为什么它 returns 的 insert_id 为零,但是当我在数据库中查看时,它是从标签 table正确。
这是我的代码:
if (count($user_tags) > 0) {
foreach ($user_tags as $user_tag) {
$this->query->insert('tags', array('tag' => $user_tag));
$new_tag_id = $this->db->insert_id();
print_r($new_tag_id);
// $data = array(
// 'user_id' => $new_user_id,
// 'tag_id' => $new_tag_id
// );
// $this->query->insert('user_tags', $data);
}
}
尝试
$this->db->insert
而不是
$this->query->insert
if (count($user_tags) > 0) {
foreach ($user_tags as $user_tag) {
$this->db->insert('tags', array('tag' => $user_tag));
$new_tag_id = $this->db->insert_id();
print_r($new_tag_id);
}
}