2014-09-22 2 views
0

Я вставив значения, как показано ниже от моей формыВставьте флажки значения в базу данных с присвоенным полем

<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?

+0

Из чего я понимаю, вам просто нужно распечатать флажок для каждого 'tag_id' и присвоить им идентификатор в качестве значений. При отправке формы просто прочитайте отправленные значения. На мой взгляд, Multiple Select будет лучше. –

ответ

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); 
    } 
} 

Или вы можете комбинировать оба метода в одном.

Не забудьте добавить обработчики ошибок для вставок.

Смежные вопросы