Documente Academic
Documente Profesional
Documente Cultură
1. Cek di application/config/config.php
$config['base_url'] = 'http://localhost:8081/rental_mobil/';
( seting URL aplikasi )
$config['index_page'] = '';
( menghilangkan index.php )
function edit_data($where,$table){
return $this->db->get_where($table,$where);
}
function get_data($table){
return $this->db->get($table);
}
function insert_data($data,$table){
$this->db->insert($table,$data);
}
function update_data($where,$data,$table){
$this->db->where($where);
$this->db->update($table,$data);
}
function delete_data($where,$table){
$this->db->where($where);
$this->db->delete($table);
}
}
?>
4. Untuk menu login ada di application/controllers/Welcome.php
5. Form-form untuk CRUD ada di application/views/admin
6. Sedangkan logic untuk CRUD nya ada di : application/controllers/Admin.php
7. Isi logi Admin.php tsbt adalah sbb :
application/controllers/Admin.php:
READ
Nama function testdrive untuk mengeload data2 di tabel test_drive
function testdrive(){
$data['test_drive'] = $this->db->query("select test_drive.id, test_drive.nama,
mobil.mobil_merk, test_drive.tgl from test_drive,mobil where
test_drive.mobil_id=mobil.mobil_id ")->result();
Logic ini akan menampilkan file
$this->load->view('admin/header'); :
$this->load->view('admin/testdrive',$data); /application/views/admin/test
$this->load->view('admin/footer'); drive.php
}
//Keterangan: menampilkan sub menu awal ketika sub menu Data Test Drive jika di Klik dan
menampilkan halaman testdrive.php sbb :
<div class="page-header">
<h3>Data Test Drive</h3>
</div>
<td>
<a class="btn btn-sm btn-warning" href="<?php
echo base_url().'admin/testdrive_edit/'.$k->id; ?>"><span class="glyphicon glyphicon-
wrench"></span> Edit</a>
<a class="btn btn-sm btn-danger" href="<?php echo
base_url().'admin/tesdrive_hapus/'.$k->id; ?>"><span class="glyphicon glyphicon-
trash"></span> Hapus</a>
</td>
</tr>
<?php
}
?>
</tbody>
</table>
</div>
CREATE
$w = array('mobil_status'=>'1');
Akan $data['mobil'] = $this->m_rental->edit_data($w,'mobil')->result();
menggenerate list
item yang berisi //$data['test_drive'] = $this->m_rental->get_data('test_drive')->result();
data2 mobil sesuai $this->load->view('admin/header');
dewnghan class di Akan me load file view di
model pada $this->load->view('admin/testdrive_add',$data); admin/testdrive_data dengan isi
M_rental $this->load->view('admin/footer'); data di halaman tersebut berasal
dari variabel $data
}
($data['mobil'] = $this->m_rental-
>edit_data($w,'mobil')->result();
function edit_data($where,$table){
return $this->db->get_where($table,$where);
}
12. Pada controller : $data['mobil'] = $this->m_rental->edit_data($w,'mobil')->result();
Membacanya adalah sql : ($where,$table), untuk isi variabel $where = adalah isi dari array
$w = mobil_status =1 dan untuk isi variable $table adalah tabel yang namanya mobil
13. Sehingga balikan nilai dari return $this->db->get_where($table,$where); adalah hasil dari
query select * from mobil where mobil_status=’1’
14. Isi view/admin/testdrive_add.php adalah sbb :
<div class="page-header">
<h3>Test Drive Baru</h3>
</div>
15. Pada saat tombol disubmit maka akan mengaktifkan function testdrive_add_act() pada
controller/admin.php berikut:
function testdrive_add_act(){
$nama = $this->input->post('nama');
$mobil_id = $this->input->post('mobil_id');
$tgl = $this->input->post('tgl');
$this->form_validation->set_rules('nama','Nama','required');
$this->form_validation->set_rules('mobil_id','Mobil','required');
$this->form_validation->set_rules('tgl','Tanggal','required');
if($this->form_validation->run() != false){
$data = array(
'nama' => $nama,
'mobil_id' => $mobil_id,
'tgl' => $tgl,
);
$this->m_rental->insert_data($data,'test_drive');
redirect(base_url().'admin/testdrive');
}else{
$this->load->view('admin/header');
$this->load->view('admin/testdrive_add');
$this->load->view('admin/footer');
}
}
16. $this->m_rental->insert_data($data,'test_drive');
17. Akan memanggil model M_rental function insert_data sbb :
function insert_data($data,$table){
$this->db->insert($table,$data);
}
);
UPDATE
20. Untuk mengedit data menggunakan fungsi testdrive_edit pada controller/admin.php
<a class="btn btn-sm btn-warning" href="<?php echo base_url().'admin/testdrive_edit/'.$k-
>id; ?>"><span class="glyphicon glyphicon-wrench"></span> Edit</a>
$w = array('mobil_status'=>'1');
$data['mobil_checked'] = $this->db->query("select test_drive.id,
test_drive.nama, mobil.mobil_merk, test_drive.tgl from test_drive,mobil where
test_drive.mobil_id=mobil.mobil_id and test_drive.id='$id'")->result();
$data['mobil'] = $this->m_rental->edit_data($w,'mobil')->result();
//$data['test_drive'] = $this->m_rental->get_data('test_drive')->result();
$where = array(
'id' => $id
);
$data['testdrive'] = $this->m_rental->edit_data($where,'test_drive')-
>result();
$this->load->view('admin/header');
$this->load->view('admin/testdrive_edit',$data);
$this->load->view('admin/footer');
}
function testdrive_edit($id){
$w = array('mobil_status'=>'1');
$data['mobil_checked'] = $this->db->query("select test_drive.id,
test_drive.nama, mobil.mobil_merk, test_drive.tgl from test_drive,mobil where
test_drive.mobil_id=mobil.mobil_id and test_drive.id='$id'")->result();
$data['mobil'] = $this->m_rental->edit_data($w,'mobil')->result();
23. Coding yg merah akan menampilkan list mobil2 di tabel mobil yang statusnya ‘1’
24. Coding yang biru akan menampilkan data yang terpilih oleh record ybs
<div class="page-header">
<h3>Edit Test Drive</h3>
</div>
27. <?php foreach($testdrive as $k){ ?> merujuk kepada controller/admin.php pada fungsi : function
testdrive_edit($id)
Salah satu baris pada fungsi tersebut adalah sbb :
…………..
$data['testdrive'] = $this->m_rental->edit_data($where,'test_drive')->result();
……………..
<div class="form-group">
<label>Nama Kostumer Test Drive</label>
<input type="text" name="nama" value="<?php echo $k->nama; ?>" class="form-control">
<input type="hidden" name="id" value="<?php echo $k->id; ?>" class="form-control">
<?php echo form_error('nama'); ?>
</div>
<div class="form-group">
<label>Mobil</label>
<select name="mobil_id" class="form-control">
<div class="form-group">
<label>Tanggal Test Drive ( Format YYYY-MM-DD )</label>
32. Variabel $m_checked di dapat dari fungsi testdrive_edit pada controller/admin.php di baris
berikut :
$data['mobil_checked'] = $this->db->query("select test_drive.id, test_drive.nama,
mobil.mobil_merk, test_drive.tgl from test_drive,mobil where
test_drive.mobil_id=mobil.mobil_id and test_drive.id='$id'")->result();
function testdrive_update(){
$id = $this->input->post('id');
$nama = $this->input->post('nama');
$mobil_id = $this->input->post('mobil_id');
$tgl = $this->input->post('tgl');
$this->form_validation->set_rules('nama','nama','required');
if($this->form_validation->run() != false){
$where = array(
'id' => $id
);
$data = array(
'nama' => $nama,
'mobil_id' => $mobil_id,
'tgl' => $tgl,
);
$this->m_rental->update_data($where,$data,'test_drive');
redirect(base_url().'admin/testdrive');
}else{
$where = array(
'id' => $id
);
$data['test_drive'] = $this->m_rental-
>edit_data($where,'test_drive')->result();
$this->load->view('admin/header');
$this->load->view('admin/testdrive_edit',$data);
$this->load->view('admin/footer');
}
}
DELETE
39. Untuk menghapus data bisa di lihat pada views/testdrive.php pada baris sbb :
<a class="btn btn-sm btn-danger" href="<?php echo base_url().'admin/testdrive_hapus/'.$k-
>id; ?>"><span class="glyphicon glyphicon-trash"></span> Hapus</a>
40. Pada saat diklik maka akan memanggil fungsi testdrive_hapus pada controller/admin.sbb
function testdrive_hapus($id){
$where = array(
'id' => $id
);
$this->m_rental->delete_data($where,'test_drive');
redirect(base_url().'admin/testdrive');
}
function delete_data($where,$table){
$this->db->where($where);
$this->db->delete($table);
}
}
$where = array(
'id' => $id
);