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

<tr><th>Option Subject</th>
 <th>
<input type="checkbox" name="skills" id="skills[]" value="C++"> C++<br>
<input type="checkbox" name="skills" id="skills[]" value="JAVA"> JAVA<br>
<input type="checkbox" name="skills" id="skills[]" value="HTML"> HTML<br>
<input type="checkbox" name="skills" id="skills[]" value="PHP"> PHP<br>
<input type="checkbox" name="skills" id="skills[]" value="ASP.NET">ASP.NET<br>
<font color="#FF0000"><?php echo form_error('skills');?></font>
 </th>
</tr>

открытая функцияконтроллера insert() { $skill =$this->form_validation->set_rules('skill', 'Option Subject','required');

$data = array(
    'skills' => implode(",", $skills);       
);
}



if(isset($options['skills'])) 
 $this->db->set('skills',($options['skills']));  
 $this->db->insert("regi_user");  
 return $this->db->insert_id();  

2 ответа

Вы должны конвертировать взорванное значение в строку.

Попробуйте следующий код

 $data = array(
        'skills' => json_encode(implode(",", $skills));       
    );

    $this->db->insert("regi_user");  
    return $this->db->insert_id();  

Чтобы добавить несколько значений в таблице, попробуйте следующий код.

$language = $this->input->post('skills');

if (is_array($language) && !empty($language))
{
    foreach($language as $lan)
    {
        $insert['language'] = $lan;
        $this->db->insert("table name");
    }
}
Другие вопросы по тегам