Anda di halaman 1dari 21

Tutorial Framework CodeIgniter

Pengenalan Framework
Framework secara sederhana dapat diartikan kumpulan dari
fungsi/prosedur dan class untuk tujuan tertentu yang sudah siap
digunakan sehingga bisa lebih mempermudah dan mempercepat
pekerjaan seorang pemrograman, tanpa harus membuat fungsi atau class
dari awal.

Ada beberapa alasan mengapa menggunakan Framework:

a) Mempercepat dan mempermudah pembangunan sebuah aplikasi


web.

b) Relatif memudahkan dalam proses maintenance karena sudah ada pola tertentu dalam sebuah
framework (dengan syarat programmer mengikuti pola standar yang ada)

c) Umumnya framework menyediakan fasilitas-fasilitas yang umum dipakai sehingga kita tidak perlu
membangun dari awal (misalnya validasi, ORM, pagination, multiple database, scaffolding,
pengaturan session, error handling, dll

d) Lebih bebas dalam pengembangan jika dibandingkan CMS

Pengenalan CodeIgniter
CodeIgniter adalah aplikasi open source yang berupa framework dengan model MVC (Model, View,
Controller) untuk membangun website dinamis dengan menggunakan PHP. CodeIgniter
memudahkan developer untuk membuat aplikasi web dengan cepat dan mudah dibandingkan
dengan membuatnya dari awal. CodeIgniter dirilis pertama kali pada 28 Februari 2006. Versi stabil
terakhir 2.1.0 yang dirilis pada 28 November 2011.

Ada beberapa kelebihan CodeIgniter (CI) dibandingkan dengan Framework PHP lain,

a) Performa sangat cepat : salah satu alasan tidak menggunakan framework adalah karena
eksekusinya yang lebih lambat daripada PHP from the scracth, tapi Codeigniter sangat cepat
bahkan mungkin bisa dibilang codeigniter merupakan framework yang paling cepat dibanding
framework yang lain.

b) Konfigurasi yang sangat minim (nearly zero configuration) : tentu saja untuk menyesuaikan
dengan database dan keleluasaan routing tetap diizinkan melakukan konfigurasi dengan
mengubah beberapa file konfigurasi seperti database.php atau autoload.php, namun untuk

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

menggunakan codeigniter dengan setting standard, kamu hanya perlu merubah sedikit saja file
pada folder config.

c) Banyak komunitas: dengan banyaknya komunitas CI ini, memudahkan kita untuk berinteraksi
dengan yang lain, baik itu bertanya atau teknologi terbaru.

d) Dokumentasi yang sangat lengkap : Setiap paket instalasi codeigniter sudah disertai user guide
yang sangat bagus dan lengkap untuk dijadikan permulaan, bahasanya pun mudah dipahami.

e) Dan banyak lagi yang lainnya.

Instalasi
Instalasi Code Igniter bisa kita lakukan hanya dengan empat Langkah :

1. Extrak file CI yang telah di download di website code igniter


2. Upload (copy jika di local) hasil extrak ke server (copy ke folder htdoct jika windows/www jika
linux).
3. Bukka file application/config/config.php dengan text editor untuk setting :
$config['base_url']= 'http://www.example.com/'; //domain
$config['base_url']= 'http://localhost/codeigniter'; // contoh jika di localhost

4. Jika Kamu Menggunakan Database, maka buka file application/config/database.php dengan


text editor dan setting :

$db['default']['hostname'] = "host"; //contoh localhost 92.168.1.5


$db['default']['username'] = "user"; //default adalah root
$db['default']['password'] = "password";
$db['default']['database'] = "nama_database";

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

Routes, Config, Autoload dan database


1. application/config/routes.php
Routes adalah penghubung antara request dan action. Ketika user me-request halaman aplikasi
melalui URL, maka FrontController menampung request, dan memutuskan Controller dan action
mana yang akan dipanggil berdasarkan URLpattern. Proses request routing adalah kunci dari
eksekusi flow aplikasi.

1) Ketika request datang, maka .htaccess akan me-rewrite ke standard format dan melewatkan
ke index.php
2) FrontController memeriksa request berdasarkan URL, dan mencocokkan dengan default
maupun custom routes.
3) Jika cocok, maka Front Controller mengirim ke controller dengan action yang sesuai. Jika
benar, maka view dan layout akan dirender ke user jika diperlukan.
4) Jika tidak cocok, maka exception dan Error Controller akan dipanggil dan error Action akan
merender error message ke user.

2. application/config/config.php
beberapa config yang perlu dipelajari dan paling umum digunakan :

BASE URL adalah URL ke ROOT website, nantinya ini akan menjadi URL dasar yang nantinya bias kita
pakai. Untuk pemanfaatanya kita bahas lagi nanti. Untuk penamaanya jangan lupa diberikan slash
/ pada akhir URL. Jika ini tidak diatur maka CodeIgniter akan menebak protokol, domain dan Path
ke instalasi Anda. Jika ini tidak diatur maka CodeIgniter akan menebak protokol, domain dan Path ke
instalasi Anda.

$controller['base_url']= 'http://www.example.com/';

INDEX PAGE, digunakan untuk mendefinisikan file index.php Anda, kecuali kamu sudah berganti
nama untuk sesuatu yang lain. Jika kamu menggunakan mod_rewrite untuk menghapus halaman
mengatur variabel ini sehingga kosong.

$controller['index_page'] = 'index.php';

Dan banyak controller lainnya silahkan dipelajari, karena di setiap controller juga terdapat
keterangan yang mudah dipahami.

3. application/controller/autoload.php
CodeIgniter dilengkapi dengan fitur "Auto-Load" yang memungkinkan libraries, helpers, dan
models yang akan diinisialisasi secara otomatis setiap kali sistem berjalan. Jika kamu membutuhkan
sumber daya tertentu secara global di seluruh aplikasi Anda, kamu harus mempertimbangkan untuk

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

mengatur agar sumber daya tersebut AutoLoad/otomatis di load untuk kemudahan dalam ber-
coding juga.

$autoload['libraries'] = array('database', 'session', 'xmlrpc');


// mengatur library yang sering digunakan.

$autoload['helper'] = array('url', 'file');


// mengatur helper agar di load secara otomatis Dan silahkan dilanjutkan.. ga susah juga.

4. application/controller/database.php
File yang digunakan untuk mengatur koneksi dan pengaturan antara website/aplikasi dengan
database. Cara settingnya dengan mengubah hostname, username, password, dan nama database
sesuaikan dengan pengaturan mysql anda.

Contoh :
$db['default']['hostname'] = "localhost";
$db['default']['username'] = "root";
$db['default']['password'] = "";
$db['default']['database'] = "db_ci";

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

Mempelajari Model MVC


Model View Controller merupakan suatu konsep yang cukup populer dalam pembangunan aplikasi
web, berawal pada bahasa pemrograman Small Talk, MVC memisahkan pengembangan aplikasi
berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, user
interface, dan bagian yang menjadi kontrol aplikasi. Terdapat 3 jenis komponen yang membangun
suatu MVC pattern dalam suatu aplikasi yaitu :

1. View, merupakan bagian yang menangani presentation logic. Pada suatu aplikasi web bagian
ini biasanya berupa file template HTML, yang diatur oleh controller. View berfungsi untuk
menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung
terhadap bagian model.

2. Model, biasanya berhubungan langsung dengan database untuk memanipulasi data (insert,
update, delete, search), menangani validasi dari bagian controller, namun tidak dapat
berhubungan langsung dengan bagian view.

3. Controller, merupakan bagian yang mengatur hubungan antara bagian model dan bagian
view, controller berfungsi untuk menerima request dan data dari user kemudian menentukan
apa yang akan diproses oleh aplikasi.

Dengan menggunakan prinsip MVC suatu aplikasi dapat dikembangkan sesuai dengan kemampuan
developernya, yaitu programmer yang menangani bagian model dan controller, sedangkan designer
yang menangani bagian view, sehingga penggunaan arsitektur MVC dapat meningkatkan
maintanability dan organisasi kode. Walaupun demikian dibutuhkan komunikasi yang baik antara
programmer dan designer dalam menangani variabel-variabel yang akan ditampilkan.

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

Application Flow Chart


The following graphic illustrates how data flows throughout the system:

1. Index.php berfungsi sebagai controller depan, menginisialisasi sumber daya dasar yang
dibutuhkan untuk menjalankan CodeIgniter.

2. Router ini mengkaji permintaan HTTP untuk menentukan apa yang harus dilakukan dengan
hal itu.

3. Jika file cache ada, itu dikirim langsung ke browser, melewati sistem eksekusi yang normal.

4. Keamanan. Sebelum pengontrol aplikasi dimuat, permintaan HTTP dan data user dikirimkan
disaring untuk keamanan.

5. Controller bertugas memanggil dan menjalankan models, Libraries, pembantu, dan setiap
sumber daya lain yang diperlukan untuk memproses permintaan khusus.

Akhirnya View di proses dan memberikan tampilan yang kemudian dikirim ke browser web
untuk dilihat. Jika caching diaktifkan, view pertama tama akan ke cache sehingga pada
permintaan berikutnya yang sama bisa langsung ke cache.

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

Controllers

Controller itu ibarat lem, yang menghubungkan dan meneruskan pekerjaan antara View dan
Modelnya. Berikut contoh URL website yang menggunakan framework CI, dan pahamilah :

http://example.com/pages/artikel/mempelajaricodeigniter

kita bisa membayangkan dari URL diatas, pages merupakan nama class Controller yang kita buat, lalu
artikel adalah methodnya dan mempelajaricodeigniter adalah argumentnya. Jadi ibarat perintah
kita ingin menampilkan halaman artikel dengan judul mempelajari code igniter. Nantinya pasti kamu
akan sangat sering dan terbiasa dengan URL seperti itu.

http://example.com/[controller-class]/[controller-method]/[arguments]

http://www.facebook.com/nama.user lihat disitu http://www.facebook.com/[arguments]

URL menjadi lebih mudah dan nantinya kita bisa rubah dengan bantuan dari framework CI ini url bisa
jadi lebih indah.. contohnya nanti kita bisa buat sendiri, sabar.. sekarang kita mulai dari hal yang
sederhana. contoh sederhana pemakaian contoler, ketikan kode di noepad dan simpan di folder
application/controllers/pages.php :

<?php
class Pages extends CI_Controller { //membuat class contoler bernama pages
public function tampil() //membuat method dengan nama index
{
echo hai, ayo kta belajar framework Code igniter!;
}
}
*Note : tidak direkomendasikan copy & paste script dari tutorial ini, dikarenakan perbedaan
character pada tanda petik. Script tidak akan jalan.
Penamaan nama file harus sama dengan nama class, dan penamaan nama class harus diawli huruf
capital. Setelah itu coba buka browser dan ketikkan url berikut :
http://localhost/webku/index.php/pages/tampil

Diasumsikan http://localhost/webku.index.php adalah pages index web saya, silahkan disesuaikan.


Ya seperti itu.. sampai disini dulu mengenai controller kita akan pelajari didepan saat controller
sudah bersama dengan view dan model.

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

views
Setelah Controler kita mempelajari view terlebih dahulu, karena kita bisa membuat web hanya
dengan controller dan view, langsung saja contohnya seperti ini, kita ingin membuat web dengan 2
halaman, home dan profil :

Pertama kita buat file home.php

<html>
<head>
<title>Halaman awal</title>
</head>
<body>
<h1>Selamat dating, ini adalah halaman awal !.</h1>
</body>
</html>
Dan untuk profil.php silahkan buat sendiri, jangan lupa simpan di folder application/views/

Lalu kita buat controlernya :

<?php
class Pages extends CI_Controller {
function home(){ // membuat method bernama home
$this->load->view('home');
}
function profil() {
$this->load->view('profil');
}
}

$this->load->view('home'); => disini kita me load halaman home.php yang berada di folder
application/view/ yang kita buat, kita tidak perlu memberikan extensi .php cukup nama filenya saja.

Coba : http://localhost/webku/index.php/pages/home dan


http://localhost/webku/index.php/pages/profil

selanjutnya buat folder bernama templates di folder view, kita juga bisa seperti ini :

<html>

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

<head>
<title><?php echo $title; ?></title>
</head>
<body>
Simpan sebagai header.php di folder application/view/templates

<a href=#>home</a><a href=#>Profil</a><a href=#>hubungi saya</a>


Simpan sebagai menu.php di folder application/view/templates

<hr>
Copyright @ 2012 <br>
Website by saefulloh Rifai
</body>
</html>
Simpan sebagai footer.php di folder application/view/templates

Dan kita tinggal buat isinya. Silahkan terserah mau buat apa, untuk contoh :

<h1>ini adalah halaman awal</h1>


<p>kita buat isi artikel atau paragraf</p>

Simpan sebagai conten.php di folder application/view/templates

Selanjutnya kita buat Controlernya.


<?php
class Page extends CI_Controller {
function index()
{
$data['title'] = 'Beajar CI Controler & View';
$this->load->view('templates/header');
$this->load->view('templates/menu');
$this->load->view('templates/content', $data);
$this->load->view('templates/footer');
}
}
?>
Silahkan dilihat hasilnya : http://localhost/webku/index.php/page/index

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

Models
Model adalah class yang berguna untuk mengatur hubungan dengan database, karan pasti kita akan
melakukan insert, update delete dll, dan dengan dibuatnya class / model ini kita tidak perlu brulang
ulang kembali menuliskan script tersebut. Akan tetapi model ini tidak harus ada semua terserah
programmer, karena di controllerpun sebenarnya bisa mengurusi data ke database tapi kalau kamu
ingin kemudahan model merupakan solusinya.

class M_artikel extends CI_Model {

var $judul = '';


var $isi = '';
var $tanggal = '';

function __construct()
{
// Call the Model constructor
parent::__construct();
}
function get10ArtikelTerbaru()
{
$query = $this->db->get('entries', 10);
return $query->result();
}
function tambahArtikel()
{
$this->judul = $_POST['judul'];
$this->isi = $_POST['isi'];
$this->tanggal = time();

$this->db->insert('entries', $this);
}

function update_entry()
{
$this->judul = $_POST['judul'];
$this->isi = $_POST['isi'];
$this->tanggal = time();

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

$this->db->update('entries', $this, array('id' => $_POST['id']));


}
}

Simpan dengan nama m_artikel.php (seperti biasa, penamaan class sama dengan nama filenya)
untuk model folder penyimpanannya ada di application/models/

Mungkin bagi yang baru belajar CI ini terlihat script diatas terlihat asing, tapi seperti itulah di CI kita
memakai Active Record. Untuk active record detailnya kita bahas nanti, yang penting disini kamu
hanya harus tau apa itu model.

Dan dibawah contoh pemakaian model di controller. class Artikel extends CI_Controller {

function terbaru() {
$this->load->model('M_artikel');
$data['query'] = $this->M_artikel->get10ArtikelTerbaru();

$data[title]= Artikel Terbaru;


$this->load->view('v_artikel', $data);
}
}

Simpan di folder controller dengan namaartikel.php, ingat untuk mengatur database di file
controller/database.php. sekarang kita buat di viewnya :

<html>
<head><title><?php echo $title; ?></title></head>
<body>
<?php
foreach($query->result() as $row){
echo <h3> .$row[judul]. </h3>;
echo tanggal : .$row[tgl].. .$row[isi].<br>;
echo <hr>;
}
?>
</body>
</html>
Ok. Simpan dengan nama v_artikel.php di application/views
Silahkan dilihat hasilnya : http://localhost/webku/index.php/artikel/terbaru

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

Active Record
Untuk Memilih data dari database ( Select )

$this->db->get();

Digunakan untuk menyeleksi seluruh data pada suatu table di database.

Contoh :
1) $query = $this->db->get('mytable');
// menghasilkan : SELECT * FROM mytable
2) $query = $this->db->get('mytable', 10, 20);
// menhasilkan : SELECT * FROM mytable LIMIT 20, 10
(limit ini untuk database mysql, di database lain bisa berbeda script)

Bisa dilihat diatas menghasilkan data untuk variable query yang bisa kita oleh seperti ini :

$query = $this->db->get('nama_tabel');
foreach ($query->result() as $baris) {
echo $baris->nama_field;
}

Fungsi result() digunakan untuk membuat objek atau array kosong jika salah, nanti akan dibahas
lebih dalam.
-------------------------------------------------------------------------------------------------------------------------------------
$this->db->get_where();

Digunakan untuk menyeleksi dan memberikan kondisi where, menggantikan get_where() pada versi
sebelumnya.

$query = $this->db->get_where('mytable', array('id' => $id), $limit, $offset);

Hasilnya : Select * from mytable where id=$id limit $limit,$offset

--------------------------------------------------------------------------------------------------------------------------------
$this->db->select();

Digunakan untuk menyeleksi satu atau bebrapa field saja pada suatu query.

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

$this->db->select('title, content, date');


$query = $this->db->get('mytable');
// hasilnya : SELECT title, content, date FROM mytable
-------------------------------------------------------------------------------------------------------------------------------------
-
$this->db->select_max();
Digunakan untuk memberikan nilai maksimal suatu field, atau bebrapa field pada table tertentu

$this->db->select_max('age');
$query = $this->db->get('members');
// Menghasilkan : SELECT MAX(age) as age FROM members

$this->db->select_max('age', 'member_age');
$query = $this->db->get('members');
// Menghasilkan : SELECT MAX(age) as member_age FROM members
------------------------------------------------------------------------------------------------------------------------------------
$this->db->select_min();

Digunakan untuk memberikan nilai miniimal suatu field, atau bebrapa field pada table tertentu, ,
cara penulisan dan pemakaiannya sama seperti select_max()

$this->db->select_avg();

Digunakan untuk menghitung nilai rata rata suatu field, cara penulisan dan pemakaiannya sama
seperti select_max()

$this->db->select_sum();

Digunakan untuk menghitung jumlah nilai dari suatu field, cara penulisan dan pemakaiannya sama
seperti select_max()
----------------------------------------------------------------------------------------------------------------------------------
$this->db->from();
Digunakan untuk memilih table yang akan di SELECT, sebenarnya kita bisa dan cukup memilih table
pada get() jadi semua terserah kamu ingin memakai yang mana.

$this->db->select('title, content, date');


$this->db->from('mytable');
$query = $this->db->get();

// Menghasilkan : SELECT title, content, date FROM mytable

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

-------------------------------------------------------------------------------------------------------------------------------------
-
$this->db->join();
Digunakan untuk menggabungkan beberapa table,

$this->db->select('*');
$this->db->from('blogs');
$this->db->join('comments', 'comments.id = blogs.id');
$query = $this->db->get();
// Menghasilkan : SELECT * FROM blogs JOIN comments ON comments.id = blogs.id

Jika kamu ingin memberikan penggabungan yang lain kamu bisa memberikan nilai pada parameter
ke 3 dengan nilai : left, right, outer, inner, left outer, and right outer.

$this->db->join('comments', 'comments.id = blogs.id', 'left');


// Menghasilkan : LEFT JOIN comments ON comments.id = blogs.id

-------------------------------------------------------------------------------------------------------------------------------------
-
$this->db->where();

Digunakan untuk memberikan kondisi Where pada penyeleksian table. Nilai/value yang digunakan
dalam fungsi ini juga otomastis fileter untuk wild character (Escaped automatically) jadi aman.
$this->db->where('name', $name);
// menhasilkan : WHERE name = 'Joe

Tapi jika kamu menggunakannya lebih dari Satu maka hasilnya menjadi Where AND
$this->db->where('name', $name);
$this->db->where('title', $title);
$this->db->where('status', $status);
// Menghasilkan : WHERE name = 'Joe' AND title = 'boss' AND status = 'active'

Atau kamu juga bisa mengganti kondisi method where nya

$this->db->where('name !=', $name);


$this->db->where('id <', $id);
// Menghasilkan : WHERE name != 'Joe' AND id < 45

Dan mungkin kamu ingin cara manual seperti biasanya :

$where = "name='Joe' AND status='boss' OR status='active'";


$this->db->where($where);

Mudah bukan ?

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

------------------------------------------------------------------------------------------------------------------------------------

$this->db->or_where();
Digunakan untuk memberikan wher lebih dari satu dengan kondisi ATAU.

$this->db->where('name !=', $name);


$this->db->or_where('id >', $id);
// Menghasilkan : WHERE name != 'Joe' OR id > 50
-------------------------------------------------------------------------------------------------------------------------------------

$this->db->where_in();

Bagi kamu yang sudah mempelajari SQL dengan detail dan dalam, pasti paham ini.

$names = array('Frank', 'Todd', 'James');


$this->db->where_in('username', $names);
// Menghasilkan : WHERE username IN ('Frank', 'Todd', 'James')

-------------------------------------------------------------------------------------------------------------------------------------
$this->db->like();

Digunakan membuat query dengan syarat Like atau seperti nilai yg diberikan.
$this->db->like('title', 'match');
$this->db->like('body', 'match');
// WHERE title LIKE '%match%' AND body LIKE '%match%

Atau mungkin kamu ingin membuat kuery dengan kondisi Like seperti ini :

$this->db->like('title', 'match', 'before');


// Menghasilkan : WHERE title LIKE '%match'

$this->db->like('title', 'match', 'after');


// Menghasilkan : WHERE title LIKE 'match%'

$this->db->like('title', 'match', 'both');


// Menghasilkan : WHERE title LIKE '%match%'

------------------------------------------------------------------------------------------------------------------------------
$this->db->or_like();

Pemakaiannya sama seperti Like() or_like() digunakan untuk kondisi OR (atau) dengan like.
$this->db->like('title', 'match');
$this->db->or_like('body', $match);
// WHERE title LIKE '%match%' OR body LIKE '%match%'

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

--------------------------------------------------------------------------------------------------------------------------------
$this->db->group_by();
Digunakan untuk memberikan method group by.. atau kelompokan berdasarkan ..
$this->db->group_by(array("nama_field1", "nama_field2"));
// Menghasilkan : GROUP BY title, date,

Digunakan untuk
------------------------------------------------------------------------------------------------------------------------------
$this->db->order_by();
Digunakan untuk mengurutkan data berdasarkan nilai.
$this->db->order_by("title", "desc");
// Menghasilkan : ORDER BY title DESC

----------------------------------------------------------------------------------------------------------------------------------
$this->db->limit();
Digunakan untuk mebatasi jumlah baris yang akan ditampilkan dari hasil query
$this->db->limit(10);
// Produces: LIMIT 10

Atau kamu ingin membuatnya seperti ini :

$this->db->limit(10, 20);

// menghasikan : LIMIT 20, 10 (di mysql, kalau database lain beda perintah)

--------------------------------------------------------------------------------------------------------------------------------
$this->db->count_all_results();

Digunakan untuk Menampilkan nilai dari jumlah baris hasil query, hampir sama dengan num_row().
echo $this->db->count_all_results('my_table');
// menghasilkan nilai integer, misalkan : 25

$this->db->like('title', 'match');
$this->db->from('my_table');
echo $this->db->count_all_results();
// menghasilkan nilai integer, karena ada kondisi misalkan jadi : 17

----------------------------------------------------------------------------------------------------------------------------

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

Membentuk Hasil Query

Result()
Fungsi ini mengembalikan hasil query sebagai array obyek, atau array kosong pada kegagalan. Biasanya kamu
akan menggunakan ini dalam sebuah loop foreach, seperti ini:

Contoh :
$query = $this->db->get(nama_tabel);
foreach ($query->result() as $row){
echo $row->field1;
echo $row->field2;
echo $row->field_n;
}

Fungsi di atas adalah alias dari result_object ().


Jika kamu menjalankan query yang mungkin tidak menghasilkan nilai, saya anjurkan untuk menguji hasil
terlebih dahulu dengan cara

$query = $this->db->query("YOUR QUERY");

if ($query->num_rows() > 0) // mengecek hasil query ada atau tidak


{
foreach ($query->result() as $row){
echo $row->title;
echo $row->name;
echo $row->body;
}
}

result_array()
Fungsinya sama seperti result() tapi fungsi ini menghasilkan array murni dari hasil query.

$query = $this->db->query("YOUR QUERY");

foreach ($query->result_array() as $row){


echo $row['title'];
echo $row['name'];
echo $row['body'];
}

$query->num_rows()
Memberikan nilai balik berupa jumlah dari baris hasil eksekusi query.

$query = $this->db->query('SELECT * FROM my_table');


echo $query->num_rows();

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

Menambahkan data ke tabel di database (insert)


$this->db->insert();

Fungsi ini digunakan untuk menambahkan data ke tabel :


$data = array(
'title' => 'My title' ,
'name' => 'My Name' ,
'date' => 'My date'
);

$this->db->insert('mytable', $data);

// hasil : INSERT INTO mytable (title, name) VALUES ('My title', 'My name')

$this->db->insert_batch()
Anda juga bisa menambahkan beberapa data sekaligus dalam 1 perintah
dengan membuat nilainya ke dalam bentuk array. contoh :
$data = array(
array(
'title' => 'My title' ,
'name' => 'My Name' ,
'date' => 'My date'
),
array(
'title' => 'Another title' ,
'name' => 'Another Name' ,
'date' => 'Another date'
)
);
$this->db->insert_batch('mytable', $data);

hasil querinya : INSERT INTO mytable (title, name, date) VALUES ('My title', 'My
name', 'My date'), ('Another title', 'Another name', 'Another date')

$this->db->set();
Digunakan untuk mengatur satu atau beberapa field dengan nilai yang akan di tambah ke table.
Funsi juga bisa berjalan di Update(), pemakaiannya sama.
$this->db->set('name', $name);
$this->db->set('title', $title);
$this->db->set('status', $status);
$this->db->insert('mytable');

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

Query untuk Edit data (Update)


$this->db->update();
Digunakan untuk mengedit/update data suatu tabel berdasarkan nilai tertentu. Conotoh :
$data = array(
'title' => $title,
'name' => $name,
'date' => $date
);
$this->db->where('id', $id);
$this->db->update('mytable', $data);

hasil : UPDATE mytable SET title = '$title', name = '$name', date = '$date'
WHERE id = $id

Selain contoh diatas kamu jugab bisa mengedit data menggunakan tambahan fungsi
set() seperti contoh insert di atas.

Menghapus Data di Table (Delete)


$this->db->delete();
Diguanakan untuk menghapus satu atau beberapa data dalam tabel berdasarkan nilai tertentu.
$this->db->where('id', $id);
$this->db->delete('mytable');

// hasil : DELETE FROM mytable WHERE id = $id

Sedangkan contoh berikut, digunakan untuk menghapus suatu nilai pada bebrapa
tabel sekaligus dalam 1 perintah :

$tables = array('table1', 'table2', 'table3');


$this->db->where('id', '5');
$this->db->delete($tables);

Ket : menghapus data dengan id=5 di tabel1, tabel2 dan tabel 3.

---------------------------------------------------------------------------------

$this->db->empty_table();
Digunakan Untuk Menghapus seluruh data di suatu tabel.
$this->db->empty_table('mytable');

// hasil : DELETE FROM mytable

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

---------------------------------------------------------------------------------

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com
Tutorial Framework CodeIgniter

$this->db->truncate();

Digunakan untuk mengosongkan data di suatu tabel.


$this->db->from('mytable');
$this->db->truncate();
// or
$this->db->truncate('mytable');

// hasil : TRUNCATE mytable

Session
Autentikasi adalah suatu mekanisme untuk mengatur hak akses suatu halaman web, biasanya diawali
dengan adanya proses login. Dimana user diminta menginput user id dan password. Jika berhasil
login kamu berhak masuk ke suatu halaman, jika tidak..anda tidak akan bisa masuk ke halaman
tersebut

Session adalah sebuah varibel sementara yang diletakkan di server. Di mana PHP bisa mengambil
nilai yang tersimpan di server walaupun kita membuka halaman baru. Biasanya session akan hilang
jika kamu menutup browser.

Sebelum kamu menggunakan fungsi fungsi tentang session di CI kamu hrus memanggil library
session terlebih dahulu dengan cara :
$this->load->library('session');

Selanjutnya cara kita membuat atau memasukan nilai ke variabel sementara atau
session :
$this->session->set_userdata('some_name', 'some_value');

Atau bisa juga dengan menggunakan arra :


$newdata = array(
'username' => 'johndoe',
'email' => 'johndoe@some-site.com',
'logged_in' => TRUE
);

$this->session->set_userdata($newdata);

Setelah itu jika anda ingin mengambil atau memakai nilai dari session maka cara
memanggilnya seperti ini :
$session_id = $this->session->userdata('session_id');

Dan terakhir perintah untuk menghapus atau mengosongkan session :


$this->session->unset_userdata('some_name');

Please hope to get some Error, cause its an opportunity for you to be Clever.
By : Saefulloh RifaI <> http://saefullohrifai.blogspot.com

Anda mungkin juga menyukai