Heru
Blog Universitas Komputer Indonesia
Kategori
Alexa Rank

Membuat Komentar Dengan Codeigniter

Selamat siang, sore, atau malam, saya mau berbagi tutorial cupu lagi nih. Kali ini saya akan membahas bagaimana cara membuat komentar pada suatu web menggunakan database (mysql) dan codeigniter. Silahkan anda download terlebih dahulu codeigniter di situs resminya www.codeigniter.com.
 
Extract file codeigniter yang telah anda download tadi, kemudian pindahkan ke directory htdocs anda.
 
Disini saya menggunakan codeigniter versi 2.1.0 dan xampp  versi 1.7.7. Selanjutnya anda hilangkan terlebih dahulu index.php pada URL codeigniter anda, untuk menghilangkan index.php silahkan ikuti petunjuknya disini http://codeigniter.com/wiki/mod_rewrite
 
Baik langsung saja kita buat databasenya seperti berikut :
Nama Database : komentar_web.
Nama Tabel : komentar.
Kolom :
1
 
1
 
Selanjutnya kita konfigurasikan aplikasi codeigniter kita, buka file config.php yang terletak pada application/config/config.php
Pada baris
$config['base_url']     = '';
isikan url aplikasi anda misal :
 $config['base_url']    = 'http://localhost/komentar/';
 
Kemudian masih di config.php rubah baris
$config['index_page'] = 'index.php';
Menjadi
$config['index_page'] = ‘’;
 
Kemudian rubah
$config['global_xss_filtering'] = FALSE;
menjadi :
$config['global_xss_filtering'] = TRUE;
Hal ini dimaksudkan agar memfilter XSS (Cross Site Scripting) dari inputan user.
 
Kemudian buka file autoload.php yang terletak pada application/config/autoload.php
Pada baris
$autoload['libraries'] = array();
Rubah menjadi :
$autoload['libraries'] = array('form_validation', 'table', 'database');
Maksudnya disini kita akan meload secara otomatis library form_validation, table dan database.
 
Masih di file autoload.php rubah baris
$autoload['helper'] = array();
Menjadi
$autoload['helper'] = array('form', 'html', 'url');
Maksudnya disini kita akan meload secara otomatis helper form, html dan url.
 
Terakhir rubah baris
$autoload['model'] = array();
menjadi
$autoload['model'] = array('model_komentar');
Maksudnya adalah kita akan meload otomoatis file model “model_komentar”.
 
Setelah itu buka file database.php yang terletak pada application/config/database.php
$db['default']['hostname'] = 'localhost';
Baris diatas pilih localhost.
 
$db['default']['username'] = '';
$db['default']['password'] = '';
Untuk baris diatas isi dengan username dan password database anda. Disini saya pakai username root dan password kosong, maka akan menjadi :
$db['default']['username'] = ‘root';
$db['default']['password'] = '';
 
Kemudian pada baris
$db['default']['database'] = '';
Isikan nama database anda, disini saya menamakan database saya md5db, maka jadinya seperti ini :
$db['default']['database'] = komentar_web';
 
Isikan jenis database anda, disini saya menggunakan database mysql, nanti jadi seperti ini :
$db['default']['dbdriver'] = 'mysql';
 
Kemudian kita buka file routes.php yang terletak pada application/config/routes.php
Pada baris
$route['default_controller'] = "welcome";
Rubah menjadi :
$route['default_controllers'] = "home";
Karena disini saya akan menggunakan controller home sebagai controller default.
Ok konfigurasi selesai sekarang mari kita buat file controller home yang nantinya akan dibuat sebagai controller default kita.
 
Buat file baru pada direktori application/controllers/ dan berinama file tersebut home.php. Ketikkan kode berikut ini kedalam file tersebut :
home.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
 
# Membuat Class Home Dan Merupakan Extends Dari CI_Controller
class Home extends CI_Controller
{
                # Membuat Fungsi Index.
                function index()
                {
                                $this->lihat_komentar(); # Fungsi Yang Pertama Dijalankan Adalah Fungsi lihat_komentar.
                }
               
                # Membuat Fungsi lihat_komentar.
                function lihat_komentar()
                {
                                $data['lihat'] = $this->model_komentar->lihat_komentar(); # Menjalankan Fungsi lihat_komentar Pada model_komentar.
                                $this->load->view('komentar', $data); # Meload View Komentar Dengan Array Dari Variabel Data.
                }
               
                # Membuat Fungsi Komentar.
                function komentar()
                {
                                # Membuat Array Untuk Validasi Input.
                                $validasi = array
                                                (
                                                                array
                                                                                (
                                                                                                'field' => 'nama',
                                                                                                'label' => 'Nama',
                                                                                                'rules' => 'required'
                                                                                ),
                                                                array
                                                                                (
                                                                                                'field' => 'komentar',
                                                                                                'label' => 'Komentar',
                                                                                                'rules' => 'required'
                                                                                )
                                                );
                                               
                                $this->form_validation->set_rules($validasi); # Menset Rules Validasi Input.
                                $this->form_validation->set_message('required', 'Field Tidak Boleh Kosong'); # Menset Pesan Error Untuk Rules Required.
                               
                                if($this->form_validation->run() == FALSE) # Jika Data yang Diinput Tidak Valid.
                                {
                                                $this->lihat_komentar(); # Meload Kembali Fungsi lihat_komentar.
                                }
                                else # Jika Data Yang Diinput Valid
                                {
                                                $this->model_komentar->tambah_komentar(); # Menjalankan Fungsi tambah_komentar Pada model_komentar.
                                                header('location:komentar'); # Meredirect User
                                }
                }
}
 
/* End of file home.php */
/* Location: ./application/controllers/home.php */
 
Selanjutnya kita buat file view baru pada direktori application/views/ dan berinama file tersebut komentar.php. File ini merupakan file untuk menampilkan komentar yang sudah tersimpan di database. Ketikkan kode berikut ini kedalam file tersebut :
komentar.php
<?php
 
# <!DOCTYPE html>
echo doctype('html5');
 
# Membuat Array Untuk Form Nama
$nama = array
                (
                                'name' => 'nama',
                                'value' => set_value('nama')
                );
 
# Membuat Array Untuk Form Komentar
$komentar = array
                (
                                'name' => 'komentar',
                                'value' => set_value('komentar')
                );
               
# Membuat Array Untuk Form Hidden Tanggal
$tanggal = date('d-m-Y');
 
# Menampilkan Komentar di Database
$i = 1;
foreach($lihat as $lihat_komentar)
{
$i++;
echo "Nama : $lihat_komentar->nama";
echo br(1);
echo "Komentar : $lihat_komentar->komentar";
echo br(1);
echo "Pada : $lihat_komentar->tanggal";
echo br(2);
}
 
# Membuat Array Untuk Tabel Form      
$form = array
                (
                                '',
                                '',
                                form_hidden('tanggal', $tanggal), # <input type="hidden" name="tanggal" value="Tanggal Sekarang" />
                                '',
                                'Nama',
                                ':',
                                form_input($nama), # <input type="text" name="nama" value="" />
                                form_error('nama'),
                                'Komentar',
                                ':',
                                form_input($komentar), # <input type="text" name="komentar" value="" />
                                form_error('komentar'),
                                '',
                                '',
                                form_submit('kirim', 'Kirim') . nbs(3) . form_reset('batal', 'Batal')
                                # <input type="submit" name="kirim" value="Kirim" />&nbsp;&nbsp;&nbsp;<input type="reset" name="batal" value="Batal" />
                );
               
echo form_open('home/komentar'); # <form action="http://localhost/komentar/home/komentar" method="post" accept-charset="utf-8">
 
$t_form = $this->table->make_columns($form, 4); # Membuat Tabel 4 Kolom Untuk Variabel Form
 
echo $this->table->generate($t_form); # Menampilkan Tabel Dari Variabel t-form
 
echo form_close(); # </form>
 
/* End of file komentar.php */
/* Location: ./application/views/komentar.php */
 
Dan terakhir kita buat file model baru pada direktori application/models/ dan berinama file tersebut model_komentar.php. File ini merupakan file untuk menjalankan query ke database. Ketikkan kode berikut ini kedalam file tersebut :
model_komentar.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
 
# Membuat Class Model_komentar Dan Merupakan Extends Dari CI_Model
class Model_komentar extends CI_Model
{
                # Membuat Fungsi lihat_komentar.
                function lihat_komentar()
                {
                                $this->db->order_by('no', 'desc'); # Data Di Database Akan Ditampilkan Berdasarkan Kolom no Dan Menurun (Descending).
                                return $this->db->get('komentar')->result(); # Ambil Data Pada Tabel Komentar.
                }
               
                # Membuat Fungsi tambah_komentar.
                function tambah_komentar()
                {
                                # Memproses Inputan Form
                                $nama = $this->input->post('nama'); # Sama Saja Dengan $_POST['nama'].
                                $komentar = $this->input->post('komentar'); # Sama Saja Dengan $_POST['komentar'].
                                $tanggal = $this->input->post('tanggal'); # Sama Saja Dengan $_POST['tanggal'].
                               
                                # Menset Data Yang Akan Ditambahkan ke Database
                                $data = array
                                                (
                                                                'nama' => $nama,
                                                                'komentar' => $komentar,
                                                                'tanggal' => $tanggal
                                                );
                               
                                $this->db->insert('komentar', $data); # Menambah Data Pada Tabel Komentar Dengan Data Dari Array Variabel data.
                }
}
 
/* End of file model_komentar.php */
/* Location: ./application/models/model_komentar.php */
 
Selesai deh tutor cupu dari saya ^^. Untuk penjelasan kodenya sudah sata sertakan pada komentar-komentar pada source code diatas, biar tutornya ga terlalu panjang.
 
Pada tutor ini saya sengaja  tidak memakai css hal ini dimaksudkan agar saya bisa lebih fokus pada proses penambahan dan penampilan komentar tersebut. Jadi anda desain sendiri aplikasi cupu ini, itupun kalau anda mau. =)).
 
Maaf kalau tutornya ga berguna ataupun nyampah.  Terimakasih.
Format Lainnya : PDF | Google Docs | English Version
Diposting pada : Sabtu, 14 April 12 - 19:57 WIB
Dalam Kategori : PHP, CODEIGNITER
Dibaca sebanyak : 17955 Kali
Tidak ada komentar pada blog ini...
Anda harus Login terlebih dahulu untuk mengirim komentar
Facebook Feedback