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()提供的参数无效