Cara membuat model view dan controller pada codeigniter

Setelah membahas tentang controller dan View, kini kita sampai pada pembahasan tentang Models pada CodeIgniter. Model digunakan untuk melakukan data processing, dimana data yang diterima melalui view akan masuk pada controller dan selanjutnya oleh controller akan dikirimkan pada model untuk di proses. Setelah model selesai melakukan pemrosesan, hasil pemrosesan akan dikirimkan kembali pada controller dan selanjutnya akan ditampilkan kembali kepada user melalui view

 

Secara garis besar, cara dan aturan pembuatan model pada CodeIgniter tidak jauh berbeda dengan Controller, untuk lebih memperjelas pokok pembahasan, silahkan perhatikan contoh model berikut ini

<?php

class Webmodel extends CI_Model {
	
	function __construct()
	{
	  parent::__construct();
    }
	
	function test()
	{
		return 'Data untuk test model';
	}
	
	function proses_contact($array)
	{
		$nama = $array['nama'];
		$email= $array['email'];
		$telp = $array['telp'];
		$pesan= $array['pesan'];
		$data = 'Nama :'.$nama.'<br />'.
				'Email:'.$email.'<br />'.
				'Telp :'.$telp.'<br />'.
				'Pesan:'.$pesan;
		return $data;
	}
}

Aturan dalam membuat Model adalah sebagai berikut :

1. Pembuatan nama class Model

  • Pembuatan nama class Model dituliskan dengan Huruf kapital pada awal nama, Contoh Webmodel, Webadmin, Postmodel dan lain-lain
  • Pembuatan nama class Model tidak boleh menggunakan tanda spasi,tanda - dan tanda lain-lainnya kecuali underscore
  • Nama file Model harus sama dengan nama class Model dan disimpan pada direktory Application/models/ , pada contoh diatas maka file kita simpan dengan nama webmodel.php
  • Penamaan file sebaiknya menggunakan huruf kecil semua, contoh home.php bukan Home.php

2. Pembuatan function method

Aturan pembuatan nama function adalah sama dengan pembuatan nama Class Model, catatannya adalah tidak boleh ada nama function yang sama dalam satu class Model.


Untuk menguji Model kita diatas, kita bisa gunakan controller dan view yang telah kita buat seperti pada tutorial sebelumnya. Yaitu controller home.php yang kita tempatkan pada Application/controllers/home.php dan view contact.php yang kita simpan pada direktory Application/views/contact.php .

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Home extends CI_Controller {

	public function index()
	{
		echo 'Index dari controller ';
	}
	
	function test()
	{
		$this->load->model('webmodel');
		echo $this->webmodel->test();
	}
	
	function contact()
	{
		$data['pesan'] = '';
		$this->load->model('webmodel');
		if($this->input->post('kirim')){
			$data['pesan'] = $this->webmodel->proses_contact($this->input->post());
		}
		$this->load->view('contact',$data);
	}
}

Pada contoh controller diatas, model dipanggil pada dua buah function yaitu paa function test dan pada function contact. Perintah untuk memanggil model adalah

$this->load->model('webmodel');

Kemudian untuk menggunakan function yang berada pada model, digunakan perintah dengan struktur :

$this->nama_model->nama_function_method 

Pada contoh diatas, perintah tersebut kita pakai pada perintah :

	$this->webmodel->test();
	$this->webmodel->proses_contact($this->input->post());

script contact.php yang terdapat pada direktory Application/views/contact.php

<style type="text/css">
	label.lb{
		display:block;
		line-height:20px;
		margin:0 0 10px 0;
	}
	h1.header{
		font:bold 20px Tahoma,Verdana;
		display:block;
		margin:0 0 20px 0;
		padding:0 0 10px 0;
		border-bottom:#cecece 1px solid;
	}
</style>
<h1 class="header">Kontak Pembaca</h1>
<?php echo $pesan; ?>
<form method="post" name="frm" action="">
<label class="lb">Nama</label>
<input type="text" name="nama" size="50" />
<label class="lb">Email</label>
<input type="text" name="email" size="50" />
<label class="lb">Telp</label>
<input type="text" name="telp" size="30" />
<label class="lb">Kodepos</label>
<input type="text" name="kdpos" size="10" maxlength="6" />
<label class="lb">Pesan</label>
<textarea name="pesan" cols="50" rows="10"></textarea>
<br />
<input type="submit" name="kirim" value="Kirim">
<input type="reset" name="reset" value="Reset">

</form>

Setelah mengikuti langkah-langkah diatas, cobalah mengakses aplikasi kita pada alamat lokal seperti berikut :

http://localhost/folder_ci/index.php/home/test
http://localhost/folder_ci/index.php/home/contact

Khusus pada link contact, cobalah mengisi form kontaknya kemudian klik tombol kirim, maka data post yang dikirimkan melalui view akan dikembalikan lagi dalam bentuk data jadi yang sudah siap dicetak.

 

Mudah - mudahan tutorial kali ini akan bermanfaat buat pembaca Media Kreatif, Selamat mencoba tutorial kami diatas, jika ada yang belum dimengerti, silahkan mengisi form komentar dengan cara klik tombol Tulis Komentar

Tulis komentar

 




Today
Yesterday
All visitor

Pelatihan Website bersama Media Kreatif Indonesia

laboratorium Komputer dan teknology Kampus I ITN Malang 2013-07-09 08:00:00
 

Pelatihan Sistem Informasi

SMK Negeri 1 Lumajang 2013-05-01 12:00:00
 

Bakti sosial Teknik Kimia

Panti Asuhan Miftahul Huda II 2013-03-26 11:00:00
 

Bagaiamana metode pengajaran teknology yang paling efektif menurut anda ?

Beli buku, kemudian mempelajari sambil praktek
Mengikuti kursus sesuai bidang teknology
Belajar sendiri secara otodidak
Belajar dari contoh - contoh aplikasi yang sudah jadi
Belajar dari contoh - contoh yang paling sederhana
Semua pilihan benar