Bab 5 CodeIgniter (CI)

dokumen-dokumen yang mirip
BAB III IMPLEMENTASI LIBRARY CODEIGNITER

Pemrograman Web Berbasis Framework. Pertemuan 4 : Konsep MVC : Controller. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Mengenal Codeigniter (CI) Framework

CODEIGNITER 3. Belajar Mandiri. Zamah Sari

I. Pengenalan Play Framework

Pemrograman Web Berbasis Framework. Pertemuan 5 : Konsep MVC : View. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

BERKENALAN DENGAN MODEL CODEIGNITER

Materi 2 E-Commerce Lanjut (CodeIgniter) 3 SKS Semester 7 S1 Sistem Informasi UNIKOM 2015 Nizar Rabbi Radliya

PRAKTIKUM. Rekayasa Web. Modul 2: CRUD CodeIgniter Part I. Laboratorium Teknik Informatika Universitas Pasundan

Tutorial Code Igniter 2010

Belajar PHP dengan Framework Code Igniter

IKG3A3 / Software Project II

FRAMEWORK CODEIGNITER

Bab 2 Tinjauan Pustaka 2.1 Kajian Pustaka

Pemrograman Web Berbasis Framework. Pertemuan 6 : Konsep MVC : Model. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Framework CodeIgniter Part 1

Advantages. Keunggulan :

Belajar dasar codeigniter framework

PHP dan Framework CodeIgniter

Framework untuk web yang dibuat dalam bentuk Web Berbasis Model-View-Controller (MVC)

RANCANG BANGUN SISTEM INFORMASI INVENTARISASI LAPORAN TUGAS AKHIR MAHASISWA PROGRAM STUDI TEKNIK INFORMATIKA BERBASIS FRAMEWORK CODEIGNITER

BAB 2 LANDASAN TEORI

PEMROGRAMAN PHP DASAR

PRAKTIKUM. Rekayasa Web. Modul 6: Restful API Server & Client Codeigniter. Laboratorium Teknik Informatika Universitas Pasundan

Pengembangan Aplikasi Menggunakan Framework Code Igniter 3 Level Basic. Helmy Faisal Muttaqin, S.Kom, M.T

Fungsi Insert Data dalam CRUD (CREATE READ UPDATE DELETE) di Codeigniter

Pengantar. Persyaratan Sistem. Cara Menginstall

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah

Membangun Aplikasi Berbasis Web Dengan CodeIgniter Framework. Helmy Faisal Muttaqin

LAPORAN PRAKTIKUM TEKNOLOGI FRAMEWORK PERTEMUAN KE 1

MODUL 4 PHP PART 1 (PENGENALAN PHP + VARIABEL)

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. sebuah sistem pencarian lokasi kuliner berbasis mobile web untuk wilayah

BAB II ANALISIS DAN PERANCANGAN. pendekatan perancangan sistem berorientasi objek. Perancangan sistem

E-Book PEMROGRAMAN CLIENT SERVER BERBASIS PHP DENGAN FRAMEWORK CODEIGNITER. Disusun Oleh: Arfian Hidayat, S.Kom

E-trik Ajax. Database MySQL. Dedi Alnas

Mengembangkan Component Joomla Oleh : Garry B.

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Tabel 2.1 Penelitian Sebelumnya. Fauziah Ayu Kusumawardani (2016)

BAB II ANALISIS DAN PERANCANGAN. Sistem informasi penjualan dan pembelian Tissue SMART NARENA

Bagian II Dasar-Dasar CodeIgniter

3.1 APLIKASI YANG DITANGANI OLEH CODE GENERATOR

BAB I PENDAHULUAN LATAR BELAKANG CONTOH KASUS. Diktat Mata Kuliah Aplikasi Teknologi Online Oleh : Andri Heryandi

Modul Pelatihan Framework CodeIgniter

E-trik Ajax. Ajax dan MySQL. Dedi Alnas

MEMBUAT CRUD DENGAN CODEIGNITER : INPUT DATA KE DATABASE

Sanksi Pelanggaran Pasal 72 Undang-undang Nomor 19 Tahun 2002 Tentang Hak Cipta 1. Barangsiapa dengan sengaja melanggar dan tanpa hak melakukan

E-Book PEMROGRAMAN CLIENT SERVER BERBASIS PHP DENGAN FRAMEWORK CODEIGNITER. Disusun Oleh: Arfian Hidayat, S.Kom

STMIK DIKTAT SINGKAT MACROMEDIA DREAMWEAVER 8 SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER TASIKMALAYA.

MODUL PEMOGRAMAN WEB II STMIK IM BANDUNG MODUL PEMOGRAMAN WEB II. Oleh: CHALIFA CHAZAR. Chalifa Chazar edu.script.id

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI

Pemrograman Web Week 2. Team Teaching

PHP Frameworks. Pemrograman Web

SMH2D3 Web Programming. 7 BAB V PHP SESSION & COOKIES. H a l IDENTITAS. Kajian Teknik pemrograman menggunakan PHP

Sering kita mendengar tentang MVC Framework PHP tetapi kurang mengerti belum arti dari

CodeIgniter.

Sanksi Pelanggaran Pasal 72 Undang-undang Nomor 19 Tahun 2002 Tentang Hak Cipta 1. Barangsiapa dengan sengaja melanggar dan tanpa hak melakukan

Pemrograman Web Lanjut 2017

BAB III LANDASAN TEORI

BAB III LANDASAN TEORI. Pada bab ini akan dibahas dasar-dasar teori yang berkaitan dengan pembangunan sistem.

BAB III LANDASAN TEORI

DESAIN WEB STATIS DAN HTML. Dahlan Abdullah Website :

MODUL 8 Insert, Update, & delete

Modul-7 CRUD & Searching. Pemograman Web TEKNIK INFORMATIKA UNIVERSITAS PASUNDAN BANDUNG

Pengenalan Script. Definisi HTML

AJAX. Pemrograman Web 1. Asynchronous JavaScript and XML. Genap

TUTORIAL CODEIGNITER Langkah Tepat menjadi Web Developer Handal, menguasai CodeIgniter, jalan membuat aplikasi berbasis website lebih mudah

BAB III LANDASAN TEORI

STRUKTUR DASAR PHP ASUMSI 02/10/2014

Mengenal Framework Codeigniter

Membuat Database mysql dengan PhpMyAdmin

PELATIHAN PHP ALUMNI DAN CALON ALUMNI INSTITUT BISNIS DAN INFORMATIKA STIKOM SURABAYA. By: Julianto Lemantara, S,Kom., M.Eng

WELCOME MESSAGE WE STARTED AT. 10 March 2016 dimana komunitas ini didirikan

BAB 2 LANDASAN TEORI. Istilah Komputer (Computer) diambil dari bahasa Latin Computare yang berarti menghitung

Tag dasar yang akan kita gunakan untuk membuat form di HTML adalah tag form, input, textarea, select dan option.

KBKF53110 WEB PROGRAMMING

Membuat CRUD Sederhana pada Framework Laravel

BAB 2 LANDASAN TEORI. 2.1 Sekilas Tentang Sistem Ujian Konevensional

Membuat Toko Online dengan Teknik OOP, MVC, dan AJAX

KONTRAK BELAJAR. Nama Mata Kuliah : Web Dinamis Lanjut Kode Mata Kuliah : IKB : Wahyu Widodo, S.Kom Semester : 5

IMPLEMENTASI MVC PADA SITUS PORTAL PENCARIAN UNIVERSITAS DI DAERAH ISTIMEWA YOGYAKARTA. Rionaldi Sugiarto Katon Wijana, Wimmie Handiwidjojo

Menangani Input dari User

BAB 2 LANDASAN TEORI

Mahasiswa memahami Pengertian, fungsi, aplikasi untuk menjalankan JavaScript, cara menjalankan kode, cara memasukkan kode JavaScript ke dalam HTML

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Penerapan Teknologi Framework CodeIgniter untuk. membangun Diskusi Online oleh Ahmad Muhajir ( Akakom 2016,

PRAKTIKUM APLIKASI WEB DAY 8. (PHP : Pernyataan Kontrol)

WAP (3) Muhammad Zen S. Hadi, ST. MSc. WAP - The Wireless Application Protocol

Script PHP dan MySQL J A M K E E M P A T

BAB III LANDASAN TEORI

Bab 2 Tinjauan Pustaka

Modul 5. Membuat Formulir Pada Template. Disusun oleh. Sri Siska Wirdaniyati JURUSAN STATISTIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

Membuat Template dengan Bootstrap pada Codeigniter

Pemrograman Web Berbasis Framework. Pertemuan 7 : Keamanan Aplikasi. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Pemrograman Web Berbasis Framework. Pertemuan 8 : Penanganan File dan Image. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

MODUL 3 DASAR-DASAR PHP

SISTEM MONITORING PERALATAN BENGKEL MENGGUNAKAN METODE WATERFALL DENGAN MVC CODEIGNITER. Andriyani Siyoperman Gea ABSTRAK

BAB 3 LANDASAN TEORI

BAB III LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA DAN DASAR TEORI

MODUL PRAKTIKUM PEMROGRAMAN WEB

PRAKTIKUM ASP.NET 12

HASIL DAN PEMBAHASAN Investigasi Awal

Transkripsi:

Bab 5 CodeIgniter (CI) A. T U J U A N : 1. Mempelajari dan mempraktekan tag-tag bahasa CodeIgniter untuk membuat halaman dinamis yang lebih cepat dan efisien. 2. Dapat membuat sebuah halaman web dinamis dengan menggunakan CodeIgniter pada sebuah studi kasus. B. DASAR TEORI : Code Igniter (CI) adalah salah satu framework php yang tangguh dan popular. Code Igniter tergolong framework dengan ukuran kecil dan cukup mudah di kuasai. CI juga datang dengan buku manual yang tergolong lengkap. Dan juga Code Igniter adalah sebuah framework PHP. Framework itu sendiri adalah suatu kerangka kerja yang berupa sekumpulan folder yang memuat file-file php yang menyediakan class libraries, helpers, plugins dan lainnya. Framework menyediakan konfigurasi dan teknik coding tertentu. 1. MVC: Model-View-Controller Konsep MVC adalah konsep pemisahan antara logic dengan tampilan dan database. Manfaat konsep ini adalah, membuat coding logic lebih simple, karena sudah di pisah dengan code untuk tampilan dan membuat programmer dapat bekerja secara terpisah dengan designer. Programmer mengerjakan logic, sedangkan designer berkutat dengan design dan tampilan. a) Model: Model merepresentasikan data aplikasi kita, baik dalam database, dalam XML file atau di tempat lain. Juga, berinteraksi dengan database dilakukan di sini. Sebagai contoh, model akan memungkinkan kita untuk mengambil, mengubah, menyisipkan, dan menghapus data dari database. Semua tindakan yang memerlukan aplikasi untuk berurusan dengan database harus dimasukkan ke dalam model. b) Views: File yang ditempatkan di sini berfungsi untuk menampilkan data ke halaman web HTML, RSS, CSS, JavaScript dll. Tidak ada logika

pemrograman, insert atau query database. c) Controller: Ini bertindak sebagai penghubung antara model dan view, dan logika pemrograman terjadi di sini. Gambar 3.1 MVC CodeIgniter 2. Struktur File CI CI adalah sebuah php framework yang berupa kumpulan folder dan file php, java script,css,txt dan file berbasis web lainnya dengan setting tertentu untuk menggunakannya dan menyediakan library dan helper yang dapat di manfaatkan di dalam pemrograman php. CI di jalankan under web dan harus dengan web server. Program CI cukup di letakkan di bawah folder directory web server anda. Berikut adalah struktur file CI :

CI System System Application Scaffolding Cache CodeIgniter Database Font Helpers Language Libraries Logs Plugins Gambar 3.2 Struktur File CI 3. Flow Chart Aplikasi Gambar berikut menggambarkan bagaimana data mengalir sepanjang sistem:

Gambar 3.3 Flow Chart Aplikasi pada CI 1. File index.php berfungsi sebagai front controller, menginisialisasi sumber daya dasar yang dibutuhkan untuk menjalankan CodeIgniter. 2. Router memeriksa aktivitas permintaan HTTP untuk menentukan apa yang harus dilakukan dengan permintaan itu. 3. Jika file cache ada, itu dikirim langsung ke browser, melewati sistem normal. 4. Security. Sebelum pengontrol aplikasi dimuat, permintaan HTTP dan data user dikirimkan disaring untuk keamanan. 5. Controller memanggil model, core library, plugin, bantuan, dan setiap sumber daya lain yang diperlukan untuk memproses permintaan khusus. 6. View diselesaikan diberikan kemudian dikirim ke browser web untuk dilihat. Jika caching diaktifkan, maka view masuk ke cache sehingga pada permintaan berikutnya dapat dilayani oleh cache. C. LANGKAH-LANGKAH & PERCOBAAN : a. Anda harus menyiapkan web server, anda boleh memakai web server apache atau IIS. b. Letakkan dokumen anda pada dokumen root dari web server yang anda pakai, sebagai contoh : dokumen root web server Apache dengan sistem operasi windows berada pada folder : C:\Program Files\Apache Group\Apache\htdocs c. Tulis kode-kode RSS berikut ini kedalam Notepad, simpan dalam extensi html atau htm dan kemudian letakkan kedalam direktori root web server anda. Kemudian panggil file tersebut dengan cara sebagai berikut : http:\\localhost\nama_file.xml atau

http:\\ipaddresskomputeranda\nama_file.xml atau http:\\namakomputeranda\nama_file.xml d. Cobalah skrip-skrip dibawah ini : Membuat Hello World di CI Berikut kita akan mempraktekan pemrograman php dengan CI. Kita akan menampilkan tulisan Hello World ke dalam browser kita. Langkah-langkah nya adalah sbb : a) Buka Text Editor anda. Lalu buatlah sebuah controller di dalam direktory CI anda, yaitu di : system/application/controllers. b) Tulislah code sbb : <?php class Hello extends controller function index() $this->load->view('helloview'); } }? > Beri nama file hello.php. Yang harus di perhatikan : Nama class harus di awali huruf besar. Nama class harus sama dengan nama file. Function index adalah function default. Di url tidak perlu di tuliskan nama function index nya. Kalau nama function selain index, perlu di tulis di url nya. c) Buat file baru dengan nama helloview.php di system/application/views Tulis code sbb : <? echo Hello World ;?> d) Misal base_url : http://localhost/ci, maka jalankan di url anda menjadi : http://localhost/ci/hello. Maka akan muncul hasil nya.

Membuat form dengan CI Form pada CI dapat di buat dengan menggunakan helper atau dengan syntax html biasa. Pada langkah berikutnya akan dicoba membuat form dengan menggunakan helper. Buatlah sebuah controller. Ketik code berikut : class Form extends Controller function index() $this->load->view('form'); } function jumlah() $angka1=$this->input->post('angka1'); $angka2=$this->input->post('angka2'); $hasil=$angka1+$angka2; echo "Hasil nya adalah : $hasil"; echo "<br />".anchor("form/index","kembali"); } }?> Beri nama file form.php. Buat sebuah view dengan nama form.php. Ketikkan code sbb : <html> <head> <title>membuat Form input penjumlahan dengan CI</title> </head> <body> <table> <? echo form_open('form/jumlah'); $data1=array( 'name' => 'angka1', 'size'=>'15'); echo "<tr><td>angka 1</td><td> :</td><td>".form_input($data1)."</td></tr>"; $data2=array( 'name' => 'angka2', 'size'=>'15'); echo "<tr><td>angka 2</td><td> :</td><td> ".form_input($data2)."</td></tr>"; echo "<tr><td>".form_submit('mysubmit','ok') ; echo " ".form_reset('mysubmit','clear')." </td></tr>";?> </table> </body> </html>

Pada contoh di atas kita load helper di file autoload.php untuk load secara otomatis. $this->load->helper('form'); Helper yang kita gunakan, kita input di view. Syntax yang di gunakan adalah : - form_open ('form/jumlah') Syntax di atas sama dengan syntax html berikut : <form method= post action= http://localhost/ciprivate/index.php/form > atau, gunakan base_url(), untuk mengantisipasi perubahan pada url. <form method= post action= <?=base_url();?>index.php/form > Nilai base_url() di atas mengambil nilai base_url di file config.php. - form_input ('username','sofwan') Minimal, kita memasukkan nama field dan value pada syntax form_input. Jika menggunakan parameter yang lebih banyak, yaitu : $data1=array( 'name' => 'angka1', 'size'=>'15'); echo form_input($data1); - form_submit('my submit','ok'); identik dengan : <input type= submit value= OK > - form_reset Sama penggunaan nya dengan form_reset. Library Database. Menggunakan library ini, kita perlu mengaktifkan sebelum nya, dengan cara : $this->load->database() atau dengan $this->load->library('database');

Untuk loading otomatis, kita perlu mengaktifkan library tsb dengan cara memberikan perintah $this>load->library('database'); 1. Query standard dengan hasil multiple (object version) $query= select nama,alamat,telp from mahasiswa ; $hasil=$this->db->query( $query ); foreach ($hasil as $row) echo $row->nama; echo $row->alamat; echo $row->telp; } echo Hasil Nilai :. $hasil->num_rows(); 2. Query standard dengan hasil multiple (Array version) $query= select nama,alamat,telp from mahasiswa ; $hasil=$this->db->query( $query ); foreach ($hasil as $row) echo $row['nama']; echo $row['alamat']; echo $row['telp']; } echo Hasil Nilai :. $hasil->num_rows(); 3. Query dengan hasil tunggal Untuk menampilkan sebuah hasil query, kita dapat menggunakan syntax sbb : $query->row() $query= select nama from mahasiswa limit 1 ; $hasil=$this->db->query( $query ); $hasilnya=$hasil->row(); echo $hasilnya->nama; 4. Query Bindings

Yaitu membuat query dengan nilai yang dapat berubah-ubah. $sql= select * from mahasiswa where nama=? And kota=? ; $this->db->query($sql,array('andi','jakarta'); 5. Active Record Class CI menggunakan teknik active record, di samping juga dapat memproses perintah sql. Cara ini adalah cara lain yang di gunakan di CI untuk memproses query. Perintah-perintah di dalam Active record class adalah sbb : a. Selecting Data - $this->db->get() Fungsi : Untuk menampilkan semua isi tabel mahasiswa. - $this->db->get('mahasiswa'); // Sama dengan : select * from mahasiswa. Parameter pertama dan kedua memuat limit dan offset, yaitu : - $query=$this->db->get('mytable',10,20) Menghasilkan : select * from mytable limit 10,20 - $this->db->get_where(); Fungsi : Untuk menampilkan semua isi tabel dengan di tambah kondisi where $this->db-> get_where ('mytable',array('id'=>$id),$limit,$offset); // Sama dengan : select * from mytable where id='$id' limit 20, 10 ; - $this->db->select(); Fungsi : Untuk memilih tabel yang akan di proses dengan perintah select. $this->db->select('nama,nilai,alamat'); $query=$this->db->get('mahasiswa); // Sama dengan : select nama,nilai,alamat from mahasiswa; - $this->db->from(); Fungsi : Untuk memilih tabel.

$this->db->select('nama,nilai,alamat'); $this->db->from('mahasiswa'); $query=$this->db->get(); // Sama dengan : select nama,nilai,alamat from mahasiswa; - $this->db->join(); Fungsi : Untuk melakukan perintah join terhadap 2 atau lebih tabel. $this->db->select( * ); $this->db->from( nilai ); $this->db->join( mahasiswa, mahasiswa.nim=nilai.nim ); $query=$this->db->get(); // Sama dengan : select * from nilai join mahasiswa on mahasiswa.nim=nilai.nim ; - $this->db->where(); Fungsi : Untuk menerapkan kondisi where suatu syntax query. $this->db->where('nama','opan'); $query= $this->db->get('mahasiswa'); // sama dengan : select * from mahasiswa where nama='opan' ; - $this->db->like(); Fungsi : Menyatakan syntax like ke dalam query. $this->db->like('nama','sofwan'); $query=$this->db->get( mahasiswa ); // sama dengan : select * from mahasiwa where nama like '%sofwan% ; - $this->db->group_by() Fungsi : Menambahkan perintah group by pada query. $this->db->group_by( kota ); $query=$this->db->get( mahasiswa ); // Sama dengan : select * from mahasiswa group by kota ; b.inserting Data - $this->db->insert();

Fungsi : Untuk menginsert data ke dalam sebuah tabel. Kita dapat menggunakan data yang akan di insert berupa array atau object. Contoh, menggunakan array : $data=array( 'nim'=>'0811500292', 'nama'=>'ali', 'kota'=>'jakarta'); $this->db->insert('mahasiswa',$data); Contoh menggunakan Object : class kelasku var $nim= 0811500292, var $nama= ali, var $kota= jakarta } $obj=new kelasku; $this->db->insert( mahasiswa,$obj); Kedua contoh di atas sama dengan perintah : // insert into mahasiswa (nim,nama,kota) values('0811500292','ali','jakarta'); - $this->db->set(); Fungsi : Fungsi ini mengambil data untuk di lakukan perintah insert dan update. $this->db->set('nama',$nama); $this->db->insert('mahasiswa'); // Sama dengan : insert into mahasiswa (nama) values ('$nama}'); c.updating Data - $this->db->update(); Fungsi : Untuk update data $data=array( 'nim'=>'$nim', 'nama'=>'$nama', 'kota'=>'$kota'); $this->db->where('id',$id); $this->db->update('mahasiswa',$data);

// Sama dengan : update mahasiswa set nim= $nim,nama= $nama,kota= $kota where id= $id ; Atau dapat juga dengan menggunakan object. Class kelasku var $nim= $vnim, var $nama= $vnama, var $kota= $vkota ; } $object = new kelasku; $this->db->where ('id',$id); $this->db->update ( mahasiswa,$object); d. Deleting Data - $this->db->delete() Fungsi : Menghapus data di dalam query contoh : $this->db->delete( mahasiswa,array('nim'->$nim)); // Sama dengan : delete mahasiswa where nim= $nim D. TUGAS WORKSHOP Buat Halaman Web Dinamis dengan Menggunakan CI dengan platform database MySQL pada tampilan berita berikut ini : Kelas : D3-A Pilih D3-A atau D3-B

Bila dipilih D3-B Muncul tampilan berikut ini : Kelas : D3-B