Html table class pada codeigniter

Menggunakan HTML Table Class pada CodeIgniter

Membuat table pada CodeIgniter sangat mudah terlebih lagi di CI ( singkatan untuk CodeIgniter)  sudah menyediakan library untuk membuat table secara otomatis, apa benar otomatis ? iya mudah sekali membuatnya.

Langkah pertama membuat struktur table MySQL yang akan kita gunakan untuk di tampilkan berhubung kita membutuhkan contoh untuk membuat table maka kita akan membuat table terlebih dahulu.

Tahap pertama

‘Membuat table’

CREATE TABLE country
(
country_id int PRIMARY KEY NOT NULL,
name varchar(128) NOT NULL,
iso_code_2 varchar(2) NOT NULL,
iso_code_3 varchar(3) NOT NULL,
address_format longtext NOT NULL,
postcode_required bit NOT NULL,
status bit DEFAULT 1 NOT NULL
)
;
CREATE UNIQUE INDEX PRIMARY ON country(country_id)
;

Lalu masukan record kedalam table country

INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (1,'Afghanistan','AF','AFG','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (2,'Albania','AL','ALB','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (3,'Algeria','DZ','DZA','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (4,'American Samoa','AS','ASM','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (5,'Andorra','AD','AND','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (6,'Angola','AO','AGO','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (7,'Anguilla','AI','AIA','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (8,'Antarctica','AQ','ATA','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (9,'Antigua and Barbuda','AG','ATG','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (10,'Argentina','AR','ARG','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (11,'Armenia','AM','ARM','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (12,'Aruba','AW','ABW','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (13,'Australia','AU','AUS','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (14,'Austria','AT','AUT','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (15,'Azerbaijan','AZ','AZE','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (16,'Bahamas','BS','BHS','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (17,'Bahrain','BH','BHR','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (18,'Bangladesh','BD','BGD','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (19,'Barbados','BB','BRB','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (20,'Belarus','BY','BLR','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (21,'Belgium','BE','BEL','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (22,'Belize','BZ','BLZ','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (23,'Benin','BJ','BEN','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (24,'Bermuda','BM','BMU','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (25,'Bhutan','BT','BTN','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (26,'Bolivia','BO','BOL','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (27,'Bosnia and Herzegowina','BA','BIH','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (28,'Botswana','BW','BWA','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (29,'Bouvet Island','BV','BVT','',0,1);
INSERT INTO country (country_id,name,iso_code_2,iso_code_3,address_format,postcode_required,status) VALUES (30,'Brazil','BR','BRA','',0,1);

Tahap kedua

‘konfigurasi CodeIgniter’

Disini  saya akan menggunakan fresh installation, untuk memudahkan para pemula dalam mempelajari CI untuk yg telah mahir silahkan loncat kebagian yg lain.  Buat lah folder app.tutorial.ci di dalam htdoc /www tempat anda menempatkan file php agar bisa kita buka di localhost lalu copy semua file yg ada didalam file zip CodeIgniter ke folder app.tutorial.ci versi yg saya gunakan adalah versi 2.0.2 jika sudah buka webrowser yg biasa kita gunakan arahkan ke localhost/app.tutorial.ci maka akan muncul welcome to CodeIgniter.

struktur directory nya adalah seperti ini

———————————————————————–\

–>app.tutorial.ci
——->application
——->system
——->user_guide (boleh di hapus)
——->index.php
——->license.txt

———————————————————————–/

Lalu edit file config.php, database.php,  autoload.php pada directory

———————————————————————–\

–>app.tutorial.ci
——->application
———–>config
——————->config.php
——————->database.php
——————->autoload.php

———————————————————————–/

ini adalah contoh configurasi dari file config.php, database.php, autoload.php masing-masing berbeda file

//pada config.php
$config['base_url']    = 'http://localhost/app.tutorial.ci/';

//pada database.php
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = 'passwordnya';
$db['default']['database'] = 'namadatabase';
$db['default']['dbdriver'] = 'mysql';

//pada autoload.php
$autoload['libraries'] = array('database', 'table' );

Tahap ketiga

‘Pembuatan Table’

Lalu buatlah Model dengan nama table_model, disini saya mengambil 30 record dari table country, sederhana bukan untuk querynya

<?
class Table_model extends CI_Model{

function get_table(){

$this->db->limit(30);
$query = $this->db->get('country');
return $query;
}

}

Tahap keempat

‘Pembuatan Controller’

Pada pembuatan controller disini saya membuat function index() , jadi pada saat kita memanggil controller view_report maka akan langsung memanggil fungsi index, dan model table saya panggil diluar fungsi index jika kita akan membuat fungsi yg menggunakan model sama cukup memanggil fungsi di dalam model tersebut.

<?php
/* Begin of file view.php */
/* Create by sahid at 5:03:37 PM */
/* Create date Apr 11, 2012 */
/* Location  /application/../view.php */
class View_report extends CI_Controller{

function View_report(){
parent::__construct();
//Load model table_model
$this->load->model('table_model');
}

function index(){

$data['nilai'] = $this->table_model->get_table();

//Configurasi untuk merubah tampilan dari table
$tmpl = array ( 'table_open'  => '<table cellpadding="2" cellspacing="1" id="mytable">' );
$this->table->set_caption('COUNTRY HEADER');
$this->table->set_template($tmpl);

//Menampilkan kedalam table_view
$this->load->view('table_view',$data);
}
}

Tahap kelima adalah

‘tahapan membuat view’

Agar tidak bingung harap di bedakan antara view_report yg ada di controller dengan view yang akan kita buat, pertama kita cek terlebih dahulu apakah variable nilai dari view_report controller ada atau tidak lalu melanjutkan dengan fungsi $this->table->generate($nilai); fungsi generate ini secara otomatis membuat table yg kita inginkan

<?php
/* Begin of file table_view.php */
/* Create by sahid at 5:34:38 PM */
/* Create date Apr 11, 2012 */
/* Location  /application/../table_view.php */

//Mengecek jika variable nilai dari view_report controller kosong
if(empty($nilai)){
echo "Record Kosong<br>";
echo 'Data tidak dapat ditampilkan';
}else{
//menampilkan bila ada nilai
echo $this->table->generate($nilai);
}

Kesimpulan: Membuat table di CI sangat mudah hanya memerlukan 15 menit untuk membuatnya tanpa perlu kita repot membuat table terlebih dahulu dan menampilkannya.

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s