Susu Kambing Higoat Pertama di Indonesia
Media Advertise Paling Murah
pasang baner disini pasang baner disini
Web Hosting

Model View Controller (MVC) Codeigniter

Codeigniter ditulis oleh Rick Ellis, seorang musisi rock yang beralih profesi menjadi pemrogram. MVC dibuat untuk memisahkan antara logika aplikasi dan tampilan. Menggunakan pola ini diharapkan dapat meminimalisasi penulisan perintah, sehingga resiko terjadinya bug juga minimal, serta meningkatkan efisiensi pembangunan aplikasi.
Saya asumsikan anda bukan orang yang awam-awam banget codeigniter hehehe. Saya menulis artikel ini untuk memantapkan pemahaman konsep MVC CI, dan saya ingin berbagi dengan anda jika anda sedang dalam kasus yang sama.

Gambaran penerapan arsitektur MVC dalam codeigniter yaitu:

  • Controller merupakan pengatur utama hubungan antara model, view dan juga sumber daya lain yang tersedia (elemen framework CI)
    (direktorinya di '../application/controllers/')
  • View merupakan tempat untuk meletakkan apa yang akan ditampilkan di browser. Sebuah berkas view umumnya berisi kode bahasa pemrogramman sisi klien (client-side-scripting)
    (direktorinya di '../application/views/')
  • Model bertanggung jawab untuk melakukan pengelolaan data dalam basis data. Di dalamnya biasa dituliskan perintah SELECT, UPDATE, DELETE dan INSERT.
    (direktorinya di '../application/models/')

lets go kita mulai dengan study case menampilkan artikel, buat database dengan nama bioskop (atau terserah anda yang penting menyesuaikan di ../application/config/database.php)buat table baru dengan nama movie:

CREATE TABLE movie ( 
mid int(11) NOT NULL AUTO_INCREMENT, 
mtitle VARCHAR (80) NOT NULL, 
mtitle_identifier VARCHAR (80) NOT NULL, 
msinopsis TEXT, 
mdirectors VARCHAR(200) DEFAULT NULL, 
mauthors VARCHAR(200) DEFAULT NULL, 
mrelease_date DATE, 
mproducers VARCHAR(200) DEFAULT NULL, 
mdistributors VARCHAR(200) DEFAULT NULL, 
msite VARCHAR(50) DEFAULT NULL, 
mcategory TINYINT(4) DEFAULT NULL, 
PRIMARY KEY (mid), 
UNIQUE KEY identifier (mtitle_identifier) 
) ENGINE=MyIsam DEFAULT charset=UTF8; 

buat file baru pada direktori controller dengan nama movie.php

/**
* Class Movie
* @package       Controllers
* @access        Public
* @dindasgmwty      
*/

class movie extends CI_Controller{
    var $_public_view;
    
//konstrusisi kelas sesuai cara php5
    public function __construct()
    {
        parent::__constuct();//inherit dari parent
        //$this->load->database();//memuat library basis data, sesuai konfigurasi
       
        $this->load->model('basic_model','bmodel');
    }
   
public function index($offset=NULL)
    { 
         //data yang akan digunakan di view
        $data = array('query' =>; $this->bmodel->get_movie_list(),
                        'page_title' => 'Daftar Film'
                        );
       
        $this->load->view('movie_list',$data);      
    }
}

fungsi index merupakan fungsi standar yang sering dijumpai pada CI. jika suatu controller dipanggil tanpa menyertakan nama fungsi tertentu, dengan cerdas sistem CI akan memanfaatkan fungsi index() ini.
Pada controller movie kita menuliskan
$this->load->view('movie_list',$data); 
parameter pertama diisi dengan nilai 'movie_list', Untuk itu berkas view yang akan dibuat dinamakan movie_list.php dan disimpan dalam direktori view.
<?php
echo $page_title;
echo $query;
?>
untuk mengatur fungsi-fungsi yang kita gunakan pada controller movie, kita akan membuat sebuah model bernama basic_model.php pada direktori model.
Perlu diketahui bahwa keberadaan model dalam CI tidak dipersyaratkan dengan mutlak. Kueri dapat dilakukan melalui controller. Namun dalam hal ini, kita akan menggunakan model, supaya lebih mantap :p
 
/**
* Basic_model
* menyediakan fungsi fungsi dasar yang
* berhubungan dengan manipulasi basis data
* @dindasgmwty
*/
class basic_model extends CI_Model{
    var $output_table = '';
   
   
    public function __construct()
    {
        parent::_construct();
        $this->load->database();
        $this->load->library('table');
        $this->load->helper(array('array','text'));
 
    }
    //fungsi dasar untuk mengambil data
    protected function make_query($fields='', $table='', $where=array(), $limit=NULL,$offset='', $order=array('field'=>NULL,'sort'=>'ASC'))
            {
                $this->db->select($fields);
                if (!is_null($order['field']))
                {
                    $this->db->order_by($order['field'],$order['sort']);
                }
                return $this->db->get_where($table,$where,$limit,$offset);
            }
   
    //menampilkan teble daftar film yang terekam
    public function get_movie_list($limit=NULL, $offset='', $order=array('field'=>'mrelease_date','sort'=>'DESC'))
    {
        
        $query = $this->make_query('mtitle,
                                    mtitle_identifier,
                                    msinopsis,
                                    mdirectors,
                                    mauthors,
                                    mrelease_date',
                                    'movie',
                                    array(),
                                    $limit,
                                    $offset,
                                    $order);
 if($query->num_rows() > 0){
            foreach ($query->result() as $value)
            {
                
$this->table->add_row(
strtoupper($value->mtitle));
     $this->table->add_row(ascii_to_entities($value->msinopsis));
$this->table->add_row(
   'Sutradara : '.($value->mdirectors).
   ' | Penulis Naskah : '.($value->mauthors).
      ' | Tanggal Rilis : '.strftime ('%d/%b/%Y',                          strtotime($value->mrelease_date)));
                
                
 $this->output_table .= $this->table->generate();
 $this->output_table .= '
';
 $this->table->clear();
                
            }
            return $this->output_table;
        }
        else
        {
            return FALSE;
        }
        
}

}

terdapat fungsi make_query() ini artinya kita memanfaatkan kelas Active Record. Kelas Active Record merupakan perluasa dari kelas Dindabase, eh. database. makanya penulisaannya seperti ini:$this->db->....ada db nya karna dia perluasan kelas database yang sudah kita load pada konstruktor basic_model.
Nilai balikan yang dihasilkan berupa pernyataan SQL yang valid. kelas ini dibuat agar suatu kueri berjalan aman dan sederhana.sedangkan fungsi get_movie_list dibuat untuk mengambil semua data film kemudian membuat daftar film dalam bentuk HTML dan memanfaatkan fungsi make_query.

sumber:
N.W.P, Anugrah, 2010, Codeigniter: cara mudah membangun aplikasi php, Jakarta:media kita
http://codeigniter.com/user_guide/toc.html

dibaca : 170 kali

Nama Anda :
Email Anda :
Pesan Anda :

Kode

GRIYA MESIN JAHIT BUTTERFLY JH8190 MULTIFUNGSI

MasterCopy Blogger
Blog yang menampung tutorial blogger
dari:depur |dilihat :10 Kali

Uang Download
Hampir semua netter senang mendownload sesuatu yang baru dan gratis, apalagi jika ditambah peluang dapat penghasilan hingga ratusan juta bahkan sampai Rp. 7,5 milyar.
dari: pribsd |dilihat :1 Kali

Survei singkat dibayar mahal, pertama di Indonesia
Lowongan kerja internet termudah, Anda dibayar setiap survei, syarat: bisa internet. satu survei singkat dibayar Rp 2.000,-, "Bukan member get member" Informasi selengkapnya isi dulu survei singkat di http://www.onlinesia.net
dari: tmon |dilihat :4 Kali

Rangka Atap Baja Ringan & Genteng Metal
RANGKA ATAP BAJA RINGAN MASTER TRUSS Rangka Atap Baja Ringan (Zincalume) adalah rangka atap metal yang terbuat dari baja ringan anti karat yang berkualitas tinggi dan telah mendapatkan sertifikasi SNI (Standar Nasional Indonesia). Tlp.02137890215
dari: smartid |dilihat :4 Kali

dijual software sms dengan harga yang terjangkau.
Manfaatkan Ribuan SMS Gratis untuk usaha, layanan dan kegiatan anda. Gunakan untuk promosi barang/jasa via SMS, pemberitahuan SMS kepada pelanggan/relasi/komunitas/karyawan. harga 1 user Rp. 200.000 harga 3 user Rp. 425.000
dari: rahmat |dilihat :17 Kali

MODAL 50 RIBU MENGUBAH SAYA MENJADI JUTAWAN
MODAL 50 RIBU MENGUBAH SAYA MENJADI JUTAWAN! Pertama saya tidak percaya, tetapi saya penasaran dengan istilah Mesin Penarik Uang Otomatisnya.smp akhirnya sy coba dan hasilnya luar biasa. perhari income:1,5-2 juta.
dari: yodias |dilihat :16 Kali

BURSA MESIN JAHITKU SALE BROTHER, JUKI RUMAH TANGGA
BURSA MESIN JAHITKU SALE BROTHER, JUKI RUMAH TANGGA SALE..SALE..MESIN JAHIT BROTHER, JUKI, SINGER KONDISI (EX DISPLAY PAMERAN) Mesin jahit portable multifungsi untuk rumah tangga tersedia beberapa macam pola jahitan 1. Bordir 2. Neci 3. som 4. Obra
dari: hermanhertam |dilihat :11 Kali

BURSA MESIN JANOME LR 1122
JANOME LR 1122 HANYA 2.500.000 (SEGEL DUS) BONUS SEBUAH TRAVEL BAG dan PAKET AKSESORIS Mesin jahit portable multifungsi untuk rumah tangga/boutique, ada 24 pola jahitan (COCOK UNTUK PEMULA DAN MAHIR) * 5 pola bordiran & 18 monostitch * Sum,Dll * di
dari: hermanhertam |dilihat :10 Kali

GRIYA MESIN JAHIT BROTHER BM2600/LS2125 MULTIFUNGSI
BROTHER BM2600 Rp 2.600.000 BROTHER LS2125 Rp 1.900.000 (COCOK UNTUK PEMULA DAN MAHIR) Specifikasi : 1. Tidak bising pada saat dioperasikan (menjahit) 2. Tersedia kail benang. 3. Jahit lurus,lubang kancing 4. Semi obras & semi neci. hub YANTI : 02193
dari: griya |dilihat :21 Kali

GRIYA MESIN JAHIT JANOME 1008 MULTIFUNGSI
JANOME 1008 (GREES BARU) HANYA 1.700.000 Mesin jahit portable multifungsi untuk rumah tangga/boutique, ada 10 pola jahitan (UNTUK PEMULA) 1. Mesin tidak berisik saat digunakan 2. Tersedia 2 pola bordiran 3. Semi obras & semi neci. 4. Jahit lurus. 5.
dari: griya |dilihat :12 Kali

software sms multi fungsi!! dengan memanfaatkan bonus sms
DIJUAL SOFTWARE SMS+MODEM. Harga 850.000 dapat digunakan sebagai sarana promosi barang/jasa,sms center,sms gateway sebelum membeli bisa men download versi demonya info lebih lanjut buka di http://www.yusiwa.com/software-sms
dari: rahmat |dilihat :19 Kali

Mug Digital Printing
Order dan Mencetak gambar foto keren anda untuk di taruh di Mug, Piring, Keramik dan Botol Minuman!! Order sekarang.. info. 085642177427
dari: ivanzferdinand |dilihat :25 Kali

online
cobain aja bisnis in.... di jamin menguntungkan.
dari: dedi |dilihat :25 Kali

musik

dari: 12345 |dilihat :41 Kali

Software GILI-SMS bisa untuk sms pemberitahuan,sms promosi
Manfaatkan Ribuan SMS Gratis dari operator untuk mengirimkan SMS ke pelanggan, relasi dan komunitas anda. Gunakan software Gili-SMS. •Mengirim SMS pemberitahuan piutang/angsuran/asuransi jatuh tempo. Mengirim SMS informasi produk, promosi barang/jas
dari: rahmat |dilihat :33 Kali

software sms paling stabil & dapat menggunakan 5 modem
Manfaatkan Ribuan SMS Gratis dari operator untuk mengirimkan SMS ke pelanggan, relasi dan komunitas anda. Gunakan software Gili-SMS. •Mengirim SMS pemberitahuan piutang/angsuran/asuransi jatuh tempo. Mengirim SMS informasi produk, promosi barang/jas
dari: rahmat |dilihat :31 Kali

Gang Tutorial
Kumpulan tutorial komputer dan blog, tips trik blog dan komputer, free template blog, SEO, dll
dari: sandydoank12 |dilihat :32 Kali

nikmat_berbagi
blog berbagi info bisnis dan ilmu
dari: fajarbp |dilihat :45 Kali

Rahasia kuat dan perbesar Mr. P tanpa obat
solusipria.jimdo.com dengan POWERFULL SECRET METHOD mengungkap teknik latihan yang sangat rahasia & sangat powerfull! tidak ada di web manapun, berbahasa indonesia, membongkar habis rahasia kejantanan pria!
dari: inbisnis |dilihat :81 Kali

Kontak Jodoh Muslim
Temukan jodoh terbaik untuk menikah. Ada profil, foto, chat, webcam, mencari jodoh jadi mudah. Gunakan semua fasilitas canggih yang ada dan semuanya itu disediakan untuk Anda. Tampilkanlah diri anda dengan upload foto, video, chat, webcamera.
dari: inbisnis |dilihat :68 Kali

Iklan Plus :: Iklan Baris Gratis
iklan-plus.com adalah media promosi online gratis, Info lowongan pekerjaan terbaru. Media pasang iklan baris gratis ini memberikan kemudahan bagi anda untuk mempromosikan usaha dan bisnis anda. Karena dilengkapi dengan Peta Google Maps.
dari: brocomtech |dilihat :74 Kali


Member : 436 orang
daftar 10 member baru :
pri
azhari
Muhamad Thorik
Depur Sentosa
ipey
Rizal
nifa
ojok
olmon
alfian


wazzub (2)
wazzub (3)
suksesdunia (50)
Download For free (97)
Coolest Phone (43)
Sevenvil (36)
Zhe CommuniTy (41)
iklan banget (16)
rikibehla.blogspot.com (25)
Kabar Sekolah (68)
BISNIS MASA DEPAN (18)
Desain Website Makassar (18)
Dunia Wiraswasta (58)
Ayo Semangat (11)
Pasang Iklan Baris Gratis (12)
ypn nusantara (30)
media pasang iklan gratis (41)
Lintas Bungo (76)
Distributor Pulsa Murah (10)
IKLAN BARIS GRATIS (20)
Smart Coop Biz (7)
Dapatkan 50juta hari ini juga (8)
Tantangan 50juta (6)
Peluang Bisnis Online (36)
Informasi Bisnis Online (22)
websiteku ok banget (10)
Flazzcash (11)
polytron (12)
http://aisy-romadhona.blogspot.com (33)


Online
Hari ini
Minggu ini
Bulan ini
Tahun ini
Semua
Record

: 3
: 37
: 377
: 2438
: 5182
: 8398
: 198(14.02.2012)


Copyright © 2009 - bisig
Powered by: bisig
[X]

Ingin Berlanganan Info
Masukan Eamil Anda disini:

Delivered by FeedBurner

[X]
Perpustakaan link download pertama di indonesia, dapatkan bermacam produk digital, script, software, ebook, film terbaru, game,dll.Link Akan Terus Bertambah cukup anda bergabung di sini, buruan daftar klik disini