Postingan lainnya
membuat dropdown <select><option> yang datanya diambil dari database pada codeigniter php
bagaimana membuat dropdown <select> yang datanya diambil dari database pada php framework codeigniter ?
Kasus: jadi ceritanya user menginputkan nomor NIK, Namanya, dan harus memilih jenis layanan (KTP, KK, dsb) data jenis layanan diambil dari table layanan dan ditampilkan dalam bentuk dropdown dalam form inputan tersebut.
view:
<label>Jenis Layanan</label>
<select class="form-control" name="layanan">
<?php foreach($layanan as $l){ ?>
<option value="<?php echo $l['id_layanan']; ?>"><?php echo $l['nama_layanan']; ?> </option>
<?php } ?>
</select>
Model:
<?php
class model_layanan extends CI_Model{
public function __construct()
{
parent::__construct();
}
function get_layanan()
{
$query = $this->db->query('SELECT * FROM layanan');
return $this->db->query($query)->result();
}
}
?>
Controller:
public function insert(){
$nik=$this->input->post('nik');
$nama_pengadu=$this->input->post('nama_pengadu');
$deskripsi=$this->input->post('deskripsi');
$data['layanan']=$this->model_layanan->get_layanan();
//$data=array('select_option'=>$this->model_aduan->get_layanan());
$data=array(
'nik'=>$nik,
'nama_pengadu'=>$nama_pengadu,
'deskripsi'=>$deskripsi
);
//$this->load->view('home', $data);
$this->model_aduan->insert_data($data, 'aduan');
redirect(base_url('home'));
$data['layanan']=$this->model_aduan->get_layanan();
$this->load->view('home',$data);
}
Masalah : datanya belum keluar pada dropdown yang saya buat begini. Mohon Bantuannya terima kasih
3 Jawaban:
Sebenarnya saya tidak begitu paham dengan kasusnya. Cuman kalo boleh saran, Saya lebih suka modelnya get_layanan nya seperti ini:
function get_layanan(){
$query = $this->db->get('layanan');
return $query->result_array();
}
Kemudian untuk controllernya, fungsi insert sepertinya harus dipecah lagi, antara insert data dan store data untuk ditampilkan. Jadi controller home nya, kira2 seperti ini
public function index(){
$data['layanan']=$this->model_aduan->get_layanan();
$this->load->view('home',$data);
}
public function insert(){
$data = array(
'nik' => $this->input->post('nik'),
'nama_pengadu' => $this->input->post('nama_pengadu'),
'deskripsi' => $this->input->post('deskripsi'),
'layanan' => $this->input->post('layanan')
);
$this->model_aduan->insert_data($data, 'aduan');
redirect('home');
}
<label>Jenis Layanan</label> <select class="form-control" name="layanan"> <?php foreach($layanan as $l){ ?> <option value="<?php echo $l['id_layanan']; ?>"><?php echo $l['nama_layanan']; ?> </option> <?php } ?> </select>
mohon dijawab, memang beda masalah dengn masnya. untuk menu select ini bagaimana agar data yg masuk kedatabase bukan id_layanan tapi nama_layanan,saya membuat untuk yg provinsi dan kota namun yg masuk ke database malah idnya bukan nama provincenya atau kotanya
klau ingin masuk nama layanan bukan id nya masalahnya ada di value option nya seharusnya seperti dibawah <pre> <option value="<?php echo $l['nama_layanan']; ?>"><?php echo $l['nama_layanan']; ?> </option> </pre>