对不起我的英语不好,我来自阿根廷。
我在网上搜索了一些类似的主题但没有找到任何主题。 我正在创建一个Web应用程序,我使用FrontEnd的boostrap和BackEnd的codeigniter。我也使用自定义引导程序来选择"这是链接:http://silviomoreto.github.io/bootstrap-select/
在视图中我有这段代码:
<div class="form-group">
<?php echo form_label('Languages supported', 'lang'); ?>
<?php $options = array('Ingles' => 'Ingles','Español' => 'Español', 'Portugués' => 'Portugués', 'Ruso' => 'Ruso', 'Francés' => 'Francés', 'Alemán' => 'Alemán', 'Italiano' => 'Italiano'); $attribute ='class="selectpicker show-tick form-control" multiple title="Seleccione los lenguajes..."'; echo form_dropdown('lang', $options, 'title',$attribute); ?>
这在浏览器中如下所示: View image
为了验证我有这个代码:
$this->form_validation->set_rules('lang', 'Idiomas', 'trim|required|min_length[1]|max_length[50]|xss_clean');
但是在数据库中,只保存了一个值。例如:在上图中,用户选择了三个值(西班牙语,法语和Portuges),但在数据库中只选择了存储的第一个值(西班牙语) 如何使所有值保存在数据库中
答案 0 :(得分:1)
如果您要启用多项选择,则必须在[]
名称之后添加select
:
<div class="form-group">
<?php echo form_label('Languages supported', 'lang[]'); ?>
<?php $options = array('Ingles' => 'Ingles','Español' => 'Español', 'Portugués' => 'Portugués', 'Ruso' => 'Ruso', 'Francés' => 'Francés', 'Alemán' => 'Alemán', 'Italiano' => 'Italiano');
$attribute ='class="selectpicker show-tick form-control" multiple title="Seleccione los lenguajes..."';
echo form_dropdown('lang[]', $options, 'title',$attribute); ?>
在控制器中:
$langs = '';
foreach ($this->input->post('lang') as $lang) {
$langs .= "$lang, ";
}
$langs = rtrim ($lang, ", ");