将复选框值插入到具有指定字段的数据库

时间:2014-09-22 04:53:24

标签: php mysql codeigniter-2

我从我的表单中插入如下的值

<span class="field"><input type="text" name="item_name" id="item_name" class="input-small" value="<?php echo set_value('item_name'); ?>" />    

<span class="field"><input type="checkbox" name="tag_id[]" value="<?php echo $value['tag_id']; ?>" /></span>

第一个字段我想插入以下item_table

+----------+--------------+
| item_id  |   item_name  | 
+-------------+-----------+
| 1        | A            |
| 2        | B            |
| 3        | C            |
| 4        | D            |
| 5        | E            |
+----------+--------------+

对于第二个字段我想将复选框值插入到下表中。

+----------+--------------+
| item_id  |     tag_id  | 
+-------------+-----------+
| 1        | 1            |
| 1        | 2            |
| 2        | 1            |
| 2        | 2            |
| 2        | 3            |
+----------+--------------+

在我的模特函数中

$item_name = $this->input->post('item_name');

        $data_to_store = array(
            'item_name' => $item_name            
        );
        $insert = $this->db->insert('item_table', $data_to_store);
        return $insert;

如何根据Item id?

将复选框值插入第二个表?

1 个答案:

答案 0 :(得分:0)

我认为你可以使用2种方法。

function tableItem($data)
{
    $item_name = $this->input->post('item_name');

    $data_to_store = array(
        'item_name' => $item_name            
    );
    $this->db->insert('item_table', $data_to_store);
    $id = $this->db->insert_id();

    $this->tableTag($moreData,$id);
}

function tableTag($theData,$itemID)
{
    foreach($theData as $d)
    {
        $data_to_store = array(
            'tag_id' => $d,
            'item_id' => $itemID           
        );
        $this->db->insert('tag_table', $data_to_store);
    }
}

或者您可以将两种方法合二为一。

请记住为插入添加错误处理程序。