将AUTO_INCREMENT值分配给另一个字段

时间:2018-03-21 12:16:20

标签: php codeigniter

需要你的帮助。我有一个包含3列(id,name,filename)的表namefilename是一个字符串。 id字段为AUTO_INCREMENT,因此我无需将其发布到数组中。但问题出在filename字段上,该字段是idname与' - '分隔符的组合字符串。 我filename的预期结果是

+---+-------+-----------+
|id | Name  | Filename  |
+---+-------+-----------+
| 1 | James | 1-James   |
| 2 | John  | 2-John    |
| 3 | Clark | 3-Clark   |
+---+-------+-----------+

我的代码是:     

    $data = array(  
        'name' = $this->input->post('name');
        'filename' =$this->input->id->post('name');
    )

    $this->db->insert('dbname', $data)
?>

1 个答案:

答案 0 :(得分:2)

您需要先插入数据。然后获取最后一个插入的Id并使用它,您需要更新记录

$data = array(  
        'name' => $this->input->post('name');
        'filename' => $this->input->id->post('name');
    )

    $this->db->insert('dbname', $data);
    $last_id = $this->db->insert_id();
    $new_file_name = $last_id."-".$this->input->post('name');
    $update_data = array(
        'filename' => $new_file_name;
      );
    $this->db->where('id',$last_id);
    $this->db->update('dbname', $update_data);