Php 如何在编辑表单中显示所选项目?下拉式codeigniter
在“更新/编辑”菜单中显示所选项目时出现问题 未选择该项目。如何让它自动选择 这是我的模型Php 如何在编辑表单中显示所选项目?下拉式codeigniter,php,mysql,codeigniter,select,Php,Mysql,Codeigniter,Select,在“更新/编辑”菜单中显示所选项目时出现问题 未选择该项目。如何让它自动选择 这是我的模型 public function master_kategorilapor(){ $this->db->order_by('id_kategorilapor'); $sql_kategorilapor=$this->db->get('kategorilapor'); if($sql_kategorilapor->num_rows()>0){
public function master_kategorilapor(){
$this->db->order_by('id_kategorilapor');
$sql_kategorilapor=$this->db->get('kategorilapor');
if($sql_kategorilapor->num_rows()>0){
return $sql_kategorilapor->result_array();
}
}
这是控制器
public function tambah_lapor(){
$data['kategorilapor'] = $this->mymodel->master_kategorilapor();
$dd_kategorilapor = array();
foreach ($this->mymodel->master_kategorilapor() as $data_kategorilapor)
{
$dd_kategorilapor[$data_kategorilapor['id_kategorilapor']] = $data_kategorilapor['nama_kategorilapor'];
}
$data['kategorilapor']=$dd_kategorilapor;
$this->load->view ('petugas/tambah_lapor', $data);
}
控制器获取更新数据
public function update_data ($id_lapor){
$this->load->model("mymodel");
$mhs = $this -> mymodel -> GetLapor("where id_lapor = '$id_lapor' ");
$data = array(
"id_lapor" => $mhs[0]['id_lapor'],
"tgl_lapor" => $mhs[0]['tgl_lapor'],
"t1" => $mhs[0]['t1'],
"t2" => $mhs[0]['t2'],
"dari" => $mhs[0]['dari'],
"untuk" => $mhs[0]['untuk'],
"id_tujuanlapor" => $mhs[0]['id_tujuanlapor'],
"id_kategorilapor" => $mhs[0]['id_kategorilapor'],
"isi_taruna" => $mhs[0]['isi_taruna'],
"keterangan_taruna" => $mhs[0]['keterangan_taruna']);
$this->load->view('petugas/update_lapor',$data);
}
这就是我的观点
<?php echo form_dropdown("id_kategorilapor",$kategorilapor); ?>
让我们看看下拉方法的基本形式
$dd_list = array(
'Mr' => 'Mr',
'Mrs' => 'Mrs',
'Miss' => 'Miss',
);
echo form_dropdown('title', $dd_list, 'Mr');
在这里,我们创建了带有标题列表的数组。然后,我们在表单中打印下拉列表
假设我们希望在数据库中存储Mr的键值1、Mrs的键值2和Miss的键值3,我们会将上述代码修改为:
$dd_list = array(
'1' => 'Mr',
'2' => 'Mrs',
'3' => 'Miss',
);
echo form_dropdown('title', $dd_list, '3');
在上面,我们将3:Miss设置为默认选择值
让我们在上面的代码中添加set_值函数的基本形式。因此,在提交不完整的情况下,表单将记住提交的内容
$dd_list = array(
'1' => 'Mr',
'2' => 'Mrs',
'3' => 'Miss',
);
$dd_name = "title";
echo form_dropdown($dd_name, $dd_list, '3');
最后
$dd_list = array(
'1' => 'Mr',
'2' => 'Mrs',
'3' => 'Miss',
);
$dd_name = "title";
$sl_val = $this->input->post($dd_name);
echo form_dropdown($dd_name, $dd_list, set_value($dd_name, ( ( !empty($sl_val) ) ? "$sl_val" : 3 ) ) );
您的
$data
(发送到视图的数据)中没有值“kategorilapor”。您不需要此$data['kategorilapor']=$this->mymodel->master_kategorilapor()在函数的第一行tambah\u lapor()
。为什么会这样?如果在发送到视图之前var_dump
将$data
转储,您会得到什么?嗯,我的意思是视图中的id_kategorilapor,很抱歉出错刚才的错误消息:为foreach()提供的参数无效