Tutorial CodeIgniter Dasar Part I
Posted on 26. Apr, 2010 by Cheyuz in Code Igniter, Tutorial, _other
![]()
Udah lama aku ga ngupdate blog ini… yaa sekitar 3 minggu lah ya.. Mulai sekarang aku mau mulai update lagi ini blog, dan pengennya sih blog ini up to date sehari sekali ato ya minimalnya seminggu sekali lah ya…
OK, tutorial kali ini adalah tutorial CodeIgniter dasar, sangat dasar.. jadi di sini akan dijelaskan tentang bagaimana cara konfigurasi nama situs, kemudian konfigurasi database, konfigurasi library, autoload, dan sebagainya… mudah2an temen2 mengikuti tutorial ini dengan sebaik-baiknya, soalnya kalo kita ga mulai dari dasar/basic nantinya susah… kita bisa aja bikin aplikasi oleh CodeIgniter dengan meniru contoh, tetapi kita tidak faham, hanya mengikuti… bahayanya adalah gimana klo client minta ini itu dan itu misalnya tidak ada dalam contoh? klo kita ga faham kita pasti ga bisa meneruskan aplikasi kita alias BUNTU..
Instalasi
OK, kita mulai aja… kita di sini memakai XAMPP pertama-tama, extract file codeigniter.rar ke C:\xampp\htdocs, file bisa didownload di sini. Misalnya kita namakan nama folder root (nama situs) kita adalah webku.
Konfigurasi
Kemudian, hal yang pertama harus dilakukan adalah konfigurasi awal, yaitu base_url, base_url adalah nama root situs kita… caranya edit file /webku/system/application/config/config.php, ubah $config['base_url'] = “http://example.com/“ menjadi:
$config['base_url'] = "http://localhost/webku/";
kemudian hilangkan index.php di $config['index_page'] sehingga menjadi:
$config['index_page'] = "";
Langkah kedua adalah konfigurasi routes, yaitu controller default apakah yang ingin diload…? jadi di sini adalah konfigurasi untuk controller ‘home’, sehingga ketika kita mengetikkan url http://localhost/webku maka yang dipanggil adalah controller yang sudah dikonfigurasi di routes ini.. Cara konfigurasinya yaitu dengan mengedit file /webku/system/application/config/routes.php, dan di bagian $route['default_controller'] isi dengan ‘home’ sehingga seperti ini:
$route['default_controller'] = "home";
kita akan membuat supaya ketika kita menuju url http://localhost/webku maka controller yang akan dijalankan adalah controller home .
Kemudian setelah itu adalah konfigurasi Databasenya… ada di file /webku/system/application/config/database.php, Di situ terlihat konfigurasi-konfigurasi seperti host, username, password, nama db, dsb.. silakan diisi seperti berikut:
$db['default']['hostname'] = "localhost"; $db['default']['username'] = "root"; $db['default']['password'] = ""; $db['default']['database'] = "blog"; //nama database $db['default']['dbdriver'] = "mysql"; $db['default']['dbprefix'] = ""; $db['default']['pconnect'] = TRUE; $db['default']['db_debug'] = TRUE; $db['default']['cache_on'] = FALSE; $db['default']['cachedir'] = ""; $db['default']['char_set'] = "utf8"; $db['default']['dbcollat'] = "utf8_general_ci";
Kemudian konfigurasi selanjutnya adalah konfigurasi untuk autoload, jadi ketika situs dibuka, library/helper/model/dsb apakah yang akan selalu diload.. file ada di /webku/system/application/config/autoload.php, tambahkan database di bagian $autoload['libraries'] menjadi seperti ini:
$autoload['libraries'] = array('database');
Kemudian yang terakhir adalah penambahan .htaccess supaya kita tidak perlu mengetikkan index.php di URL kita, cara untuk menghilangkan index.php (menggunakan .htaccess) ada di sini.
Contoh Aplikasi Database Sederhana
Buatlah sebuah database bernama blog, kemudian copy SQL berikut:
CREATE TABLE IF NOT EXISTS `buku_tamu` ( `id` int(11) NOT NULL AUTO_INCREMENT, `nama` varchar(100) NOT NULL, `email` varchar(20) NOT NULL, `situs` varchar(100) NOT NULL, `komentar` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; INSERT INTO `buku_tamu` (`id`, `nama`, `email`, `situs`, `komentar`) VALUES (1, 'Cecep Yusuf', 'cheyuz@yahoo.co.id', 'http://www.cheyuz.com', 'Ini adalah komentar pertama'), (2, 'Deddy Mizwar', 'deddy@mizwar.com', 'http://www.facebook.com', 'Ini adalah komentar kedua');
Kita buat sebuah contoh di mana kita akan menampilkan isi dari database di atas..
Pertama-tama, buatlah model terlebih dahulu di /webku/system/application/model/ dengan nama file buku_tamu.php yang berisi code sebagai berikut:
<?php class Buku_tamu extends Model{ function selectAll() { return $this->db->get('buku_tamu')->result(); } } ?>
Di dalam folder /webku/system/application/controller/ bikin sebuah file bernama home.php untuk membuat class controller yang bernama Home… isi dari home.php adalah:
<?php class Home extends Controller{ function __construct() { parent::Controller(); $this->load->model('buku_tamu'); } function index() { $data['title'] = 'Ini adalah aplikasi sederhana'; //memanggil function selectAll di model buku_tamu, dimasukkan ke $data['buku_tamu'] $data['buku_tamu'] = $this->buku_tamu->selectAll(); //meload view bernama home_view.php dengan data variable adalah $data $this->load->view('home_view', $data); } } ?>;
Nah, kemudian kita buat file home_view.php di folder /webku/system/application/view/ dengan isi sebagai berikut:
<h2><?php echo $title ?></h2> <table> <tr> <td>No</td> <td>Nama</td> <td>Email</td> <td>Situs</td> <td>Komentar</td> </tr> <?php $i = 0 ?> <?php foreach ($buku_tamu as $bt): ?> <tr> <td><?php echo $i++ ?></td> <td><?php echo $bt->nama ?></td> <td><?php echo $bt->email ?></td> <td><?php echo $bt->situs ?></td> <td><?php echo $bt->komentar ?></td> </tr> <?php endforeach ?> </table>
Silakan dibuka di browser url berikut: http://localhost/webku
Hasilnya adalah sebagai berikut:
Ini adalah aplikasi sederhana
| No | Nama | Situs | Komentar | |
| 1 | Cecep Yusuf | cheyuz@yahoo.co.id | http://www.cheyuz.com | Ini adalah komentar pertama |
| 2 | Deddy Mizwar | deddy@mizwar.com | http://www.cheyuz.com | Ini adalah komentar kedua |
The Official Site of Cheyuz: http://www.cheyuz.com





31 Comments
Ermalia
12. May, 2010
Terimakasih….tutorialnya…..
Cheyuz
12. May, 2010
sip, sama2
anwar
13. May, 2010
sangat bermanfaat..thanks
Cheyuz
14. May, 2010
sama2…
gundam
30. May, 2010
untuk tutorial awal harusnya menampilkan hello world dahulu..
tp thx udah share ilmu
Cheyuz
01. Jun, 2010
hello world mah ga usah, soalnya tinggal echo ‘hello world’, hehe lagian itu kan udah dipelajari di PHP dasar..
planet
13. Jun, 2010
Saya sdh ikuti tutoriqlnyq…tapi kenapa saat buka localhost/webku masih muncul
“404 Page Not Found”
help me kenapa yah? tx cheyuz
igo
14. Jun, 2010
; Parse error: syntax error, unexpected T_DEC in C:\apache2triad\htdocs\kipluxer\system\application\models\buku_tamu.php on line 7
bos muncul pesan error kayak gitu, trus gmn tuh ….. di home.php ane coba copas dr tulisan ente….
yang ini…
load->model(‘buku_tamu’);
}
function index()
{
$data['title'] = ‘Ini adalah aplikasi sederhana’;
//memanggil function selectAll di model buku_tamu, dimasukkan ke $data['buku_tamu']
$data['buku_tamu'] = $this->buku_tamu->selectAll();
//meload view bernama home_view.php dengan data variable adalah $data
$this->load->view(‘home_view’, $data);
}
}
?>;
bos fungsi construct itu bener ada garis bawahnya..mohon di jelaskan??
Cheyuz
15. Jun, 2010
@planet: sepertinya ada kesalahan di .htaccess nya.. coba cek lagi… coba dengan url berikut, masih error atau ngga http://localhost/webku/index.php
fitra
17. Jun, 2010
mas cheyuz kok pass di run di url nya error yah timbul message : Apache HTTP Server has encountered a problem and needs to close. We are sorry for the inconvenience
padahal sama persis sy buat nya
Cheyuz
18. Jun, 2010
@fitra: itu kayaknya masalah di servernya… coba ganti dngan XAMPP/server lainnya yg baru… ato install ulang server punya kamu..
Cheyuz
21. Jun, 2010
@igo: itu yg pertama salah syntax gan.. yup, function __construct itu adalah fungsi untuk event dari pembuatan objek dan __destruct adalah pemusnahan objek, itu bawaan dari PHP, aturannya ada 2 garis bawah..
No 1 Di Google
10. Jul, 2010
mantap…. lanjutkan broo….
Willy
14. Jul, 2010
Terima Kasih ya, saya memang sedang belajar CodeIgniter, thx……:))
Cheyuz
14. Jul, 2010
sip, sama2 gan
adhi
15. Jul, 2010
Kalo ada error spt ini gimana gan :
=============================================
A PHP Error was encountered
Severity: Notice
Message: Undefined property: Home::$buku_tamu
Filename: controllers/home.php
Line Number: 10
trus ada tambahan di bawahnya :
Fatal error: Call to a member function selectAll() on a non-object in /opt/lampp/htdocs/ci/system/application/controllers/home.php on line 10
=============================================
mohon bantuannya gan,
n tambahan, ane pake ubuntu…
cHø
19. Jul, 2010
tutorial codeigniter-nya di update trus ya gan klo bisa
:beer:
adiputra
21. Jul, 2010
klu CI ma Zend kedepan cerahan mana ya ?
katanya zend pas bgt buat aplikasi di perusahaan yg datanya ruwet
konsep Framework itu kan untuk mempermudah develop ?
btw,,nice bgt tutornya…:)
salam kenal sblmnya
Cheyuz
22. Jul, 2010
pasti gan
Cheyuz
25. Jul, 2010
@adiputra: klo dibandingin sih tergantung kebutuhan dan skill si developernya… klo CI lebih mudah dibandingkan Zend… tetapi keduanya sering dipake di perusahaan2… yup, FW itu untuk mempermudah developer dalam pengembangannya.. sip, thankz ya
Phuad
08. Aug, 2010
thanks bro…
akhirny ane bisa nyoba XD
next
Cheyuz
18. Aug, 2010
@Phuad: alhamdulillah ya.. sip sama2 bro..
Kelik
18. Aug, 2010
ikut nimbrung gan,…
kalau di models-nya mas cheyuz-> file buku_tamu.php ini masih ada bugsnya, like this:
A PHP Error was encountered
Severity: Notice
Message: Undefined property: Buku_tamu::$db
Filename: models/buku_tamu.php
Line Number: 7
Fatal error: Call to a member function get() on a non-object in I:\xampp\htdocs\CI\system\application\models\buku_tamu.php on line 7
itu menurut saya tambahin aja baris u/ load databasenya di file buku_tamu.php dan seperti ini gan,….
load->database();
$query = $this->db->get(‘buku_tamu’);
return $query->result();
}
?>
oke, selamat menggali, semoga bermanfaat…
manstab gan!
Cheyuz
19. Aug, 2010
@Kelik: sepertinya mas tidak mengikuti tutorial saya dengan cara seksama dan dalam tempo sesingkat2nya
kan saya udah nyuruh load dulu databasenya di /system/application/config/autoload.php, jadi qta tidak usah repot membuat $this->load->database lagi, soalnya sudah otomatis diload di autoload.php, jadi sepertinya di file saya tidak ada bugs. oia justru kalo pake load->database yg mas suruh itu salah, harusnya $this->load->database. Terima kasih
diajar
27. Aug, 2010
dah nyoba tapi muncul begono:
Parse error: parse error, expecting `T_FUNCTION’ in D:\Web Design\ci\system\application\controllers\home.php on line 3
padahal udah diteliti sampai titik komanya tuh file home.php
sementara lagi dicari2 dulu barangkali ada yang salah tulis ulang…
lieur oge nya
ayu
27. Aug, 2010
Ijin pake tutorialnya ya pak, alhamdulillah saya berhasil. Padahal beginner banget urusan ginian
makasih ya pak. Sangat membantu tugas kuliah saya. Tetaplah berbagi
Cheyuz
29. Aug, 2010
@diajar: coba cek lagi… mungkin ada kesalahan dalam penulisan…
jangan bilang lieur, gampang kok
Cheyuz
29. Aug, 2010
@ayu: iya sama2…. jangan panggil ‘pak’ donk, kesannya tua banget, panggil kang aja…
Cheyuz
29. Aug, 2010
@adhi: untuk kesalahan pertama dan yg kedua, system tidak mengetahui adanya property dan function… berarti ada kemungkinan model tidak terload… Anda mungkin blm memakai $this->load->model()
awan
31. Aug, 2010
bagus bnget gan…gw lagi disuruh belajar kode igniter ne…
Cheyuz
31. Aug, 2010
@awan: sama2 gan..
disuruh sama siapa gan?
Leave a reply