2014-01-06 5 views
0

Я понятия не имею, как передать значения и вставить в базу данныхКак передать значения флажка в базу данных с помощью codeigniter?

Просмотр

<div class="form-group"> 
    <label class="col-sm-4 control-label">Type</label> 
    <div class="col-sm-4"> 
     <div class="checkbox"> 
     <?php echo form_checkbox('type[]', 'type1'); ?>Type 1 
     </div> 
     <div class="checkbox"> 
     <?php echo form_checkbox('type[]', 'type2'); ?>Type 2 
     </div> 
     <div class="checkbox"> 
     <?php echo form_checkbox('type[]', 'type3'); ?>Type 3 
     </div> 
    </div> 
</div> 

вид модели

$data = array(
     'type' => $this->input->post('type[]') 
     ); 

    $insert = $this->db->insert('parents', $data); 
    return $insert; 

Допустим, я проверил type1 и type2, я обнаружил, что только 0 вставляется в базу данных. Как это исправить?

+0

первую очередь, вы не должны использовать почтовые данные непосредственно в модели. Перед тем, как передать его в модель, вам необходимо подготовить данные в контроллере. –

+0

Вы получите несколько значений из типа. Как вы храните в db? в подзаголовке? –

+0

только в одном столбце – Barry

ответ

1

При хранении в качестве разделенных запятыми значения в одном столбце, а затем изменить код, как:

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

$data = array(

     'type' => implode(",", $type);  
); 

Но хранить в одном столбце не является хорошей практикой. Это просто временное решение. Вы должны хранить в отдельной таблице.

-1

Вид:

<input type="checkbox" class="checkbox" name="ward[]" value="MALE WARD">MALE WARD<br/> 
<input type="checkbox" class="checkbox" name="ward[]" value="FEMALE WARD">FEMALE WARD<br/> 
<input type="checkbox" class="checkbox" name="ward[]" value="CHILDREN WARD">CHILDREN WARD<br/> 

Контроллер:

$this->model_name->your_function();

Модель:

$variable = serialize($this->input->post('ward')); 
$data = array(
    'section' => $variable 
    ); 

$this->db->insert('table_name',$data); 
Смежные вопросы