我尝试保存一个form_multiselect但它不保存并且值不要选择。我希望你能帮助我。
编辑:它现在正在工作但只有一个选择。我不能选择更多作为一个选项。
我试试这个
视图
<div class="form-group">
<label class="col-sm-2 control-label" for="field-1"> Team</label>
<div class="col-sm-4">
<?= form_multiselect('teams_id[]', dd2menu('teams', array('teams_id' => 'title')), set_value('teams_id[]', $item->teams_id), 'class="form-control"') ?>
</div>
</div>
控制器
public function manage($id = NULL) {
$data = array();
if ($id) {
$this->{$this->model}->{$this->_primary_key} = $id;
$data['item'] = $this->{$this->model}->get();
if (!$data['item'])
show_404();
} else {
$data['item'] = new Std();
}
$this->load->library("form_validation");
$this->{$this->model}->custom_select = 'users.*, teams.title as teams';
$this->{$this->model}->joins = array( 'teams' => array('teams.teams_id = users.teams_id', 'inner'));
if ($this->form_validation->run() == FALSE)
$this->load->view($this->module . '/manage', $data);
else {
$this->users_model->teams_id = $this->input->post('teams_id');
$this->{$this->model}->save();
redirect('admin/' . $this->module);
}
}
模型
class Users_model extends CI_model
{
public $_table = 'users';
public $_primary_keys = array('user_id');
}
我无法找到错误,因为如果我选择了它就会起作用。但我可以选择更多作为一个选项。
答案 0 :(得分:0)
如果在NikuNi的其他代码中找到了修复程序。
现在它在数据库中保存1或1,2。
控制器
if( is_array( $this->input->post('teams_id') ) ) {
$this->{$this->model}->teams_id = join(",", $this->input->post('teams_id'));
} else {
$this->{$this->model}->teams_id = $this->input->post('teams_id');
}
$this->form_validation->set_rules('teams_id[]', 'teams_id', 'trim');