2015-05-03 47 views
1

我有應用程序,其中用戶可以從HTML selet選擇多個項目,這個選擇需要保存爲一個ID行,插入多個選擇值從HTML到MySQL數據庫

例:

time_id time_name values 

1   common  x,y,z 

下面是我的PHP控制器,

$time_data=array(
    'time_name'=>$this->input->post('time_name'), 
    'time_days'=>$this->input->post('time_days'), 
    'time_hours'=>$this->input->post('time_hours'), 
    'time_minutes'=>$this->input->post('time_minutes'), 
    'time_start'=> implode(",", $this->input->post('time_start')), 
    'time_end'=>implode(",", $this->input->post('time_end')), 
    'time_department'=>implode(",", $this->input->post('time_department')), 
    'time_timecategory'=>$this->input->post('time_timecategory'), 
    'time_searchwords'=>$this->input->post('time_searchwords'), 
    'timecreated_time' =>date("Y-m-d H:i:s") 
    ); 

//Add starts 
if($this->form_validation->run() !== FALSE) { 
    $result = $this->model_admin->updatetime($time_data); 

    if(!$result) { 
     $content = $this->model_admin->LastEntrytime(); 
     echo json_encode($content); 
    } 
} 
else { 
    echo json_encode(array('cival'=>0, 'val_message' => validation_errors())); 
} 

下面是我的HTML,其中用戶可以選擇從下拉菜單中的多個項目,

<div class="col-md-9"> 
    <select id="time_department" name="time_department[]" class="form-control select2" multiple> 
<?php 
    foreach($departments_array as $department) { ?> 
    <option value="<?php echo $department["department_id"];?>"><?php echo $department["department_name"]?></option> 
<?php 
    } ?> 
    </select> 
</div> 

有了這個我multiselected值存儲爲X,Y,Z或1,2,4等..

但我想創造出許多一對多的鏈接表中,我將存儲值x,y,z在每個不同的行,而不是逗號分隔值,

我怎麼可以在多個表中插入多個選定的值在MySQL中?

謝謝,

回答

0

不知道我是否理解你的問題。看看是否有幫助:

1)首先,創建一個新表來存儲將包含所選值的值。

2)該表的主鍵是什麼?它是time_id嗎?如果它沒有PK,則創建一個。

3)在剛剛創建的新表中,添加引用第一個現有表的主鍵的外鍵。也使該字段/列不爲空。

4)在剛創建的表格中根據需要添加多少行(根據選擇多少個值)。不要忘記使用FK將它們鏈接回第一個表格中的正確行。

這就是你想要達到的目標嗎?

+0

是幾乎相同,time_id是PK,使得更清楚,我需要創建一行time_id將是1,此行有time_name = test和time_values =好,壞,soso,blabla。或者可能像2,4,5,10這是其他表(FK)的ID,現在與2,4,5存儲不是好主意,所以我需要爲新表中的每個多選擇值創建行?其結構像1,好,2 - 1,壞,4 - 1,索索,5 - 1,blabla - 10這樣,而不是存儲爲逗號分隔,我會存儲在表中,如何做到這一點? – rjcode

+0

像這樣,http://stackoverflow.com/questions/4804841/mysql-storing-multiple-value-in-single-column-from-another-table,這在列中有ids,但將有FKs +字符串作爲好, – rjcode

相關問題