0% menganggap dokumen ini bermanfaat (2 suara)
1K tayangan14 halaman

Makalah Code Igniter

Dokumen tersebut membahas tentang CodeIgniter, yaitu framework PHP open source untuk membangun aplikasi web dinamis. CodeIgniter menggunakan arsitektur MVC dan memiliki fitur-fitur seperti URL friendly, kemudahan pengembangan, dan dukungan komunitas yang luas. Dokumen tersebut juga menjelaskan contoh instalasi, struktur direktori, dan implementasi CRUD menggunakan CodeIgniter dan database.

Diunggah oleh

Amelia Prima
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (2 suara)
1K tayangan14 halaman

Makalah Code Igniter

Dokumen tersebut membahas tentang CodeIgniter, yaitu framework PHP open source untuk membangun aplikasi web dinamis. CodeIgniter menggunakan arsitektur MVC dan memiliki fitur-fitur seperti URL friendly, kemudahan pengembangan, dan dukungan komunitas yang luas. Dokumen tersebut juga menjelaskan contoh instalasi, struktur direktori, dan implementasi CRUD menggunakan CodeIgniter dan database.

Diunggah oleh

Amelia Prima
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 14

CODE IGNITER (CI)

A. Pengenalan Code Igniter


CodeIgniter adalah sebuah web application framework yang bersifat open source
digunakan untuk membangun aplikasi php dinamis. Dengan framework CodeIgniter,
pengembang dapat sangat mudah menggunakan framework ini untuk membuat suatu
aplikasi web. Aplikasi ini dikembangkan dengan menggunakan arsitektur Model-ViewController yang telah tersedia di framework CI dan ada banyak library dan helper yang
berguna didalamnya dan tentunya mempermudah proses development.
Tujuan utama pengembangan CodeIgniter adalah untuk membantu developer untuk
mengerjakan aplikasi lebih cepat daripada menulis semua code dari awal. Manfaatnya
mempermudah dalam pengembangan karena CodeIgniter menyediakan berbagai macam
library yang ada. Didalam sebuah framework biasanya sudah tersedia struktur aplikasi
yang baik, standar coding (1), best practice (2) dan design pattern (3), dan common
function (4). Dengan menggunakan framework kita dapat langsung fokus kepada business
process yang dihadapi tanpa harus berfikir banyak masalah stuktur aplikasi, standar
coding dan lain-lain. Selain kemudahan dan kecepatan dalam membangun sistem, dengan
menggunakan framework tertentu kita juga dapat menyeragamkan cara kita
mengimplementasikan kode program.

B. Fitur pada CodeIgniter


CodeIgniter adalah sebuah web application framework yang bersifat open source
digunakan untuk membangun aplikasi php dinamis. CodeIgniter dikembangkan oleh Rick
Ellis (htyp://www.ellislab.com). Kelebihan CodeIgniter adalah sangat ringan, terstruktur,
mudah dipelajari, dokumentasi lengkap dan selain itu CodeIgniter juga memiliki fiturfitur lainnya yang sangat bermanfaat antara lain :
Menggunakan pattern MVC
Dengan menggunakan pattern MVC ini, struktur kode yang dihasilkan menjadi lebih
terstruktur dan memiliki standar yang jelas.
URL friendly

URL yang dihasilkan sangat URL friendly. Pada CodeIgniter diminimalisasi


penggunaan $_GET dan di gantikan URL.
Kemudahan
Kemudahan dalam mempelajari, membuat library dan helper, memodifikasi serta
meng-integrasikan library dan helper.
C. Keunggulan CodeIgniter
1. Gratis
2. Ringan
Inti sistem CodeIgniter hanya membutuhkan sangat sedikit library, hal ini
merupakan perbedaan kontras dengan framework lain. Library lainnya dapat
digunakan dinamis berdasarkan kebutuhan.
3. Cepat
Sampai saat ini CodeIgniter masih diakui sebagai framework yang paling cepat.
4. Menggunakan konsep MVC
5. Clean URL
URL yang digunakan CodeIgniter bersifat search-engine friendly. Menggunakan
pendekatan segment-based.

6. Library yang lengkap


7. Dapat diperluas
Developer dapat dengan mudah mengembangkan (extend) library, helper atau
bahkan perluasan class inti CodeIgniter.
8. Dukungan teknis yang lengkap di forum CodeIgniter

D. Instalasi dan Struktur CodeIgniter


Instalasi CodeIgniter sangat mudah. Meskipun namanya instalasi tetapi karena
CodeIgniter adalah aplikasi berbasis website maka sebenarnya yang perlu dilakuka adalah
meng-copy folder aplikasi CodeIgniter ke dalam folder htdocs atau DocumentRoot dari
web server. Dengan menggunakan konfigurasi default saja maka CodeIgniter sudah dapat
berjalan di web server kita. Adapun struktur utama dari CodeIgniter terbagi menjadi dua
bagian, yaitu application dan sistem/core CodeIgniter. Application adalah tempat
pengguna meletakkan code yang akan dibuat (berwarna merah dan biru sedangkan

sistem/core CodeIgniter berwarna oren). Folder sistem berisi library-library dan helper
bawaan CodeIgniter.

Gambar 1. Struktur direktori CodeIgniter


Folder application : disinilah aplikasi yang akan kita bangun diletakkan.
Folder config
tempat menyimpan semua file konfigurasi yang ada di dalam aplikasi, mulai dari
database, router dan autoload aplikasi.
Folder controllers
Tempat menyimpan semua fole controller.
Folder errors
Tempat menyimpan semua template error aplikasi.
Folder helpers
Tempat menyimpan helper-helper yang bukan berasal dari CI.
Folder hooks
Tempat menyimpan hook yang digunakan untuk mengubah alur fungsi dari core

CI.
Folder language
Tempat menyimpan bahasa-bahasa yang akan di gunakan.
Folder libraries
Tempat menyimpan semua library buatan kita sendiri.
Folder models
Tempat menyimpan semua model.
Folder views
Tempat menyimpan semua file view aplikasi.

Folder system : menyimpan semua file baik itu file aplikasi yang dibuat mauoun core
frameworknya.
Folder cache
tempat menyimpan semua cache yang dibuat caching library.
Folder database
Tempat menyimpan semua driver database drivers dan class yang akan

digunakan.
Folder fonts
Tempat menyimpan semua font yang digunakan image manipulation library.
Folder helpers
Tempat menyimpan semua helper core CI.
Folder language
Tempat menyimpan semua language core CI.
Folder language
Tempat menyimpan semua language core CI.
Folder libraries
Tempat menyimpan semua library core CI.
Folder logs
Tempat menyimpan semua logs generated oleh CI.
Folder plugin
Tempat menyimpan semua plugin core CI.
Folder scaffolding
Tempat menyimpan semua file yang berfungsi sebagai scaffolding.

Folder user_guide : berisi userguide/manual penggunaan CI.


Folder index.php : file yang akan menghandle semua request yang dilakukan oleh
client.
Folder index.html : merupakan gerbang utama untuk masuk dan mengakses segala
resource pada aplikasi CodeIgniter

Gambar 2. Flowchart aplikasi pada web framework

E. Konsep MVC
Secara sederhana konsep MVC terdiri dari tiga bagian yaitu bagian Model, bagian
View dan bagian Controller. Didalam website dinamis setidaknya terdiri dari 3 hal yang
paling pokok, yaitu basis data, logika aplikasi dan cara menampilkan halaman website. 3
hal tersebut dipresentasikan dengan MVC yaitu model untuk basis data, view untuk cara
menampilkan halaman website dan controller untuk logika aplikasi.
1. Model
Biasanya didalam model akan berisi class dan fungsi untuk mengambil, melakukan
update dan menghapus data website. Karena sebuah website biasanya menggunakan
basis data dalam menyimpan data maka bagian Model biasanya akan berhubungan
dengan perintah-perintah query SQL.
2. View
Merupakan informasi yang ditampilkan kepada pengunjung website. Sebisa mungkin
didalam View tidak berisi logika-logika kode tapi hanya berisi variabel-variabel yang
berisi data yang siap ditampilkan. View hanya dikhususkan untuk menampilkan datadata hasil dari model dan controller.
3. Controller
Controller merupakan penghubung antara Model dan View. Didalam Controller inilah
terdapat class dan fungsi-fungsi yang memproses permintaan dari View kedalam
struktur data didalam Model. Controller juga tidak boleh berisi kode untuk mengakses
basis data. Tugas Controller adalah menyediakan berbagai variabel yang akan
ditampilkan di view, memanggil model untuk melakukan akses ke basis data,
menyediakan penanganan error, mengerjakan proses logika dari aplikasi serta
melakukan validasi atau cek terhadap input.
F. CONTOH PROGRAM
Contoh programnya dengan penerapan menggunakan database :

Gambar 3. Membuat database mahasiswa dan table mahasiswa

Pertama kali kita membuat sebuah database bernama mahasiswa dan table bernama
mahasiswa yang terdiri dari 3 field npm(int) nama(varchar) dan kota(varchar) seperti gambar
diatas.

$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'mahasiswa';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;

Penggalan code diatas merupakan bagian dari code database.php yg terdapat pada folder
config/ dimana code ditas digunakan untuk mengkonfigurasi database , dengan hostname
adalah locahost, username root dana database yang digunkana adalah mahasiswa.
<?php if ( !defined('BASEPATH')) exit('No direct script access allowed');
class Crud extends CI_Controller{
function __construct(){
parent::__construct();
$this->load->model('M_crud');
}
function index() {
$data['record'] = $this->M_crud->getDataMahasiswa();
$this->load->view('v_index',$data);
}
function tambahdata(){
$this->load->view('v_tambahdata');
}
function actiontambah(){
$this->M_crud->actiontambah();
}
function hapusdata($npm){
$this->M_crud->hapusdata($npm);

}
function edit ($npm = 0){
$mhs = $this->M_crud->getSingleMahasiswa($npm);
$data['npm'] = $mhs->npm;
$data['nama'] = $mhs->nama;
$data['kota'] = $mhs->kota;
$this->load->view('v_editdata',$data);
}
function actionupdate() {
$this->M_crud->actionupdate();
}

Code diatas merupakan code dari file Crud.php yang terdapat pada controllers dimana code
tersebut digunakan untuk memanggil atau menghubungkan file pada view dengan file pada
model memberikan fungsi untuk operasi tambah edit dan hapus data yang ada pada
m_crud.php . Dimana pada codingan ini index atau awal tampilan nya itu adalah v_index
sebagai index utama.
<?php if ( ! defined ('BASEPATH')) exit ('no direct script access allowed');
class m_crud extends CI_Controller{
function getDataMahasiswa(){
return$this->db->get('mahasiswa');
}
function actiontambah(){
$npm =$this->input->post('npm', TRUE);
$nama =$this->input->post('nama', TRUE);
$kota =$this->input->post('kota', TRUE);
$this->db->insert('mahasiswa',
array('npm'=>$npm,'nama'=>$nama,'kota'=>$kota));
redirect('crud');
}
function hapusdata($npm){
$this->db->delete('mahasiswa', array('npm'=>$npm));
redirect ('crud');
}
function getSingleMahasiswa($npm){
$query = $this->db->get_where('mahasiswa',
array('npm'=>$npm));
return $query->row();
}
function actionupdate(){
$npm=$this->input->post('npm', TRUE);
$nama=$this->input->post('nama',TRUE);
$kota=$this->input->post('kota', TRUE);
$this->db->where('npm',$npm);
$this->db->update('mahasiswa', array(
'nama'=>$nama,
'kota'=>$kota
));
redirect('crud');

Code diatas merupakan code yang terdapat pada m_crud.php yang ada pada folder model/ .
Code diatas digunakan untuk memberikan fungsi-fungsi seperti tambahdata, hapus data atau
update data informasi yang terhubung dengan database.

<
<center><h1>Latihan CRUD</h1><center><hr/>
<div class="table">
<?php
if($record->num_rows () == 0){
echo "<center><strong>tidak ada data
tersedia</strong></center>";
} else {
?>
<center><h3><strong>Data Mahasiswa</strong></h3></center>
<a href="crud/tambahdata">Tambah data</a>
<table class="table table-striped">
<tr>
<td>NPM</td>
<td>Nama</td>
<td>Kota</td>
<td colspan="2">Action</td>
</tr>
<?php
foreach($record->result_array() as $key){
echo"<tr>";
echo"<td>".$key['npm']."</td>";
echo"<td>".$key['nama']."</td>";
echo"<td>".$key['kota']."</td>";
echo"<td><a href='crud/edit/".$key['npm']."'>Edit</a>";
echo"<td><a href='crud/hapusdata/".
$key['npm']."'>Hapus</a>";
echo"</tr>";
}

?>
</table>
<?php
}
?>
</div>
</body>
</html>

Code diatas merupakan code dari file v_index.php yang ada pada folder view/ . code ini
digunakan untuk merancang tampilan pada browser . Dimana file ini menjadi tampilan utama
yang dirancang menggunakan table yang terdiri dari 5 kolom yaitu , npm nama kota edit dan
hapus dan juga terdapat menu tambah data .
<!DOCTYPE html>
<html>
<head>
<title>Latihan CRUD</title>
<link rel="stylesheet" href="../../../assets/bootstrap.min.css"
/>
<style>
.tabel {
width: 700px;
margin: 0 auto;
padding: 0;
}
</style>
</head>
<body>
<center>
<h1>Latihan CRUD</h1>
</center>
<hr/>
<div class="tabel">
<center>
<h3><strong>Edit Data Mahasiswa</strong></h3>
</center>
<form role="form" action="../actionupdate" method="post">
<div class="form-group">
<label for="npm">NPM</label>
<input type="text" name="npm1" class="form-control"
id="npm" placeholder="NPM Mahasiswa" value="<?php echo $npm;?>" disabled>

<input type="hidden" name="npm" class="form-control"


id="npm2" placeholder="NPM Mahasiswa" value="<?php echo $npm;?>">
</div>
<div class="form-group">
<label for="npm">Nama</label>
<input type="text" name="nama" class="form-control"
id="nama" value="<?php echo $nama;?>" placeholder="Nama">
</div>
<div class="form-group">
<label for="kota">Kota</label>
<input type="text" name="kota" class="form-control"
id="kota" value="<?php echo $kota;?>" placeholder="Kota">
</div>
<button type="submit" class="btn btn-default">
Submit
</button>
</form>
</div>
</body>
</html>

Code diatas merupakan code dari file v_editdata.php yang ada pada folder view/ . Code ini
digunakan untuk merancang tampilan pada browser bagian edit data. Pada tampilan ini
terdapat 3 form input/edit text npm nama dan kota , npm di disable atau tidak bisa diubah ,
sedangkan nama dan kota bisa diedit . juga terdapat button submit untuk memproses edit data
<!DOCTYPE html>
<html>
<head>
<title>Latihan CRUD</title>
<link rel="stylesheet" href="../../assets/bootstrap.min.css"/>
<style>
.tabel{
width: 700px;
margin: 0 auto;
padding: 0;
}

</style>
</head>
<body>
<center><h1>Latihan CRUD</h1></center>
<br>
<div class="tabel">
<center>
<h3><strong>Input Data Mahasiswa</strong></h3>
</center>
<form role="form" action="actiontambah" method="post">
<div class="form-group">
<label for="npm">NPM</label>
<input type="text" name="npm" class="form-control"
id="npm" placeholder="NPM Mahasiswa" required>
</div>
<div class="form-group">
<label for="nama">Nama</label>
<input type="text" name="nama" class="form-control"
id="nama" placeholder="Nama Mahasiswa" required>
</div>
<div class="form-group">
<label for="kota">Kota</label>
<input type="text" name="kota" class="form-control"
id="kota" placeholder="Kota" required>
</div>
<button type="submit" class="btn-btn-default">
Submit
</button>
</form>
</div>
</body>
</html>

Code diatas merupakan code dari file v_tambahdata.php yang ada pada folder view/ . Code
ini digunakan untuk merancang tampilan pada browser bagian tambah data. Pada tampilan ini
terdapat 3 form input/edit text npm nama dan kota diaman disi untuk menambah data. juga
terdapat button submit untuk memproses tambah data yang nantinya dimasukan pada
database .

G. OUTPUT PROGRAM

Gambar 4. Ketika mengetikkan localhost/4IA04/index.php/CRUD/tambahdata

Gambar 5. Ketika menginput data mahasiswa

Gambar 6. Ketika data mahasiswa berhasil di input

Gambar 7. Ketika klik action tambah data

Gambar 8. Ketika klik action hapus data

DAFTAR PUSTAKA

http://fiftin.staff.uad.ac.id/file/framework4.pdf
http://ilmuti.org/wp-content/uploads/2014/03/mengenal-codeigniter-framework1.pdf
http://pintarci.blogspot.com/2014/09/pengenalan-struktur-codeigniter.html

Anda mungkin juga menyukai