gpt4 book ai didi

php - CodeIgniter 显示多选而不是下拉

转载 作者:行者123 更新时间:2023-11-29 03:27:10 25 4
gpt4 key购买 nike

我正在从数据库中提取数据以填充下拉列表。我正在研究更新表中数据的功能。当用户单击更新时,它会将他们带到一个表单,其中填充了行中的数据,以便他们可以更新必要的信息。下拉框应具有所选表中的值。但是,当我加载页面时,它会显示一个多选选项框并且所有选项都被选中。

型号

public function edit_recrew()
{
$this->load->model('atisroad_model');
$this->data['record'] = $this->atisroad_model->edit_recrew();
$this->data['train_status'] = $this->atisroad_model->trainstatusli();
$this->data['train_direction'] = $this->atisroad_model->traindirli();
$this->load->view('atis/edit_recrew', $this->data);
}

查看

        <tr>
<td>Train Direction:</td>
<td><?=form_dropdown('train_direction', $train_direction, set_value('train_direction', $train_direction));?>
</td>
</tr>
<tr>
<td>Train Status:</td>
<td> <?=form_dropdown('train_status', $train_status, set_value('train_status', $train_status));?>
</tr>

Controller

public function edit_recrew()
{
$this->db->where('train_id', $this->uri->segment(3));
$query = $this->db->get('trains_road');
return $query->result();
}
public function trainstatusli()
{
$result = $this->db->get('train_status');
$return = array();
if($result->num_rows() > 0){
foreach($result->result_array() as $row) {
$return[$row['status']] = $row['status'];
}
}
return $return;
}
public function traindirli()
{
$result = $this->db->get('train_direction');
$return = array();
if($result->num_rows() > 0){
foreach($result->result_array() as $row) {
$return[$row['direction']] = $row['direction'];
}
}
return $return;

最佳答案

我假设您使用的是 Codeigniter 3(尽管我很确定这对 2.x 也是有效的)。

你不能像那样使用 set_value:你将一个数组作为默认值传递给 set_value,它将返回该数组作为 form_dropdown 函数的选定值但是,如果你将一个数组作为第三个参数传递给 form_dropdown 它,这就是你的问题将呈现多选。这里是官方引用form_dropdownset_value

关于php - CodeIgniter 显示多选而不是下拉,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34570765/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com