невозможно загрузить поле в базу данных в комбинированный список - PullRequest
0 голосов
/ 17 января 2019

Я новичок в codeigniter, я хочу, чтобы одно поле базы данных можно было отображать в выпадающем списке, но я только что получил эту ошибку.

Произошла ошибка PHP Серьезность: Уведомление Сообщение: преобразование массива в строку Имя файла: mahasiswa / ubah.php Номер строки: 30 backtrace

Контроллер

public function ubah($id)
{
    $data['judul'] = 'Form Ubah Data Mahasiswa';
    $data['mahasiswa'] = $this->Mahasiswa_model->getMahasiswaById($id);
    $data['jurusan'] = $this->Jurusan_model->getAllJurusan();
    $this->form_validation->set_rules('nama', 'Nama', 'required');
    $this->form_validation->set_rules('nim', 'NIM', 'numeric|required');
    $this->form_validation->set_rules('email', 'Email', 'required');

    if ($this->form_validation->run()== FALSE) {
        $this->load->view('templates/header', $data);
        $this->load->view('mahasiswa/ubah', $data);
        $this->load->view('templates/footer');
    }else{
        $this->Mahasiswa_model->ubahDataMahasiswa();
        $this->session->set_flashdata('flash', 'Diubah');
        redirect('mahasiswa');
    }
}

Модель

class Jurusan_model extends CI_model
{

    public function getAllJurusan()
    {
        $this->db->select('jurusan');
        return $this->db->get('mahasiswa')->result_array(); 
    }
}

Посмотреть

<div class="form-group">
  <label for="jurusan">Jurusan</label>
  <select class="form-control" id="jurusan" name="jurusan">
    <?php foreach($jurusan as $j) : ?>
      <option value="<?= $j; ?>"><?= $j;?></option>
    <?php endforeach;?>
  </select>
</div>

Ответы [ 2 ]

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

Ваши данные в getAllJurusan() возвращаются как result_array

Так что после foreach вам нужно выбрать ключ.

<?php foreach($jurusan as $j) : ?>
    <option value="<?= $j['jurusan']; ?>"><?= $j['jurusan'];?></option>
<?php endforeach;?>
0 голосов
/ 17 января 2019

Вы должны использовать Codeigniter Form Helper, чтобы сделать это: https://www.codeigniter.com/user_guide/helpers/form_helper.html#form_dropdown

<?php
// Get Jurusan (Add more fields on $this->db->select('id, jurusan'))
$jurusan = $this->jurusan_model->getAllJurusan();

// Prep Options (I dont know "mahasiswa" table structure is, but at least need 2 columns, like "ID" and "Text / Name")
foreach ($jurusan as $j) {
  $options[$j['jurusan_id']] = $j['jurusan_name'];
}

// Generate Dropdown
echo form_dropdown('jurusan', $options);
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...