Codeigniter

Codeigniter Part I

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 border="1" cellpadding="5" cellspacing="0">
    <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 Email 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

About Suendri

Owner dan Founder Go Software Media sebelumnya bernama PHPBeGO Foundation

Discussion

No comments yet.

Tinggalkan Komentar

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow Go Software Media Blog on WordPress.com

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 63 other followers

Archives

%d bloggers like this: