SlideShare a Scribd company logo
1 of 27
Download to read offline
I Putu Arya Dharmaadi, S.T., M.T.
Dosen Jurusan Teknologi Informasi
Universitas Udayana
http://aryadharmaadi.com
15 November 2015 http://aryadharmaadi.com 2
Pendahuluan
AJAX dimanfaatkan untuk membuat web interaktif
dan dinamis tanpa perlu membuat browser melakukan
refresh ketika meminta data ke server
AJAX memungkinkan semua dapat dilakukan secara
instan, tanpa perlu lagi menunggu halaman di-reload,
sehingga aplikasi web mirip dengan aplikasi desktop
dalam hal responsibilitas maupun interaktifitas
Saat ini, AJAX sudah menjadi teknologi yang wajib
diterapkan dalam pengembangan web modern (web
2.0)
15 November 2015 http://aryadharmaadi.com 3
Hubungan antara HTML, Ajax,
PHP, dan MySQL
15 November 2015 http://aryadharmaadi.com 4
WEB BROWSER
WEB SERVER
HTML + CSS
AJAX ENGINE
Javascript call HTML + CSS
WEB SERVER (PHP)
DBMS (MySQL)
Query data Hasil query
HTTP Request XML/JSON data
Penjelasan Singkat
Pada saat dibuka, web browser masih kosong
Kemudian browser membuka sebuah halaman
sehingga browser melakukan request ke server
Hasil request adalah script HTML, CSS, JS (termasuk
Ajax Engine), dan script-script tersebut di-load ke web
browser
Selanjutnya seperti pada gambar di atas, ketika user
akan melakukan suatu perintah pada aplikasi,
halaman HTML tetap diam, namun di belakang layar,
AJAX Engine yang melakukan http request ke server
15 November 2015 http://aryadharmaadi.com 5
Antara jQuery dan AJAX
jQuery merupakan sebuah library Javascript sehingga
mempermudah manipulasi komponen di dokumen
HTML, menangani event, animasi, efek, dll.
Selain itu, jQuery mempermudah developer web
untuk memproses interaksi AJAX
Tanpa library seperti jQuery, menerapkan AJAX akan
lebih sulit, panjang, dan rumit, terutama untuk
pemula yang baru belajar Javascript.
15 November 2015 http://aryadharmaadi.com 6
Memulai Project
Sebagai latihan, akan dibuat sebuah aplikasi ajax
berdasarkan project yang sebelumnya (aplikasi insert
nama dan hobi)
Aplikasi ajax ini akan mencari nama pada tabel
‘daftar_hobi’ dan akan menampilkan hobinya.
So, jalankan web server pada komputer anda
Dari project yang sebelumnya (folder latihan), buatlah
folder untuk project yang baru dengan nama ‘ajax’
Buatlah sebuah file html, dengan nama ‘index.html’
15 November 2015 http://aryadharmaadi.com 7
Bagian header file index.html
15 November 2015 http://aryadharmaadi.com 8
Bagian body file index.html
15 November 2015 http://aryadharmaadi.com 9
Keterangan
Project ini memanfaatkan library jQueryMobile untuk
mempercantik tampilan web dan library jQuery untuk
mempermudah penggunaan AJAX
Poin yang paling penting adalah:
Menyediakan element untuk menampilkan hasil
pencarian, yaitu div dengan id=“result”
Membuat form untuk pengiriman data, dengan
id=“form-pencarian” action=“get_hobi.php”
method=“post”
Form tersebut terdiri dari input dengan type=“text” dan
input dengan type=“submit”
15 November 2015 http://aryadharmaadi.com 10
Tampilan index.html
15 November 2015 http://aryadharmaadi.com 11
Buat Script untuk AJAX
Setelah selesai membuat script HTML, selanjutnya
buat script untuk penanganan AJAX
Script bisa ditulis di file terpisah atau ditulis di bagian
head file index.html
Dalam project ini, script ditulis di bagian head file
index.html karena code-nya sedikit
15 November 2015 http://aryadharmaadi.com 12
Javascript
15 November 2015 http://aryadharmaadi.com 13
Keterangan
$(document).ready() berfungsi untuk pengecek event,
jadi apabila semua elemen pada dokumen HTML
sudah di-load semua, maka script di dalam blok fungsi
$(document).ready() akan dijalankan
$('#form-pencarian').submit() berfungsi sebagai
listener event submit. Jadi, apabila form pencarian di-
klik submit, maka script di dalam blok fungsi
$('#form-pencarian').submit() akan dijalankan
15 November 2015 http://aryadharmaadi.com 14
Keterangan (2)
event.preventDefault() berfungsi untuk menghentikan
pengiriman data pada form secara normal. Fungsi
tersebut digunakan karena pada project ini akan
menggunakan pengiriman data melalui AJAX sehingga
pengiriman data secara normal harus dihentikan.
$.ajax() merupakan proses pengiriman data dengan
AJAX, dengan parameter:
type  method pengiriman, bisa “GET” atau “POST”
url  server tujuan pengiriman data
15 November 2015 http://aryadharmaadi.com 15
Keterangan (3)
data  data form yang akan dikirimkan ke server, bisa
didapatkan dengan menggunakan form.serialize(). Jika
ingin menulis data form secara manual, carany adalah
“nama=“+$(‘#nama’).val()”
dataType  format data yang akan diterima dari server,
bisa “XML” atau “JSON”
success  fungsi yang akan dijalankan ketika AJAX
berhasil mengirimkan data ke server dan server
memberikan respon balik. Respon balik dari server akan
disimpan di variabel data.
15 November 2015 http://aryadharmaadi.com 16
Buat File PHP untuk Koneksi ke
Database
File PHP untuk koneksi ke database sudah dibahas
pada project sebelumnya
Untuk itu, buatlah file dengan nama database.php
yang disalin dari project sebelumnya
File ini hanya khusus menangani koneksi ke database,
sedangkan penggunaan database (query database)
akan dilakukan di file PHP yang lain dengan meng-
include-kan file database.php
15 November 2015 http://aryadharmaadi.com 17
File database.php
15 November 2015 http://aryadharmaadi.com 18
Buat File PHP (Server Tujuan AJAX)
Setelah file database.php selesai dibuat, sekarang
buatlah file yang menjadi target pengiriman form
(get_hobi.php)
File tersebut akan meng-include-kan file database.php
agar bisa terhubung ke database
File get_hobi.php mirip dengan file project sebelumnya
yang meng-query data, namun di file get_hobi.php
akan dibuat untuk me-return data dalam bentuk JSON
15 November 2015 http://aryadharmaadi.com 19
15 November 2015 http://aryadharmaadi.com 20
Keterangan Singkat
Require “database.php” merupakan code untuk
memanggil file database.php dan meng-include-kan
semua variabel dan code-nya ke dalam get_hobi.php
Penggunaan prepare statement sama dengan project
sebelumnya
Untuk mendapatkan hasil dari prepare statement,
digunakan method bind_result($nama,$hobi), dimana
jumlah variabel pada parameternya bind_result
disesuaikan dengan jumlah kolom yang di-query dari
database
15 November 2015 http://aryadharmaadi.com 21
Keterangan Singkat (2)
Untuk mendapatkan hasil per baris-nya, gunakan
fungsi fetch(), dimana fungsi ini akan menggeser
pointer dari satu row hasil data query ke row
selanjutnya dan menyimpan datanya ke variabel
$nama dan $hobi .
Fungsi tersebut akan menghasilkan true jika baris
yang ditunjuk memiliki data dan menghasilkan false
jika baris yang ditunjuk tidak ada.
Fungsi json_encode adalah fungsi untuk mengubah
array menjadi format JSON sehingga mudah dibaca
oleh AJAX engine
15 November 2015 http://aryadharmaadi.com 22
Screen Shot Direktori Project
15 November 2015 http://aryadharmaadi.com 23
Hasil Running
15 November 2015 http://aryadharmaadi.com 24
Penutup
AJAX mendukung asynchronous sehingga halaman
web dapat di-update seperlunya.
Proses update website menjadi lebih cepat karena
tidak seluruh halaman di-download.
Untuk mendapatkan source code lengkap dari project
tadi, bisa diunduh di: http://adf.ly/1Rf5Ph
Untuk membaca materi ini secara lengkap, silahkan
buka di halaman:
http://aryadharmaadi.com/blog/2015/11/15/kolaborasi-
jquery-ajax-php-mysql/
15 November 2015 http://aryadharmaadi.com 25
Next . . .
Framework CodeIgniter
15 November 2015 http://aryadharmaadi.com 26
Referensi
http://jquery.com
http://w3school.com
http://php.net/manual
15 November 2015 http://aryadharmaadi.com 27

More Related Content

What's hot (20)

Dom
DomDom
Dom
 
Pertemuan 9 preferences dan menu
Pertemuan 9 preferences dan menuPertemuan 9 preferences dan menu
Pertemuan 9 preferences dan menu
 
Sessions in php
Sessions in php Sessions in php
Sessions in php
 
Koneksi PHP ke Database MySQL menggunakan MySQLi Extension
Koneksi PHP ke Database MySQL menggunakan MySQLi ExtensionKoneksi PHP ke Database MySQL menggunakan MySQLi Extension
Koneksi PHP ke Database MySQL menggunakan MySQLi Extension
 
Intro to Jinja2 Templates - San Francisco Flask Meetup
Intro to Jinja2 Templates - San Francisco Flask MeetupIntro to Jinja2 Templates - San Francisco Flask Meetup
Intro to Jinja2 Templates - San Francisco Flask Meetup
 
Sequence Diagram.ppt
Sequence Diagram.pptSequence Diagram.ppt
Sequence Diagram.ppt
 
CSS Layouting #1 : Display
CSS Layouting #1 : DisplayCSS Layouting #1 : Display
CSS Layouting #1 : Display
 
HTML Dasar : #1 Pendahuluan
HTML Dasar : #1 PendahuluanHTML Dasar : #1 Pendahuluan
HTML Dasar : #1 Pendahuluan
 
HTML Dasar : #9 Tabel
HTML Dasar : #9 TabelHTML Dasar : #9 Tabel
HTML Dasar : #9 Tabel
 
HTML Dasar : #8 Image
HTML Dasar : #8 ImageHTML Dasar : #8 Image
HTML Dasar : #8 Image
 
Flask Basics
Flask BasicsFlask Basics
Flask Basics
 
Class 3 - PHP Functions
Class 3 - PHP FunctionsClass 3 - PHP Functions
Class 3 - PHP Functions
 
[PBO] Pertemuan 5 - Polymorphism
[PBO] Pertemuan 5 - Polymorphism[PBO] Pertemuan 5 - Polymorphism
[PBO] Pertemuan 5 - Polymorphism
 
HTML Dasar : #4 Paragraf
HTML Dasar : #4 ParagrafHTML Dasar : #4 Paragraf
HTML Dasar : #4 Paragraf
 
Html Form Controls
Html Form ControlsHtml Form Controls
Html Form Controls
 
File Uploading in PHP
File Uploading in PHPFile Uploading in PHP
File Uploading in PHP
 
HTML Dasar : #2 Hello World
HTML Dasar : #2 Hello WorldHTML Dasar : #2 Hello World
HTML Dasar : #2 Hello World
 
Php Tutorials for Beginners
Php Tutorials for BeginnersPhp Tutorials for Beginners
Php Tutorials for Beginners
 
CSS Basics
CSS BasicsCSS Basics
CSS Basics
 
Algoritma dan Struktur Data (Python) - Struktur Data
Algoritma dan Struktur Data (Python) - Struktur DataAlgoritma dan Struktur Data (Python) - Struktur Data
Algoritma dan Struktur Data (Python) - Struktur Data
 

Viewers also liked

Kelas, Kontrol Kelas, dan Konstruktor
Kelas, Kontrol Kelas, dan KonstruktorKelas, Kontrol Kelas, dan Konstruktor
Kelas, Kontrol Kelas, dan KonstruktorI Putu Arya Dharmaadi
 
Source File Compilation & Make Program
Source File Compilation & Make ProgramSource File Compilation & Make Program
Source File Compilation & Make ProgramI Putu Arya Dharmaadi
 
Pertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objekPertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objekI Putu Arya Dharmaadi
 
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQueryEntri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQueryAchmad Solichin
 
Panduan lengkap php ajax j query
Panduan lengkap php ajax j queryPanduan lengkap php ajax j query
Panduan lengkap php ajax j queryapriatin
 
Belajar pemrograman java dasar
Belajar pemrograman java dasarBelajar pemrograman java dasar
Belajar pemrograman java dasarVina Rahmi
 
Modul Praktek Java OOP
Modul Praktek Java OOP Modul Praktek Java OOP
Modul Praktek Java OOP Zaenal Arifin
 
modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)Reza Pramana
 
Materi pelatihan java fundamental
Materi pelatihan java fundamentalMateri pelatihan java fundamental
Materi pelatihan java fundamentalFanani M. Ihsan
 

Viewers also liked (17)

Kelas, Kontrol Kelas, dan Konstruktor
Kelas, Kontrol Kelas, dan KonstruktorKelas, Kontrol Kelas, dan Konstruktor
Kelas, Kontrol Kelas, dan Konstruktor
 
String Dan Array
String Dan ArrayString Dan Array
String Dan Array
 
Pengenalan Framework CodeIgniter
Pengenalan Framework CodeIgniterPengenalan Framework CodeIgniter
Pengenalan Framework CodeIgniter
 
PHP (Input Data) dan MySQL
PHP (Input Data) dan MySQLPHP (Input Data) dan MySQL
PHP (Input Data) dan MySQL
 
Ac sos
Ac sosAc sos
Ac sos
 
Pengenalan Pemrograman Java
Pengenalan Pemrograman JavaPengenalan Pemrograman Java
Pengenalan Pemrograman Java
 
Android Location
Android LocationAndroid Location
Android Location
 
Source File Compilation & Make Program
Source File Compilation & Make ProgramSource File Compilation & Make Program
Source File Compilation & Make Program
 
Pertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objekPertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objek
 
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQueryEntri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
Entri, Edit, Delete, Tampil (CRUD) dengan PHP dan Ajax JQuery
 
Panduan lengkap php ajax j query
Panduan lengkap php ajax j queryPanduan lengkap php ajax j query
Panduan lengkap php ajax j query
 
Belajar pemrograman java dasar
Belajar pemrograman java dasarBelajar pemrograman java dasar
Belajar pemrograman java dasar
 
Buku jvv jilid 1 ok
Buku jvv jilid 1 okBuku jvv jilid 1 ok
Buku jvv jilid 1 ok
 
Modul Praktek Java OOP
Modul Praktek Java OOP Modul Praktek Java OOP
Modul Praktek Java OOP
 
modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)
 
Materi pelatihan java fundamental
Materi pelatihan java fundamentalMateri pelatihan java fundamental
Materi pelatihan java fundamental
 
Buku jvv jilid 2 ok
Buku jvv jilid 2 okBuku jvv jilid 2 ok
Buku jvv jilid 2 ok
 

Similar to Kolaborasi jQuery, AJAX, PHP, dan MySQL

Jquery Ajax Part 1 by Yussan
Jquery Ajax Part 1 by YussanJquery Ajax Part 1 by Yussan
Jquery Ajax Part 1 by YussanYusuf A.H.
 
Panduan lengkap php ajax j query
Panduan lengkap php ajax j queryPanduan lengkap php ajax j query
Panduan lengkap php ajax j queryfadhilmaulana
 
2 panduan lengkap php ajax j query
2 panduan lengkap php ajax j query2 panduan lengkap php ajax j query
2 panduan lengkap php ajax j queryFajar Baskoro
 
Menyimpan Data Ke Database Dengan Ajax Dan PHP
Menyimpan Data Ke Database Dengan Ajax Dan PHPMenyimpan Data Ke Database Dengan Ajax Dan PHP
Menyimpan Data Ke Database Dengan Ajax Dan PHPEllyx Christian
 
membuat paginate di laravel vue dengan inertia js
membuat paginate di laravel vue dengan inertia jsmembuat paginate di laravel vue dengan inertia js
membuat paginate di laravel vue dengan inertia jsAdi Nata
 
Octav android mysql
Octav android mysqlOctav android mysql
Octav android mysqlrikysp
 
Membuat mvc framework sederhana dengan php
Membuat mvc framework sederhana dengan phpMembuat mvc framework sederhana dengan php
Membuat mvc framework sederhana dengan phpCahya Dwiana SN
 
aplikasi teknologi online - aplikasi database berbasis web
aplikasi teknologi online - aplikasi database berbasis webaplikasi teknologi online - aplikasi database berbasis web
aplikasi teknologi online - aplikasi database berbasis webMateri Kuliah Online
 
server side datatables menggunakan yajra 1 pada laravel admin lte
server side datatables menggunakan yajra 1 pada laravel admin lteserver side datatables menggunakan yajra 1 pada laravel admin lte
server side datatables menggunakan yajra 1 pada laravel admin lteAdi Nata
 
Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832fahreza yozi
 
Jeni Web Programming Bab 3 Advanced Servlets
Jeni Web Programming Bab 3 Advanced ServletsJeni Web Programming Bab 3 Advanced Servlets
Jeni Web Programming Bab 3 Advanced ServletsIndividual Consultants
 
Web Service Menggunakan Axis
Web Service Menggunakan AxisWeb Service Menggunakan Axis
Web Service Menggunakan AxisBart Simpsons
 
Web mvc dengan java jsp seri 1
Web mvc dengan java   jsp seri 1Web mvc dengan java   jsp seri 1
Web mvc dengan java jsp seri 1Zaenal Arifin
 
Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587nurul azmi
 
Belajar kilat asp.net
Belajar kilat asp.netBelajar kilat asp.net
Belajar kilat asp.netDona Alianda
 
Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545imeldafelicia
 
Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602dewiapril1996
 

Similar to Kolaborasi jQuery, AJAX, PHP, dan MySQL (20)

Jquery Ajax Part 1 by Yussan
Jquery Ajax Part 1 by YussanJquery Ajax Part 1 by Yussan
Jquery Ajax Part 1 by Yussan
 
Panduan lengkap php ajax j query
Panduan lengkap php ajax j queryPanduan lengkap php ajax j query
Panduan lengkap php ajax j query
 
2 panduan lengkap php ajax j query
2 panduan lengkap php ajax j query2 panduan lengkap php ajax j query
2 panduan lengkap php ajax j query
 
Menyimpan Data Ke Database Dengan Ajax Dan PHP
Menyimpan Data Ke Database Dengan Ajax Dan PHPMenyimpan Data Ke Database Dengan Ajax Dan PHP
Menyimpan Data Ke Database Dengan Ajax Dan PHP
 
membuat paginate di laravel vue dengan inertia js
membuat paginate di laravel vue dengan inertia jsmembuat paginate di laravel vue dengan inertia js
membuat paginate di laravel vue dengan inertia js
 
Octav android mysql
Octav android mysqlOctav android mysql
Octav android mysql
 
Ajax tutorial 1
Ajax tutorial 1Ajax tutorial 1
Ajax tutorial 1
 
Membuat mvc framework sederhana dengan php
Membuat mvc framework sederhana dengan phpMembuat mvc framework sederhana dengan php
Membuat mvc framework sederhana dengan php
 
aplikasi teknologi online - aplikasi database berbasis web
aplikasi teknologi online - aplikasi database berbasis webaplikasi teknologi online - aplikasi database berbasis web
aplikasi teknologi online - aplikasi database berbasis web
 
php and mysql
php and mysql php and mysql
php and mysql
 
server side datatables menggunakan yajra 1 pada laravel admin lte
server side datatables menggunakan yajra 1 pada laravel admin lteserver side datatables menggunakan yajra 1 pada laravel admin lte
server side datatables menggunakan yajra 1 pada laravel admin lte
 
Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832
 
Jeni Web Programming Bab 3 Advanced Servlets
Jeni Web Programming Bab 3 Advanced ServletsJeni Web Programming Bab 3 Advanced Servlets
Jeni Web Programming Bab 3 Advanced Servlets
 
Web Service Menggunakan Axis
Web Service Menggunakan AxisWeb Service Menggunakan Axis
Web Service Menggunakan Axis
 
Web mvc dengan java jsp seri 1
Web mvc dengan java   jsp seri 1Web mvc dengan java   jsp seri 1
Web mvc dengan java jsp seri 1
 
Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587
 
Belajar kilat asp.net
Belajar kilat asp.netBelajar kilat asp.net
Belajar kilat asp.net
 
Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545
 
Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602
 
Php dan MySQL 4
Php dan MySQL 4Php dan MySQL 4
Php dan MySQL 4
 

Recently uploaded

04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau tripletMelianaJayasaputra
 
TPPK_panduan pembentukan tim TPPK di satuan pendidikan
TPPK_panduan pembentukan tim TPPK di satuan pendidikanTPPK_panduan pembentukan tim TPPK di satuan pendidikan
TPPK_panduan pembentukan tim TPPK di satuan pendidikanNiKomangRaiVerawati
 
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfAKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfTaqdirAlfiandi1
 
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptxKesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptxDwiYuniarti14
 
Kelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdfKelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdftsaniasalftn18
 
aksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmmaksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmmeunikekambe10
 
Materi Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxMateri Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxRezaWahyuni6
 
PEMIKIRAN POLITIK Jean Jacques Rousseau.pdf
PEMIKIRAN POLITIK Jean Jacques  Rousseau.pdfPEMIKIRAN POLITIK Jean Jacques  Rousseau.pdf
PEMIKIRAN POLITIK Jean Jacques Rousseau.pdfMMeizaFachri
 
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxPrakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxSyaimarChandra1
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxFuzaAnggriana
 
Lembar Observasi Pembelajaran di Kelas.docx
Lembar Observasi Pembelajaran di  Kelas.docxLembar Observasi Pembelajaran di  Kelas.docx
Lembar Observasi Pembelajaran di Kelas.docxbkandrisaputra
 
Pembahasan Soal UKOM gerontik persiapan ukomnas
Pembahasan Soal UKOM gerontik persiapan ukomnasPembahasan Soal UKOM gerontik persiapan ukomnas
Pembahasan Soal UKOM gerontik persiapan ukomnasAZakariaAmien1
 
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxMATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxrofikpriyanto2
 
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...Kanaidi ken
 
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...MarwanAnugrah
 
Edukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiEdukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiIntanHanifah4
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMmulyadia43
 
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptxPPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptxHeruFebrianto3
 
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxJurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxBambang440423
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdfvebronialite32
 

Recently uploaded (20)

04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet04-Gemelli.- kehamilan ganda- duo atau triplet
04-Gemelli.- kehamilan ganda- duo atau triplet
 
TPPK_panduan pembentukan tim TPPK di satuan pendidikan
TPPK_panduan pembentukan tim TPPK di satuan pendidikanTPPK_panduan pembentukan tim TPPK di satuan pendidikan
TPPK_panduan pembentukan tim TPPK di satuan pendidikan
 
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdfAKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
AKSI NYATA Strategi Penerapan Kurikulum Merdeka di Kelas (1).pdf
 
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptxKesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
Kesebangunan Segitiga matematika kelas 7 kurikulum merdeka.pptx
 
Kelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdfKelompok 2 Karakteristik Negara Nigeria.pdf
Kelompok 2 Karakteristik Negara Nigeria.pdf
 
aksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmmaksi nyata pendidikan inklusif.pelatihan mandiri pmm
aksi nyata pendidikan inklusif.pelatihan mandiri pmm
 
Materi Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptxMateri Pertemuan 6 Materi Pertemuan 6.pptx
Materi Pertemuan 6 Materi Pertemuan 6.pptx
 
PEMIKIRAN POLITIK Jean Jacques Rousseau.pdf
PEMIKIRAN POLITIK Jean Jacques  Rousseau.pdfPEMIKIRAN POLITIK Jean Jacques  Rousseau.pdf
PEMIKIRAN POLITIK Jean Jacques Rousseau.pdf
 
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptxPrakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
Prakarsa Perubahan dengan Kanvas ATAP & BAGJA.pptx
 
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptxDESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
DESAIN MEDIA PEMBELAJARAN BAHASA INDONESIA BERBASIS DIGITAL.pptx
 
Lembar Observasi Pembelajaran di Kelas.docx
Lembar Observasi Pembelajaran di  Kelas.docxLembar Observasi Pembelajaran di  Kelas.docx
Lembar Observasi Pembelajaran di Kelas.docx
 
Pembahasan Soal UKOM gerontik persiapan ukomnas
Pembahasan Soal UKOM gerontik persiapan ukomnasPembahasan Soal UKOM gerontik persiapan ukomnas
Pembahasan Soal UKOM gerontik persiapan ukomnas
 
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptxMATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
MATERI 1_ Modul 1 dan 2 Konsep Dasar IPA SD jadi.pptx
 
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
PELAKSANAAN + Link2 Materi Pelatihan "Teknik Perhitungan & Verifikasi TKDN & ...
 
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...Wawasan Nusantara  sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
Wawasan Nusantara sebagai satu kesatuan, politik, ekonomi, sosial, budaya, d...
 
Edukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajiiEdukasi Haji 2023 pembinaan jemaah hajii
Edukasi Haji 2023 pembinaan jemaah hajii
 
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMMLaporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
Laporan Guru Piket untuk Pengisian RHK Guru Pengelolaan KInerja Guru di PMM
 
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptxPPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
PPT Materi Jenis - Jenis Alat Pembayaran Tunai dan Non-tunai.pptx
 
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptxJurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
Jurnal Dwi mingguan modul 1.2-gurupenggerak.pptx
 
Demonstrasi Kontekstual Modul 1.2. pdf
Demonstrasi Kontekstual  Modul 1.2.  pdfDemonstrasi Kontekstual  Modul 1.2.  pdf
Demonstrasi Kontekstual Modul 1.2. pdf
 

Kolaborasi jQuery, AJAX, PHP, dan MySQL

  • 1. I Putu Arya Dharmaadi, S.T., M.T. Dosen Jurusan Teknologi Informasi Universitas Udayana http://aryadharmaadi.com
  • 2. 15 November 2015 http://aryadharmaadi.com 2
  • 3. Pendahuluan AJAX dimanfaatkan untuk membuat web interaktif dan dinamis tanpa perlu membuat browser melakukan refresh ketika meminta data ke server AJAX memungkinkan semua dapat dilakukan secara instan, tanpa perlu lagi menunggu halaman di-reload, sehingga aplikasi web mirip dengan aplikasi desktop dalam hal responsibilitas maupun interaktifitas Saat ini, AJAX sudah menjadi teknologi yang wajib diterapkan dalam pengembangan web modern (web 2.0) 15 November 2015 http://aryadharmaadi.com 3
  • 4. Hubungan antara HTML, Ajax, PHP, dan MySQL 15 November 2015 http://aryadharmaadi.com 4 WEB BROWSER WEB SERVER HTML + CSS AJAX ENGINE Javascript call HTML + CSS WEB SERVER (PHP) DBMS (MySQL) Query data Hasil query HTTP Request XML/JSON data
  • 5. Penjelasan Singkat Pada saat dibuka, web browser masih kosong Kemudian browser membuka sebuah halaman sehingga browser melakukan request ke server Hasil request adalah script HTML, CSS, JS (termasuk Ajax Engine), dan script-script tersebut di-load ke web browser Selanjutnya seperti pada gambar di atas, ketika user akan melakukan suatu perintah pada aplikasi, halaman HTML tetap diam, namun di belakang layar, AJAX Engine yang melakukan http request ke server 15 November 2015 http://aryadharmaadi.com 5
  • 6. Antara jQuery dan AJAX jQuery merupakan sebuah library Javascript sehingga mempermudah manipulasi komponen di dokumen HTML, menangani event, animasi, efek, dll. Selain itu, jQuery mempermudah developer web untuk memproses interaksi AJAX Tanpa library seperti jQuery, menerapkan AJAX akan lebih sulit, panjang, dan rumit, terutama untuk pemula yang baru belajar Javascript. 15 November 2015 http://aryadharmaadi.com 6
  • 7. Memulai Project Sebagai latihan, akan dibuat sebuah aplikasi ajax berdasarkan project yang sebelumnya (aplikasi insert nama dan hobi) Aplikasi ajax ini akan mencari nama pada tabel ‘daftar_hobi’ dan akan menampilkan hobinya. So, jalankan web server pada komputer anda Dari project yang sebelumnya (folder latihan), buatlah folder untuk project yang baru dengan nama ‘ajax’ Buatlah sebuah file html, dengan nama ‘index.html’ 15 November 2015 http://aryadharmaadi.com 7
  • 8. Bagian header file index.html 15 November 2015 http://aryadharmaadi.com 8
  • 9. Bagian body file index.html 15 November 2015 http://aryadharmaadi.com 9
  • 10. Keterangan Project ini memanfaatkan library jQueryMobile untuk mempercantik tampilan web dan library jQuery untuk mempermudah penggunaan AJAX Poin yang paling penting adalah: Menyediakan element untuk menampilkan hasil pencarian, yaitu div dengan id=“result” Membuat form untuk pengiriman data, dengan id=“form-pencarian” action=“get_hobi.php” method=“post” Form tersebut terdiri dari input dengan type=“text” dan input dengan type=“submit” 15 November 2015 http://aryadharmaadi.com 10
  • 11. Tampilan index.html 15 November 2015 http://aryadharmaadi.com 11
  • 12. Buat Script untuk AJAX Setelah selesai membuat script HTML, selanjutnya buat script untuk penanganan AJAX Script bisa ditulis di file terpisah atau ditulis di bagian head file index.html Dalam project ini, script ditulis di bagian head file index.html karena code-nya sedikit 15 November 2015 http://aryadharmaadi.com 12
  • 13. Javascript 15 November 2015 http://aryadharmaadi.com 13
  • 14. Keterangan $(document).ready() berfungsi untuk pengecek event, jadi apabila semua elemen pada dokumen HTML sudah di-load semua, maka script di dalam blok fungsi $(document).ready() akan dijalankan $('#form-pencarian').submit() berfungsi sebagai listener event submit. Jadi, apabila form pencarian di- klik submit, maka script di dalam blok fungsi $('#form-pencarian').submit() akan dijalankan 15 November 2015 http://aryadharmaadi.com 14
  • 15. Keterangan (2) event.preventDefault() berfungsi untuk menghentikan pengiriman data pada form secara normal. Fungsi tersebut digunakan karena pada project ini akan menggunakan pengiriman data melalui AJAX sehingga pengiriman data secara normal harus dihentikan. $.ajax() merupakan proses pengiriman data dengan AJAX, dengan parameter: type  method pengiriman, bisa “GET” atau “POST” url  server tujuan pengiriman data 15 November 2015 http://aryadharmaadi.com 15
  • 16. Keterangan (3) data  data form yang akan dikirimkan ke server, bisa didapatkan dengan menggunakan form.serialize(). Jika ingin menulis data form secara manual, carany adalah “nama=“+$(‘#nama’).val()” dataType  format data yang akan diterima dari server, bisa “XML” atau “JSON” success  fungsi yang akan dijalankan ketika AJAX berhasil mengirimkan data ke server dan server memberikan respon balik. Respon balik dari server akan disimpan di variabel data. 15 November 2015 http://aryadharmaadi.com 16
  • 17. Buat File PHP untuk Koneksi ke Database File PHP untuk koneksi ke database sudah dibahas pada project sebelumnya Untuk itu, buatlah file dengan nama database.php yang disalin dari project sebelumnya File ini hanya khusus menangani koneksi ke database, sedangkan penggunaan database (query database) akan dilakukan di file PHP yang lain dengan meng- include-kan file database.php 15 November 2015 http://aryadharmaadi.com 17
  • 18. File database.php 15 November 2015 http://aryadharmaadi.com 18
  • 19. Buat File PHP (Server Tujuan AJAX) Setelah file database.php selesai dibuat, sekarang buatlah file yang menjadi target pengiriman form (get_hobi.php) File tersebut akan meng-include-kan file database.php agar bisa terhubung ke database File get_hobi.php mirip dengan file project sebelumnya yang meng-query data, namun di file get_hobi.php akan dibuat untuk me-return data dalam bentuk JSON 15 November 2015 http://aryadharmaadi.com 19
  • 20. 15 November 2015 http://aryadharmaadi.com 20
  • 21. Keterangan Singkat Require “database.php” merupakan code untuk memanggil file database.php dan meng-include-kan semua variabel dan code-nya ke dalam get_hobi.php Penggunaan prepare statement sama dengan project sebelumnya Untuk mendapatkan hasil dari prepare statement, digunakan method bind_result($nama,$hobi), dimana jumlah variabel pada parameternya bind_result disesuaikan dengan jumlah kolom yang di-query dari database 15 November 2015 http://aryadharmaadi.com 21
  • 22. Keterangan Singkat (2) Untuk mendapatkan hasil per baris-nya, gunakan fungsi fetch(), dimana fungsi ini akan menggeser pointer dari satu row hasil data query ke row selanjutnya dan menyimpan datanya ke variabel $nama dan $hobi . Fungsi tersebut akan menghasilkan true jika baris yang ditunjuk memiliki data dan menghasilkan false jika baris yang ditunjuk tidak ada. Fungsi json_encode adalah fungsi untuk mengubah array menjadi format JSON sehingga mudah dibaca oleh AJAX engine 15 November 2015 http://aryadharmaadi.com 22
  • 23. Screen Shot Direktori Project 15 November 2015 http://aryadharmaadi.com 23
  • 24. Hasil Running 15 November 2015 http://aryadharmaadi.com 24
  • 25. Penutup AJAX mendukung asynchronous sehingga halaman web dapat di-update seperlunya. Proses update website menjadi lebih cepat karena tidak seluruh halaman di-download. Untuk mendapatkan source code lengkap dari project tadi, bisa diunduh di: http://adf.ly/1Rf5Ph Untuk membaca materi ini secara lengkap, silahkan buka di halaman: http://aryadharmaadi.com/blog/2015/11/15/kolaborasi- jquery-ajax-php-mysql/ 15 November 2015 http://aryadharmaadi.com 25
  • 26. Next . . . Framework CodeIgniter 15 November 2015 http://aryadharmaadi.com 26