Codeigniter telah menggunakan model MVC - model view controller, model sangat nyaman buat mengatur file coding kita agar rapi dan memudahkan kita dalam mengembangkan aplikasi.
sebelum bahas ke MVC, saya mau memberi pengetahuan singkat tentang url di Codeigniter, contoh
http://example.com/contoh/coba/10
http://[nama situs]/[controller]/[controller-method]/[param]
lanjut, kita bahas ke controller, dalam membuat file controller, usahakan huruf pertama memakai huruf kapital, apabila terdiri dari lebih dari satu kata, maka di sambung menggukana _ contoh "
Super_class". untuk contoh script dasar dari controller yaitu
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Contoh extends CI_Controller {
public function coba($jumlah = '')
{
}
}
/* End of file Contoh.php */
/* Location: ./application/controllers/Contoh.php */
dari script di atas, nama class adalah contoh, nama method adalah coba, nama parameternya adalah jumlah. class contoh merupakan turunandari class CI_Controller
untuk model script awalnya defaultnya adalah
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Model_contoh extends CI_Model {
}
/* End of file Model_contoh.php */
/* Location: ./application/models/Model_contoh.php */
class Model_contoh merupakan turunan dari CI_Model.
view pada codeigniter merupakan file html yang berfungsi menampilkan hasil olahan dari controller dan model. view berada pada folder views,
Lalu bagaimana mengirim data dari controller ke modal, dari modal ke controller, dari controller ke view ?
Controller ke modal
buat controller Contoh.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Contoh extends CI_Controller {
public function coba($jumlah= '')
{
//load nama model
$this->load->model('Model_contoh');
//memanggil fungsi/method dari modal
$q = $this->Model_contoh->data(10);
$data = array(
'hasil' => $q
);
$this->load->view('view_contoh', $data);
}
}
/* End of file Contoh.php */
/* Location: ./application/controllers/Contoh.php */
buat model "Model_contoh.php"
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Model_contoh extends CI_Model {
public function data($value='')
{
//mengembalikan nilai
return $value;
}
}
/* End of file Model_contoh.php */
/* Location: ./application/models/Model_contoh.php */
buat view "view_contoh.php"
hasil kirim data dari controller ke model, model ke controller dan controller ke view adalah <?php echo $q; ?>
jalankan scriptnya
Kesimpulan : apabila hendak menggunakan method pada model, jangan lupa untuk mengeload model itu terlebih dahulu, bisa lewat method atau lewat construk (load pertama kali pada saat class di akses), untuk cara kirim data dari controller ke model,salah satunya yaitu dengan menggunakan parameter. untuk model ke controller bisa menggunakan return di tiap methodnya, untuk load->view lebih mudah apabila data yang kirim berupa array.
sekian dan terimakasih