Я вставляю значения как ниже из моей формы
<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;
Как вставить значения флажков во вторую таблицу в соответствии с идентификатором товара?
Я думаю, что вы можете использовать 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);
}
}
Или вы можете объединить оба метода в одном.
Не забудьте добавить обработчики ошибок для вставок.
Других решений пока нет …