Для отображения данных, сохраненных в раскрывающемся меню - PullRequest
0 голосов
/ 17 января 2019

У меня проблема с отображением результатов в выпадающем меню.Для раскрывающегося меню я не выбираю напрямую тип, соответствующий отображаемому идентификатору.

Как сделать так, чтобы раскрывающееся меню отображалось в соответствии с идентификатором элемента?

Это представление.

label for="type">Type</label>
                                <select class="form-control" id="type_id" name="type_id">
                                    <?php foreach($type as $types) : ?>
                                        <?php if( $types == $barang['type_id']) : ?>
                                            echo '<option value="<?php echo "$types->type_id"?>" selected><?php echo "$types->type_nama"?></option>';
                                        <?php else : ?>
                                            echo '<option value="<?php echo "$types->type_id"?>"><?php echo "$types->type_nama"?></option>';
                                        <?php endif; ?>
                                    <?php endforeach; ?>
                                </select>

Эта модель .

public function getTypeQuery()
{
    $this->db->order_by('type_id', 'asc');
    $query = $this->db->get('type');
    return $query->result();
}

public function getTypeById($id)
{
    return $this->db->get_where('barang', ['barang_id' => $id])->row_array();
}

public function ubahTypeBarang ()
{
    $data = [
        "barang_kode"=> $this->input->post('barang_kode', true),
        "type_id"=> $this->input->post('type_id', true),
        "barang_nama"=> $this->input->post('barang_nama', true),
    ];

    $this->db->where('barang_id', $this->input->post('barang_id'));
    $this->db->update('barang', $data);

}

Этот контроллер .

public function ubah_type($id)
{
    $data['judul'] = 'Form Ubah Data Mahasiswa';
    $data['barang'] = $this->Gudang_model->getTypeById($id);
    $data['type'] = $this->Gudang_model->getTypeQuery();

    $this->form_validation->set_rules('barang_kode', 'Kode', 'required');
    $this->form_validation->set_rules('type_id', 'Type', 'required');
    $this->form_validation->set_rules('barang_nama', 'Nama Barang', 'required');

    if($this->form_validation->run() == FALSE)
    {
        $this->load->view('templates/header', $data);
        $this->load->view('gudang/ubah_type', $data);
        $this->load->view('templates/footer');  
    } else {
        $this->Gudang_model->ubahTypeBarang();
        $this->session->set_flashdata('flash', 'Diubah');
        redirect('gudang/lihat_type');
    }

}

`

1 Ответ

0 голосов
/ 17 января 2019

Попробуйте изменить взгляды так:

<label for="type">Type</label>
<select class="form-control" id="type_id" name="type_id">
    <?php foreach($type as $types) : ?>
        <?php if( $types->type_id == $barang['type_id']) : ?>
            <option value="<?php echo $types->type_id ?>" selected><?php echo $types->type_nama ?></option>
        <?php else : ?>
            <option value="<?php echo $types->type_id ?>"><?php echo $types->type_nama ?></option>
        <?php endif; ?>
    <?php endforeach; ?>
</select>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...