MODUL KEAHLIAN GANDA Direktorat Jenderal

advertisement
MODUL
KEAHLIAN GANDA
Mata Pelajaran
Reakayasa Perangkat Lunak
Sekolah Menengah Kejuruan (SMK)
Kelompok Kompetensi F
PEMROGRAMAN WEB
Penulis: Abd. Munif
Direktorat Jenderal Guru dan Tenaga Kependidikan
Kementrian Pendidikan dan Kebudayaan
Tahun 2017
i
Penulis:
1. ABD Munif,. S.T.,
Emai: [email protected]
Penelaah:
1.
Sierra Maulida Asrin, S.T [081562783394],
Email : [email protected]
2.
Abdul Haliq, S.Pd., M.Pd., [085341259862]
Email : [email protected]
3.
Alun Sujjada, S.Kom., M.T [081805040468]
Email : [email protected]
Ilustrator :
1. Sierra Maulida Asrin, S.T [081562783394]
Email : [email protected]
2. Faizal Reza Nurzeha, A.Md. [085242177945]
Email : [email protected]
Layouter :
1. Syamsul Hidayat, A.Md. [081355598663]
Email : [email protected]
Copyright ©2017
Lembaga Pengembangan dan Pemberdayaan Pendidikan Tenaga
Kependidikan Bidang Kelautan Perikanan Teknologi Informasi dan
Komunikasi.
Hak Cipta Dilindungi Undang-Undang
Dilarang mengkopi sebagian atau keseluruhan isi buku ini untuk
kepentingan komersial tanpa izin tertulis dari Kementrian Pendidikan
Kebudayaan.
ii
iii
KATA SAMBUTAN
Peran guru profesional dalam proses pembelajaran sangat penting
sebagai kunci keberhasilan belajar siswa. Guru profesional adalah guru yang
kopeten
membangun
proses
pembelajaran
yang
baik
sehingga
dapat
menghasilkan pendidikan yang berkualitas. Hal ini tersebut menjadikan guru
sebagai komponen yang menjadi fokus perhatian pemerintah pusat maupun
pemerintah daerah dalam peningkatan mutu pendidikan terutama menyangkut
kopetensi guru.
Pengembangan profesionalitas guru melalui program Pembinaan Karir
merupakan upaya peningkatan kompetensi untuk semua guru. Sejalan dengan
hal tersebut, pemetaan kopetensi guru telah dilakukan melalui uji kompetensi
guru (UKG) untuk kompetensi pedagogik dan profesional pada akhir tahun 2015.
Hasil UKG menunjukan peta kekuatan dan kelemahan kompetensi guru dalam
penguasaan pengetahuan. Peta kompetensi guru tersebut dikelompokan menjadi
10 (sepuluh) kelompok kompetensi. Tindak lanjut pelaksanaan UKG diwujudkan
dalam bentuk pelatihan guru paska UKG melalui program Pembinaan Karir.
Tujuannya untuk meningkatkan kompetensi guru sebagai agen perubahaan dan
sumber belajar utama bagi peserta didik. Program Pembinaan Karir dilaksanakan
melalui pola tatap muka, daring (online) dan campuran (blended) tatap muka
dengan online.
Pusat Pengembangan dan Pemberdayaan Pendidik dan Tenaga
Kependidikan
(PPPPTK),
Lembaga
Pengembangan
dan
Pemberdayaan
Pendidik dan Tenaga Kependidikan Kelautan Perikanan Teknologi Informasi dan
Komunikasi (LP3TK KPTK) dan Lembaga Pengembangan dan Pemberdayaan
Kepala Sekolah (LP2KS) merupakan Unit Pelaksana Teknis di lingkungan
Direktorat Jendral Guru dan Tenaga Kependidikan yang bertanggung jawab
dalam mengembangkan perangkat dan melaksanakan peningkaan kompetensi
guru sesuai dengan bidangnya. Adapun perangkat pembelajaran yang
dikembangkan tersebut adalah modul untuk program Pembinaan Karir
muka dan
iv
tatap
online untuk semua mata pelajaran dan kelompok kompetensi.
Dengan modul ini diharapkan program memberikan sumbangan yang sangat
besar dalam peningkatan kualitas kompetensi guru. Mari kita sukseskan program
ini untuk mewujudkan Guru Mulia Karena Karya.
Jakarta, Februari 2017
Direktur Jendral
Guru dan Tenaga Kependidikan
Sumarna Surapranata, Ph.D
NIP. 195908011985031002
v
KATA PENGANTAR
Profesi guru dan tenaga kependidikan harus dihargai dan dikembangkan sebagai
profesi yang bermartabat sebagaimana diamanatkan Undang-Undang Nomor 14
Tahun 2005 tentang Guru dan Dosen. Hal ini dikarenakan guru dan tenaga
kependidikan merupakan tenaga profesional yang mempunyai fungsi, peran, dan
kedudukan yang sangat penting dalam mencapai visi pendidikan 2025 yaitu
“Menciptakan Insan Indonesia Cerdas dan Kompetitif”. Untuk itu guru dan tenaga
kependidikan yang profesional wajib melakukan pengembangan keprofesian
berkelanjutan.
Buku pedoman Pedoman Penyusunan Modul Diklat Pengembangan Keprofesian
Berkelanjutan
Bagi
Guru
dan
Tenaga
Kependidikan
untuk
institusi
penyelenggara program pengembangan keprofesian berkelanjutan merupakan
petunjuk bagi penyelenggara pelatihan di dalam melaksakan pengembangan
modul yang merupakan salah satu sumber belajar bagi guru dan tenaga
kependidikan.
Buku
ini
disajikan
untuk
memberikan
informasi
tentang
penyusunan modul sebagai salah satu bentuk bahan dalam kegiatan
pengembangan keprofesian berkelanjutan bagi guru dan tenaga kependidikan.
Pada kesempatan ini disampaikan ucapan terima kasih dan penghargaan
kepada berbagai pihak yang telah memberikan kontribusi secara maksimal
dalam mewujudkan buku ini, mudah-mudahan buku ini dapat menjadi acuan dan
sumber inspirasi bagi guru dan semua pihak yang terlibat dalam pelaksanaan
penyusunan modul untuk pengembangan keprofesian berkelanjutan. Kritik dan
saran yang membangun sangat diharapkan untuk menyempurnakan buku ini di
masa mendatang.
Makassar, Februari 2017
Kepala LPPPTK KPTK Gowa
Sulawesi Selatan,
Dr. H. Rusdi, M.Pd,
NIP 19650430 199103 1 004
vi
vii
DAFTAR ISI
KATA SAMBUTAN ............................................................................................ iv
KATA PENGANTAR ........................................................................................... vi
DAFTAR ISI ....................................................................................................... viii
DAFTAR TABEL ............................................................................................... xvi
PENDAHULUAN .................................................................................................. 1
A. Latar Belakang ........................................................................................... 1
B. Tujuan ........................................................................................................ 2
C. Peta Kompetensi ........................................................................................ 2
D. Ruang Lingkup Penggunaan Modul ............................................................ 3
E. Saran Cara Penggunaan Modul .................................................................. 5
Perangkat Pengembangan Aplikasi Web ............................................................. 9
A. Tujuan Pembelajaran ................................................................................... 9
B. Indikator Pencapaian Kompetensi .............................................................. 9
C. Uraian Materi .............................................................................................. 9
D. Aktifitas Pembelajaran .............................................................................. 11
E. Latihan Soal.............................................................................................. 12
F. Rangkuman .............................................................................................. 12
G. KUNCI JAWABAN .................................................................................... 13
H. Umpan Balik dan Tindak Lanjut ................................................................ 13
Membuat Dokumen HTML ................................................................................. 17
A. Tujuan Pembelajaran ................................................................................. 17
B. Indikator Pencapaian Kompetensi ............................................................ 17
C. Uraian Materi ............................................................................................ 17
D. Aktifitas Pembelajaran .............................................................................. 20
E. Latihan Soal.............................................................................................. 27
F. Rangkuman .............................................................................................. 27
G. Umpan Balik dan Tindak Lanjut ................................................................ 28
Mengatur Tampilan Dokumen HTML dengan CSS ............................................ 31
A. Tujuan Pembelajaran ................................................................................ 31
viii
B. Indikator Pencapaian Kompetensi ............................................................ 31
C. Uraian Materi ............................................................................................ 31
1. Definisi CSS......................................................................................... 31
2. Cara Menerapkan CSS dalam HTML ................................................... 32
D. Aktifitas Pembelajaran .............................................................................. 34
E. Latihan Soal ............................................................................................. 38
F. Rangkuman .............................................................................................. 39
G. Umpan Balik dan Tindak Lanjut ................................................................ 39
Mengenal Dasar Pemrograman PHP ................................................................. 43
A. Tujuan Pembelajaran ................................................................................. 43
B. Indikator Pencapian Kompetensi .............................................................. 43
C. Uraian Materi ............................................................................................ 43
1. Pengenalan PHP dan Web Dinamis..................................................... 43
2. Prinsip-prinsip Dasar Bahasa pemrograman PHP................................ 44
3. Tipe Data ............................................................................................. 46
4. Variabel ............................................................................................... 47
5. Operator .............................................................................................. 48
6. Struktur Kontrol .................................................................................... 49
7. Memasukan kode PHP kedalam Dokumen HTML ............................... 50
D. Aktifitas Pembelajaran .............................................................................. 51
E. Latihan Soal ............................................................................................. 57
F. Kunci Jawaban ......................................................................................... 58
G. Rangkuman .............................................................................................. 58
H. Umpan Balik dan Tindak Lanjut ................................................................ 59
Mengenal Fungsi dan Array dalam PHP. ........................................................... 63
A. Tujuan Pembelajaran ................................................................................. 63
B. Indikator Pencapaian Kompetensi ............................................................ 63
C. Uraian Materi ............................................................................................ 63
1. Fungsi .................................................................................................. 63
2. Array .................................................................................................... 64
D. Aktifitas Pembelajaran .............................................................................. 64
E. Studi Kasus ................................................. Error! Bookmark not defined.
F. Rangkuman .............................................................................................. 71
G. Umpan Balik ............................................................................................. 71
Operasi File pada pemrograman PHP ............................................................... 77
A. Tujuan Pembelajaran ................................................................................. 77
B. Indikator Pencapaian Kompetensi ............................................................ 77
ix
C. Uraian Materi ............................................................................................ 77
1. Menggunakan File................................................................................ 77
2. Menulis ke File ..................................................................................... 78
3. Upload File ........................................................................................... 78
D. Aktifitas Pembelajaran .............................................................................. 79
E. Studi Kasus ................................................. Error! Bookmark not defined.
F. Rangkuman .............................................................................................. 81
G. Umpan Balik ............................................................................................. 82
Penanganan Form Pada PHP ............................................................................ 85
A. Tujuan Pembelajaran ................................................................................ 85
B. Indikator Pencapaian Kompetensi ............................................................ 85
C. Uraian Materi ............................................................................................ 85
1. POST ................................................................................................... 85
2. GET ..................................................................................................... 86
D. Aktifitas Pembelajaran .............................................................................. 86
E. Studi Kasus ................................................. Error! Bookmark not defined.
F. Rangkuman .............................................................................................. 90
G. Umpan Balik ............................................................................................. 90
H. Kunci jawaban .......................................................................................... 90
Mengenal Dasar Pemrograman JavaScript ........................................................ 94
A. Tujuan Pembelajaran ................................................................................. 94
B. Indikator Pencapaian Kompetensi ............................................................ 94
C. Uraian Materi ............................................................................................ 94
1. Pengertian JavaScript .......................................................................... 94
2. Fungsi JavaScript dalam Pemrograman Web ...................................... 94
D. Aktifitas Pembelajaran .............................................................................. 96
1. Pengenalan Pemrograman JavaScript ................................................. 96
2. Pengenalan Event dan Objek Window ................................................. 99
E. Tugas / Studi Kasus ..................................... Error! Bookmark not defined.
F. Rangkuman ............................................................................................ 101
G. Umpan Balik ........................................................................................... 102
Membuat Koneksi Database MySQL ............................................................... 107
A. Tujuan Pembelajaran .............................................................................. 107
B. Indikator Pencapaian Kompetensi .......................................................... 107
C. Uraian Materi .......................................................................................... 107
1. Pengertian MySQL ............................................................................. 107
2. PhpMyAdmin ...................................................................................... 108
x
3. Koneksi MySQL pada PHP ................................................................ 108
D. Aktifitas Pembelajaran: Membuat database melalui PhpMyAdmin .......... 109
E. Studi Kasus ................................................. Error! Bookmark not defined.
F. Rangkuman ............................................................................................ 110
G. Umpan Balik ........................................................................................... 111
Operasi Database............................................................................................ 115
A. Tujuan Pembelajaran ............................................................................. 115
B. Indikator Pencapaian Kompetensi .......................................................... 115
C. Uraian Materi .......................................................................................... 115
1. Objek Database ................................................................................. 115
2. SQL (Structure Query Language) ...................................................... 115
3. DLL (Data Definition Language) ......................................................... 116
4. DML (Data Manipulation Langeage)................................................... 116
D. Aktifitas Pembelajaran ............................................................................ 116
1. Membuat Database............................................................................ 116
2. Membuat Tabel .................................................................................. 117
3. Memasukan Data ............................................................................... 117
4. Menyeleksi Data ................................................................................ 118
5. Mengupdate Data .............................................................................. 118
6. Menghapus Data................................................................................ 119
E. Studi Kasus ................................................. Error! Bookmark not defined.
F. Rangkuman ............................................................................................ 120
G. Umpan Balik ........................................................................................... 120
MEMBANGUN
FRONT
END
WEB
MENGGUNAKAN
FRAMEWORK
BOOTSTRAP .................................................................................................. 123
A. Tujuan Pembelajaran ............................................................................. 123
B. Indikator Pencapaian Kompetensi .......................................................... 123
C. Uraian Materi .......................................................................................... 123
1. Definisi Front-End Web ...................................................................... 123
2. Desain Web ....................................................................................... 123
3. Bootstrap Web Framework ................................................................ 125
4. Cara Menggunakan Bootstrap ........................................................... 125
D. Aktifitas Pembelajaran ............................................................................ 126
1. Mendesain Halaman Home, Caruosel dan Menu ............................... 126
2. Mendesain Dashboard Admin ............................................................ 129
3. Mendesain Form Artikel ..................................................................... 131
4. Mendesain Halaman Signin ............................................................... 132
E. Studi Kasus ................................................. Error! Bookmark not defined.
F. Rangkuman ............................................................................................ 133
G. Umpan Balik ........................................................................................... 133
xi
Membangun
Back-end
Application
dengan
konsep
MVC
menggunakan
framework Code Igniter .................................................................................... 138
A. Tujuan Pembelajaran .............................................................................. 138
B. Indikator Pencapaian Kompetensi .......................................................... 138
C. Uraian Materi .......................................................................................... 138
1. Definisi Back-End Web....................................................................... 138
2. Codeigniter......................................................................................... 138
3. Alur Proses Codeigniter ...................................................................... 139
3. Arsitektur MVC (Model View Control) ................................................. 140
D. Aktifitas Pembelajaran ............................................................................ 141
1. Instalasi Codeigniner .......................................................................... 141
2. Controller dan View ............................................................................ 142
3. Model ................................................................................................. 145
4. Membangun form tambah artikel pada halaman admin: ..................... 149
5. Membangun form update artikel pada halaman admin: ...................... 150
6. Membangun perintah untuk hapus artikel ........................................... 151
E. Studi Kasus ................................................. Error! Bookmark not defined.
F. Rangkuman ............................................................................................ 151
Membangun Sistem Autentikasi ....................................................................... 154
A. Tujuan Pembelajaran .............................................................................. 154
B. Indikator Pencapaian Kompetensi .......................................................... 154
C. Uraian Materi .......................................................................................... 154
D. Aktifitas Pembelajaran ............................................................................ 155
1. Identifikasi Kasus ............................................................................... 155
2. Membangun Sistem authentifikasi ...................................................... 155
</body> ....................................................................................................... 156
</html> ....................................................................................................... 156
E. Studi Kasus ................................................. Error! Bookmark not defined.
F. Rangkuman ............................................................................................ 158
G. Umpan Balik ........................................................................................... 158
EVALUASI ......................................................................................... 160
PENUTUP ............................................................................................... 165
A. Kesimpulan ............................................................................................. 165
B. Tindak lanjut ........................................................................................... 165
DAFTAR PUSTAKA ...................................................................................... 167
GLOSARIUM ....................................................................................... 169
xii
xiii
DAFTAR GAMBAR
Gambar 1. Peta kedudukan Modul Pemrograman web dinamis ........................... 2
Gambar 2. Peta materi pokok dan Kegiatan Pembelajaran .................................. 4
Gambar 3. Struktur materi pmrograman web dinamis .......................................... 4
Gambar 4. Web browser Mozile firefox .............................................................. 10
Gambar 5. Mekanisme kerja protokol HTTP ...................................................... 11
Gambar 6. Struktur penulisan CSS .................................................................... 32
Gambar 7. Lembar kerja desain layout halaman web ........................................ 38
Gambar 8. Alur request-response web dinamis. ................................................ 44
xiv
xv
DAFTAR TABEL
Tabel 1. Peta kompetensi modul PKB guru RPL Grade 6 pemrograman web ...... 3
Tabel 2. Contoh alamat URL .............................................................................. 11
Tabel 3. Operator aritmetika dalam PHP............................................................ 48
Tabel 4. Operator relasional dalam PHP ............................................................ 48
Tabel 5. Operator logika dalam PHP .................................................................. 49
Tabel 6. Ragam mode fungsi fopen() ................................................................. 77
xvi
xvii
PENDAHULUAN
A. Latar Belakang
Guru dan tenaga kependidikan wajib melaksanakan kegiatan pengembangan
keprofesian
secara
berkelanjutan
agar
dapat
melaksanakan
tugas
profesionalnya. Program Pengembangan Keprofesian Berkelanjutan (PKB)
adalah pengembangan kompetensi Guru dan Tenaga Kependidikan yang
dilaksanakan
sesuai
kebutuhan,
bertahap,
dan
berkelanjutan
untuk
meningkatkan profesionalitasnya.
PKB sebagai salah satu strategi pembinaan guru dan tenaga kependidikan
diharapkan dapat menjamin guru dan tenaga kependidikan mampu secara terus
menerus memelihara, meningkatkan, dan mengembangkan kompetensi sesuai
dengan standar yang telah ditetapkan. Pelaksanaan kegiatan PKB akan
mengurangi kesenjangan antara kompetensi yang
dimiliki
guru dan tenaga
kependidikan dengan tuntutan profesional yang dipersyaratkan.
Di dalam pelaksanaan diklat yang dilaksanakan oleh PPPPTK/LPPPTK KPTK
diperlukan suatu modul yang berfungsi sebagai salah satu sumber belajar guru.
Modul Diklat PKG Guru Rekayasa Perangkat Lunak (RPL) Level 6 Pemrograman
Web Dinamis”ini dapat digunakan oleh guru dan tenaga kependidikan dan
sebagai acuan untuk memenuhi tuntutan kompetensinya, sehingga guru dapat
melaksanakan tugasnya secara professional sesuai dengan standar yang telah
ditetapkan.
Modul ini mempelajari tentang bagaimana membangun aplikasi web dinamis.
Materi dalam modul ini mencakup dua hal yaitu dasar aplikasi web dan teknlogi
pengembangan web dinamis. Melalui modul ini guru bermain peran sebagai web
programmer yang merupakan salah satu job tittle di dunia industri Teknologi
informasi. Programmer mempunyai tanggung jawab terhadap pembuatan kode
program yang dapat dijalankan sehingga membentuk aplikasi untuk membantu
proses bisnis dalam suatu organisasi. Penguasaan teknik dan ketrampilan dalam
1
membuat kode program berbasis web akan berpengaruh pada kesuksesan
dalam implementasi aplikasi sistem informasi.
B. Tujuan
Tujuan disusunnya modul diklat PKB Guru RPL Level 1 ini adalah memberikan
pengetahuan, ketrampilan dan sikap kepada guru atau peserta diklat tentang
merancang sistem basis data dengan benar melalui aktifitas observasi dan
praktikum. Setelah mempelajari modul ini diharapkan guru dapat: “Membangun
Aplikasi Web dinamis”.
Secara khusus tujuan penyusunan modul ini adalah:
1. Memberikan pemahaman tentang teknologi aplikasi web dinamis.
2. Memberikan pengetahuan cara pemrograman web dinamis.
3. Memberikan petunjuk tentang interaksi basis data dalam web dinamis.
4. Memberikan arahan tentang membangun front-end dan back-end dalam
pengembangan web dinamis.
C. Peta Kompetensi
Modul ini merupakan modul ke-6 dari 10 modul yang dikembangkan.
Berdasarkan struktur jenjang diklat PKB Modul pemrograman web dinamis ini
termasuk dalam jenjang Dasar. Modul ini akan digunakan untuk Program
Pengembangan Keprofesian Berkelanjutan (PKB) bagi guru-guru produktif
Sekolah menengah Kejuruan pada paket keahlian Rekayasa Perangkat Lunak.
Gambar 1. Peta kedudukan Modul Pemrograman web dinamis
2
Tabel 1. Peta kompetensi modul PKB guru RPL Grade 6 pemrograman web
Standar kompetensi
Kompetensi
Kompetensi Inti
Kompetensi Guru
Indikator pencapaian
Utama
Guru (KIG)
Keahlian (KGK)
Kompetensi
Profesional
1. Menguasai
1.3. Membangun web 1.3.1. Menganalisis teknologi
materi, struktur,
dinamis.
dalam mengembangkan
konsep
dan
pemrograman web
pola
pikir
dinamis
keilmuan yang
1.3.2. Menyajikan proses kerja
mendukung
aplikasi melalui struktur
mata pelajaran
kontrol percabangan dan
yang diampu
pengulangan.
1.3.3. Membuat kode program
dalam bentuk fungsi
1.3.4. Mengolah data melalui
operasi file
1.3.5. Membuat koneksi basis
data pada web dinamis
1.3.6. Membuat front end
application pada web
dinamis
1.3.7. Menguji autentikasi user
pada web dinamis.
1.3.8. Memanipulasi data pada
web dinamis
1.3.9. Membangun back end
application pada web
dinamis
D. Ruang Lingkup Penggunaan Modul
Modul ini terdiri dari empat pembahasan utama (materi pokok). Setiap materi
pokok terdapat beberapa kegiatan pembelajaran guna untuk mencapai
kompetensi yang telah ditentukan, dalam setiap kegiatan pembelajaran terdapat
keterkaitan yang mendukung atau menunjang pemahaman konsep dan praktik
dalam setiap kegiatan pembelajaran yang dilakukan. Berikut merupakan peta
Kegiatan Pembelajaran dalam mencapai kompetensi. Angka dalam tanda kurung
menunjukan capaian dari indikator esensial yang telah ditetapkan untuk setiap
Kegiatan Pembelajaran.
3
Gambar 2. Peta materi pokok dan Kegiatan Pembelajaran
Dari setiap kegiatan pembelajaran memuat tentang materi tentang web
dinamis, berikut merupakan peta konsep dari materi web dinamis.
Gambar 3. Struktur materi pemrograman web dinamis
4
E. Saran Cara Penggunaan Modul
Modul ini terdiri dari empat materi pokok dan sembilan Kegiatan
Pembelajaran. Peserta diklat dapat mempalajari sesuai dengan urutan topik
mulai topik 1 sampai topik 4 dan Kegiatan Pembelajaran 1 sampai Kegiatan
Pembelajaran 9. Untuk setiap Kegiatan Pembelajaran urutan yang harus
dilakukan oleh peserta diklat dalam mempelajari modul ini adalah :
1. Membaca tujuan pembelajaran sehingga memahami target atau goal dari
Kegiatan Pembelajaran tersebut.
2. Membaca indikator pencapaian kompetensi sehingga memahami obyek
yang akan dijadikan kriteria pengukuran untuk mencapai tujuan
pembelajaran.
3. Memaca uraian materi pembelajaran sehingga memiliki pengetahuan,
ketrampilan dan sikap terhadap kompetensi yang akan dicapai
4. Melakukan
aktifitas
pembelajaran
dengan
urutan
atau
kasus
permasalahan sesuai dengan contoh.
5. Mengerjakan latihan soal atau tugas dengan mengisi lembar kerja yang
telah disediakan.
6. Menjawab pertanyaan dalam umpan balik yang akan mengukur tingkat
pencapaian kompetensi melalui penilaian diri.
Modul ini menggunakan beberapa dukungan perangkat yang yang harus
disediakan. Peserta dapat menggunakan perangkat yang dimiliki tetapi harus
memenuhi standart spesifikasi yang telah ditetapkan. Hal ini bertujuan agar
setiap
kegiatan
pembelajaran
yang
dilakukan
dapat
berjalan
dengan
semestinya.Perangkat-perangkat yang digunakan dalam kegiatan pembelajaran
modul ini adalah:
1. Personal Computer (PC) yang sudah terinstal OS windows 7 atau lebih.
2. Perangkat Lunak (software)**
 Mozilla Firefox versi 40.0.3
 Sublime Text 3
 XAMPP versi 5.5.28
3. Source code**
 Codeigniter versi 3.0.1
 Bootstrap versi 3.3.5
5
Keterangan: tanda dua asterik (**) menunjukan bahwa perangkat tersebut
akan disediakan dan tersimpan dalam keping CD. Struktur folder dan file
dalam CD diperlihatkan dalam gambar di bawah ini:
Perangkat pemrograman web dinamis (folder)
|
|___ Software Installer (folder)
|
|
|
|___ Firefox Setup 40.0.3 (file)
|
|___ Sublime Text Build 3083 Setup (file)
|
|___ xampp-win32-5.5.28-0-VC11-installer (file)
|
|___ Source code (folder)
|
|___ demo (file)
|___ bootstrap-3.3.5-dist (file)
|___ CodeIgniter-3.0.1 (file)
6
7
8
Perangkat Pengembangan Aplikasi Web
A. Tujuan Pembelajaran
Melalui observasi peserta diklat dapat menganalisis perangkat-perangkat
yang digunakan untuk pengembangan aplikasi web sesuai dengan
kebutuhan.
B. Indikator Pencapaian Kompetensi
Menganalisis perangkat-perangkat untuk pengembangan aplikasi web.
C. Uraian Materi
1. Web Client (Browser)
Web Client atau biasa disebut dengan browser atau peramban adalah perangkat
lunak yang digunakan untuk mengakses web server dengan mengirimkan pesan
permintaan (request) HTTP dan mengolah response HTTP yang dihasilkan. Web
browser yang berjalan pada desktop atau laptop komputer adalah paling umum
dari perangkat lunak web client (browser), tetapi masih ada bentuk lain dari
perangkat lunak web client
dan tentu tidak dibahas dalam modul ini karena
bukan menjadi fokus materi. Web browser berfungsi untuk meminta dan
menampilkan informasi yang diminta dari web server, informasi yang diminta
dapat berupa file maupun dokumen HTML. Permintaan oleh browser akan
ditampilkan berupa halaman web dalam client area di browser. Beberapa
browser yang paling umum dan sering digunakan antara lain:
 Mozilla Firefox
 Google Chrome
 Microsoft Internet Explorer
 Opera
 Safari
 Netscape Navigator
Dibawah ini merupakan gambar dari software browser Mozilla Firefox.
9
Gambar 4. Web browser Mozilla firefox
2. Web Server
Web server merupakan perangkat lunak dalam server yang berfungsi menerima
permintaan (request) melalui HTTP dari client yaitu browser dan mengirimkan
kembali response HTTP yang pada umumnya akan berbentuk dokumen HTML
atau file. Web server menyimpan dokumen web sehingga dapat diakses oleh
user atau client melalui internet.
Berikut beberapa contoh web server:
 Apache (Berjalan di Linux dan Windows)
 Microsoft Internet Information Service (IIS) (Berjalan di Windows)
 Tomcat (Berjalan di Linux dan Windows)
3. HTTP
HTTP
(HyperText
Transfer
Protocol)
adalah
standart
protokol
komunikasi,protokol jaringan lapisan aplikasi yang digunakan untuk sistem
informasi
terdistribusi,
kolaboratif,
dan
menggunakan
hipermedia.
Penggunaannya banyak pada pengambilan sumber daya yang saling terhubung
dengan tautan, yang disebut dengan dokumen hypertext. HTTP standar
sekarang adalah (HTTP 1.1).
Contoh cara kerja HTTP
10
Gambar 5. Mekanisme kerja protokol HTTP
4. URL
URL (Uniform/Universal Resource Locator) merupakan suatu alamat untuk
mengakses resource (file). Berikut merupakan contoh URL:
Tabel 2. Contoh alamat URL
Contoh URL
Nama Skema
Tipe Resource
ftp://ftp.example.org/pub/file.txt
ftp
File didalam FTP Sever
telnet://host.example.org
telnet
Telnet Sever
mailto:[email protected]
mailto
Mailbox
https://source.example.org/sec.txt
https
File dalam web server
file:///C:/temp/localFile.txt
file
File dalam direktori hardisk lokal
D. Aktifitas Pembelajaran
Dalam kegiatan ini peserta diklat akan melakukan analisis ragam perangkat
lunak web browser dan web server. Bentuklah kelompok diskusi setiap
kelompok terdiri dari 3-4 orang. Bacalah seluruh langkah dibawah ini
kemudian lakukan dengan cermat dan teliti.
1. Pilih tiga perangkat web browser (misal mozilla firefox, google chrome
dan Internet explorer pada laptop atau komputer yang telah tersedia.
2. Amatilah fungsi-fungsi atau fitur-fitur yang ada dalam ketiga web browser
tersebut. Catat hasilnya pada LK 1.1
11
3. Dari hasil pada langkah 3 buatlah tabel dalam bentuk cek list yang
menjelaskan perbedaan atau persamaan fitur-fitur perangkat web
browser. Tentukan setidaknya 5 parameter atau kriteria (fitur) dan
jelaskan deskripsi, fungsi atau kegunaan fitur-fitur tersebut. Catat hasilnya
pada LK 1.2.
4. Pilih tiga perangkat web server (misal apache, Microsoft IIS, tomcat dll)
kemudian pasang perangkat tersebut pada laptop atau komputer yang
telah tersedia.
5. Amati fungsi-fungsi atau fitur-fitur yang ada dalam ketiga web server
tersebut. Catat hasilnya pada LK 1.3
6. Dari hasil pada langkah 5 buatlah tabel dalam bentuk cek list yang
menjelaskan perbedaan atau persamaan fitur-fitur perangkat web server.
Tentukan setidaknya 5 parameter atau kriteria (fitur) dan jelaskan
deskripsi, fungsi atau kegunaan fitur-fitur tersebut. Catat hasilnya pada
LK 1.4.
7. Diskusi dan komunikasikan hasilnya dalam kelompok dan buatlah
kesimpulan.
8. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan
dengan tutor.
E. Latihan Soal
1. Matikan server apache dan copy file demo.html didalam local disc saudara
misal dalam disc E:\lalu buka browser anda dan akses file demo.html
tersebut dengan URL file:///E:/demo.html di browser anda. Amati yang
terjadi! Jelaskan mengapa file demo.html tersebut bisa dibuka tanpa
menjelankan server apache!
2. Jelaskan mengapa dibutuhkan web server untuk mengakses file aplikasi web!
Sedangkan untuk mengakses file dapat secara langsung dengan membuka
file dalam direktori disc local tanpa server.
F. Rangkuman
Web client (browser) adalah perangkat lunak yang digunakan untuk mengakses
web server dengan mengirimkan pesan permintaan (request) HTTP dan
12
mengolah response HTTP yang dihasilkan. Web server merupakan perangkat
lunak dalam server yang berfungsi menerima permintaan (request) melalui HTTP
dari client yaitu browser dan mengirimkan kembali response HTTP. HTTP
(HyperText Transfer Protocol) adalah standar protokol komunikasi,protokol
jaringan lapisan aplikasi yang digunakan untuk sistem informasi terdistribusi,
kolaboratif, dan menggunakan hipermedia. URL (Uniform/Universal Resource
Locator) merupakan suatu alamat untuk mengakses resource (file).
G. KUNCI JAWABAN
1. Ada beberapa macam tipe URL untuk mengakses sebuah file, seperti
https, ftp, telnet dan salah satunya adalah skema file. Untuk mengakses
sebuah file dalam direktori lokal kita dapat menggunakan alamat seperti
file:///E:/demo.html. Browser bisa memproses di sisi-client, akan tetapi
untuk pemrograman server-side scripting (seperti PHP) tidak akan bisa
di proses dalam sisi client, karena pemrograman PHP hanya bisa
diproses di sisi server.
2. Dalam teknologi web, terdapat dua sisi pemrograman, yaitu client-side
scripting (JavaScript) dan server-side scripting (PHP). Pada client-side
scripting program diproses oleh browser dan server-side diproses pada
sisi server. Saat mengengembangkan web dinamis kita tidak akan bisa
terlepas dari yang namanya server-side scripting, maka dari itu web
server diperlukan untuk memproses program pada sisi-server seperti
pemrograman PHP
H. Umpan Balik dan Tindak Lanjut
1. Apakah saudara memahami tentang gambaran global aplikasi web?
2. Apakah saudara sudah memahami apa itu web client dan web server?
3. Apakah saudara sudah bisa melakukan instalasi dan menggunakan web
client maupun web server?
4. Apakah anda sudah dapat mengakses sebuah url dengan browser baik
dalam direktori lokal maupun server lokal?
13
5. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Perangkat Pengembangan Aplikasi” ini, silahkan mengisi tabel 1 secara
jujur dan sesuai dengan kemampuan yang telah anda dapatkan!
Tabel 1. Tindak Lanjut
IPK
14
Hasil yang didapat
Rencana Tindak Lanjut
15
16
Membuat Dokumen HTML
A. Tujuan Pembelajaran
Melalui
praktikum
peserta
diklat
dapat
memformat
dokumen
web
menggunakan tag-tag HTML
B. Indikator Pencapaian Kompetensi
Memformat dokumen web menggunakan tag-tag HTML.
C. Uraian Materi
Dalam semua jenis dokumen, struktur sangat penting untuk mempermudah
pembaca dalam memahami dan mencari pesan atau informasi yang
disampaikan
melalui
dokumen
web.
Struktur
tersebut
juga
akan
mempermudah penulis dalam mengelola informasi seperti memperbarui,
menambah atau menghapusnya.
1. Definisi HTML
HTML yang merupakan singkatan dari HyperText Markup Language
adalah bahasa markup yang terdiri dari seperangkat tag-tag dan
digunakan
untuk
mendeskripsikan
dokumen
atau
halaman
web.
Dokumen HTML tersebut terdiri dari tag-tag HTML yang menjelaskan
berbagai ragam jenis isi dokumen yang berbeda-beda.
2. Strukur HTML
1
2
3
4
5
6
7
8
9
10
11
<!DOCTYPE html>
<html>
<head>
<title>Judul Halaman</title>
</head>
<body>
<h1>Ini adalah heading</h1>
<p>Ini adalah sebuah paragraf</p>
<p>Ini adalah paragraf lain</p>
</body>
</html>
17
a. DOCTYPE deklarasi mendefinisikan jenis dokumen menjadi HTML.
b. Teks antara <html> dan </ html> menggambarkan sebuah dokumen
HTML.
c. Teks antara <head> dan </ head> memberikan informasi tentang
dokumen.
d. Teks antara <title> dan </ title> memberikan judul untuk dokumen.
e. Teks antara <body> dan </ body> menggambarkan isi halaman yang
terlihat dalam browser.
f.
Teks antara <h1> dan </ h1> menggambarkan sebuah judul.
g. Teks antara <p> dan </ p> menggambarkan sebuah paragraf.
3. Tag HTML
Tag HTML adalah kata kunci (nama tag) dikelilingi oleh kurung sudut:
<Nama tag>konten </ Nama tag>

Tag HTML biasanya datang berpasangan seperti <p> dan </ p>.

Tag pertama dalam pasangan adalah tag awal, tag kedua adalah tag
akhir.

Tag akhir ditulis seperti tag awal, tetapi dengan garis miring sebelum
nama tag.

Tag awal sering disebut tag pembuka. Tag akhir sering disebut tag
penutup.
18
4. Elemen HTML
Elemen HTML ditulis dengan awal tag, dengan akhir tag, dengan konten
di antara:
<Tagname> konten </ tagname>
HTML elemen adalah segalanya dari tag awal sampai tag akhir:
<P> Pertama saya HTML paragraf. </ P>
Contoh beberapa elemen HTML Formatting beserta fungsinya:
No
1.
ELEMEN
<h1></h1>
FUNGSI
CONTOH
Membuat heading (judul)
<h1> Judul
dengan ukuran mulai dari
Heading</h1>
<h1> sampai <h7>
2.
<p></p>
Membuat paragraph
<p>Ini Paragraf</p>
3.
<b></b>
Cetak Tebal (bold)
<b>Tebal</b>
4.
<i></i>
Cetak Miring (italic)
<i>Miring</i>
5.
<u></u>
Garis bawah (underline)
<u>Garis Bawah</u>
6.
<hr>
Garis Horizontal
<hr>
7.
<sub></sub>
Subscript
H<sub>2</sub>O
8.
<sup></sup>
Superscript
5<sup>2</sup>=25
9.
<del></del>
Menghapus text
<del>Kesalahan</del>
10.
<mark></mark>
Memberikan highlight
<mark>Teks
(background warna) pada
Color</mark>
teks
11.
<ul></ul>
Membuat list berbentuk
<ul>
menu
<li>Kopi</li>
<li>Teh</li>
<li>Es Campur</li>
</ul>
12.
<ol></ol>
Membuat list berbentuk
<ol>
urutan
<li>Kopi</li>
<li>Teh</li>
<li>Es Campur</li>
</ol>
19
5. Atribut HTML
Elemen HTML dapat memiliki atribut. Atribut memberikan informasi
tambahan tentang elemen. Atribut selalu ditentukan dalam tag awal.
Atribut datang dalam nama / nilai pasangan seperti: name = “value”
1
2
3
4
5
6
7
8
9
10
<!DOCTYPE html>
<htmllang=”id”>
<head>
<title>Judul Hamalan</title>
</head>
<body>
<h1>Ini adalah heading</h1>
<p>Ini adalah sebuah paragraf</p>
</body>
</html>
6. HTML Editor
Untuk menuliskan tag-tag HTML dapat menggunakan perangkat lunak
teks editor seperti notepad atau sublime text. Sublime Text adalah
aplikasi text editor yang dapat digunakan untuk membuka file apapun,
namun secara umum programmer menggunakannya untuk menulis kode.
Sublime Text mendukung sejumlah bahasa pemrograman diantaranya C,
C++, C#, PHP, CSS, HTML, ASP dan banyak lagi. Salah satu
keunggulan Sublime Text adalah mendukung Syntax Highlighter. Syntax
Highlighter adalah fitur dari teks editor untuk menampilkan teks (Terutama
Source Code) dalam berbagai warna, font sesuai dengan kategori. Fitur
Syntax Highlighter mempermudah penggunanya di dalam menulis
bahasa yang terstruktur seperti bahasa pemrograman atau bahasa
markup.
D. Aktifitas Pembelajaran
Dalam kegiatan ini peserta diklat akan melakukan pemformatan dokumen web
menggunakan tag-tag HTML. Bentuk kelompok diskusi setiap kelompok terdiri
dari 3-4 orang. Bacalah seluruh langkah dibawah ini kemudian lakukan dengan
cermat dan teliti. Pelajarilah dengan tekun agar mendapatkan hasil yang
maksimal.
1. Pasang dan konfigurasi perangkat teks editor (Notepad++, Sublime Text dll).
20
2. Buat dokumen atau halaman web dengan tampilan dalam web browser
seperti terlihat dibawah ini.
2.1.
Pemformatan teks HTML
21
22
23
2.2.
Bekerja dengan Hyperlink
Keterangan :
Empire 
"http://www.empireonline.com"
Metacritic "http://www.metacritic.com"
Rotten Tomatoes http://www.rottentomatoes.com
Variety  http://www.variety.com
Apabila di klik home maka akan mengarah ke halaman home.
24
2.3.
Bekerja dengan gambar
2.4.
Bekerja dengan tabel
2.5.
Bekerja dengan Form
25
2.6.
26
Bekerja dengan Audio dan Video
3. Diskusi dengan kelompok tentang tag-tag HTML apa saja yang telah
digunakan dan tag-tag apa saja yang belum diterapkan. Tuliskan dalam
lembar kerja 2.1.seluruh tag-tag tersebut, beserta kegunaan atau
fungsinya dan contoh penulisannya.
4. Komunikasikan hasilnya dalam kelompok dan buatlah kesimpulan.
5. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan
dengan tutor.
E. Latihan Soal
Buatlah website sekolah sederhana, simpan dalam folder dengan nama studikasus1-1. Sepesifikasi dari website tersebut adalah sebagai berikut!
 Terdapat tiga halaman utama, halaman home, halaman profil dan
halaman kontak.
 Dalam
website
tersebut
terdapat
sebuah
logo
dalam
setiap
halamannya.
 Halaman home berisi tentang berita/artikel tentang informasi sekolah.
 Halaman profil berisi tentang deskripsi sekolah, visi dan misi berupa
teks dan sebuah video.
 Halaman kontak berisi sebuah form untuk pengiriman pesan oleh
pengunjung.
 Dari tiga halaman tersebut terdapat sebuah menu yang diberi link yang
dapat mengubungkan antara halaman satu dengan halaman lain.
 Saudara tidak perlu terfokus/berkonsentrasi pada harfiah isi dari
website, baik teks, gambar, video. Diperbolehkan menggunakan
standar mendemontrasikan elemen seperti lorem ipsum atau yang lain
sesuai keinginan saudara agar pengerjaan bisa berjalan dengan cepat
dan
tidak
banyak
membuang
waktu,
yang
terpenting
adalah
penggunaan tag-tag HTML dan website dapat berjalan dengan benar.
F. Rangkuman
HTML adalah markup language untuk mendeskripsikan dokumen web (halaman
web).HTML singkatan HyperText Markup Language, sebuah bahasa markup
27
adalah seperangkat tag markup.Dokumen HTML dijelaskan oleh tag HTML,
setiap tag HTML menjelaskan isi dokumen yang berbeda, Tag HTML biasanya
datang berpasangan seperti <p> dan </ p>. Tag pertama dalam pasangan
adalah tag awal, tag kedua adalah tag akhir. Tag akhir ditulis seperti tag awal,
tetapi dengan garis miring sebelum nama tag. Tag awal sering disebut tag
pembuka, tag akhir sering disebut tag penutup. Elemen HTML ditulis dengan
awal tag, dengan akhir tag, dengan konten di antara HTML, elemen HTML
adalah segalanya dari tag awal sampai tag akhir.
G. Umpan Balik dan Tindak Lanjut
1. Apakah anda memahami tag, elemen dan atribut dalam HTML?
2. Apakah anda sudah bisa menulis dan membaca dokumen HTML?
3. Apakah anda sudah memahami tag-tag HTML beserta mengetahui
fungsinya?
4. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Membuat Dokumen HTML” ini, silahkan mengisi tabel 2 secara jujur dan
sesuai dengan kemampuan yang telah anda dapatkan!
Tabel 2. Tindak Lanjut
IPK
28
Hasil yang didapat
Rencana Tindak Lanjut
29
30
Mengatur Tampilan Dokumen HTML dengan CSS
A. Tujuan Pembelajaran
Melalui praktikum peserta didik dapat menuliskan CSS dalam dokumen atau
halaman HTML dengan benar.
B. Indikator Pencapaian Kompetensi
Menuliskan CSS dalam dokumen atau halaman HTML dengan benar.
C. Uraian Materi
1. Definisi CSS
CSS singkatan Cascading Style Sheets, CSS mendefinisikan bagaimana elemen
HTML yang akan ditampilkan. CSS Bekerja dengan mengaitkan aturan dengan
elemen HTML, aturan-aturan ini yang nantinya mengatur bagaimana elemen
ditampilkan. Dalam menggunakan sebuah CSS terdapat dua unsur, yaitu
selector dan declaration.
 Selector: Merupakan merupakan penunjuk elemen yang akan diatur
style-nya.
 Declaration: Merupakan deklarasi bagaimana sebuah elemen ditata.
Dalam deklarasi terdapat dua unsur yaitu property dan value. Property
menunjuk aspek elemen yang ingin diubah, misal font, warna, lebar.
Sedangkan value adalah pengaturan yang digunakan untuk property
yang dipilih. Contoh jika anda ingin menentukan property font-family,
maka value-nya adalah arial, consolas, calibri.
31
Gambar 6. Struktur penulisan CSS
Dalam CSS juga terdapat cara lain dalam mendefinisikan sebuah selector, yaitu
id selector dan class selector.
 id selector
id digunakan untuk mendefinisikan style pada elemen yang unik dan
hanya bisa digunakan sekali dalam satu elemen.
Cara mendefinisikan: #header { color: red }
Contoh cara mengakses: <div id=”header”>
 class selector
class digunakan untuk mendefinisikan style pada elemen yang serupa,
dan bisa digunakan beberapa kali untuk beberapa elemen.
Cara mendefinisikan: .body { text-align: center }
Cara mengakses: <div class=”body”>
2. Cara Menerapkan CSS dalam HTML
Terdapat tiga cara atau pendekatan dalam menerapkan style sheet dalam
dokumen HTML. Tiga cara tersebut adalah inline, internal dan eksternal.
 Inline
Dengan cara ini kita bisa menerapkan style per-tag melalui atribut style.
Contoh:
<p style=”color:red;>ini adalah sebuah paragraf<p>
 Internal
32
Dengan cara ini, keseluruhan aturan style didefinisikan ke dalam satu
blok dalam dokumen HTML kemudian digunakan dalam elemen-elemen
HTML.
Contoh:
<!DOCTYPE html>
<html>
<head>
<title>Using Internal CSS</title>
<style type="text/css">
body {
font-family: arial;
background-color: rgb(185,179,175);}
</style>
</head>
<body>
<h1>Potatoes</h1>
</body>
</html>
 Eksternal
Seluruh pendefinisian style diletakan di file yang ber-ekstensi CSS dan
dikaitkan dengan dokumen HTML.
Contoh:
<!DOCTYPE html>
<html>
<head>
<title>Using eksternal CSS</title>
<link href="style.css" type="text/css" rel="stylesheet"/>
</head>
<body>
<h1>From Garden to Plate</h1>
<p>A <i>potager</i> is a French term for an ornamental</p>
</body>
</html>
File style.css
body{
font-family: Arial, Verdana, sans-serif;}
h1, h2 {
color: #ee3e80;}
p{
color: #665544;}
33
D. Aktifitas Pembelajaran
Dalam kegiatan ini peserta diklat akan melakukan pemformatan dokumen web
menggunakan
tag-tag
HTML
dan
CSS.
Sebelum
melakukan
aktifitas
pembelajaran, berdoalah terlebih dahulu kemudian bentuklah kelompok diskusi
dengan anggota yang berbeda dari sebelumnya. Setiap kelompok terdiri dari 3-4
orang. Bacalah seluruh langkah dibawah ini kemudian lakukan dengan tekun
dan teliti.
1. Buat folder dalam derektori C:\xampp\htdocs dengan Nama topik 1-2 dan
kemudian dalam folder tersebut buat folder dengan nama CSS.
2. Buat dokumen atau halaman web dengan tampilan dalam web browser
seperti terlihat dibawah ini
2.1. Latihan 1.40 (menggunakan eksternal CSS) dengan ketentuan :
 body dengan nama font: Arial, Verdana, sans-serif.
 Heading 1 dan heading 2 dengan warna: #ee3e80.
 Teks Paragraf dengan warna: #665544.
2.2. Latihan 1.41 (menggunakan internal CSS) dengan ketentuan:
 Body dengan nama font arial dan warna latar belakang rgb
(185,179,175)
 h1 menggunakan warna rgb (255,255,255)
2.3. Latihan 1-43 (menggunakan internal CSS)
34
2.4. Latihan 1.44.
2.5.
Latihan 1-45.
2.6.
Latihan 1-46 pengaturan warna dengan CSS
35
36
2.7.
Latihan 1-47.
2.8.
Latihan 1-48 mendesain teks dengan CSS
2.9.
Latihan 1-49 membuat teks Box dengan CSS.
2.10.
Latihan 1-50
2.11.
Latihan 1-51 Mempercantik Tabel dan Form
2.12.
Latihan 1-52.
2.13.
Latihan 1-53 Membuat Layout Web
37
2.14.
Latihan 1-54 Membuat Galery Gambar
3. Komunikasikan hasilnya dalam kelompok dan buatlah kesimpulan.
4. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan dengan
tutor
E. Latihan Soal
1. Buatlah sebuah layout website sekolah seperti dibawah ini, gunakan tagtag HTML yang telah anda pelajari untuk membentuk setiap komponen
yang diperlukan oleh website dan gunakan CSS untuk mendesain layout
dan mengatur tampilan website. simpan file HTML dan CSS dalam folder
studi-kasus1-2
Gambar 7. Lembar kerja desain layout halaman web
38
F. Rangkuman
CSS merupakan salah satu teknologi dalam aplikasi web, CSS memiliki peran
menjadikan tampilan aplikasi web (dokumen HTML) menjadi lebih menarik dan
bagus. Dengan konsep yang telah dimiliki CSS kita dapat membuat sebuah frontend aplikasi web dengan bagus dengan mudah karena terdapat banyak sekali
cara dan fitur yang dimiliki CSS.
G. Umpan Balik dan Tindak Lanjut
1. Apakah saudara sudah mengetahui gimana cara-cara CSS dalam
mengatur dokumen HTML?
2. Apakah saudara sudah mengrtahui apa itu selektor, declaration, property
dan velue dalam CSS?
3. Apakah saudara mengerti perbedaan selektor id dan selektor class dalam
CSS?
4. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Mengatur Tampilan Dokumen HTML dengan CSS” ini, silahkan mengisi
tabel 3 secara jujur dan sesuai dengan kemampuan yang telah anda
dapatkan!
Tabel 3. Tindak Lanjut
IPK
Hasil yang didapat
Rencana Tindak Lanjut
39
40
41
42
Mengenal Dasar Pemrograman PHP
A. Tujuan Pembelajaran
1. Melalui observasi peserta diklat dapat memahami kerangka kerja
pemrograman PHP.
2. Melalui praktikum diharapkan peserta didik dapat menerapkan struktur
kontrol percabangan dan perulangan dalam pemrograman PHP.
B. Indikator Pencapian Kompetensi
1. Memahami kerangka kerja pemrograman PHP.
2. Menerapkan struktur kontrol percabangan dan perulangan dalam
pemrograman PHP.
C. Uraian Materi
1. Pengenalan PHP dan Web Dinamis
PHP adalah bahasa pemrograman komputer Server-side scripting yang
diciptakan khusus untuk menciptakan konten web dinamis. Server-side scripting
adalah script program yang berjalan di sisi server, PHP akan diparsing didalam
web server oleh interpreter dan diterjemehkan dalam bentuk HTML dan akhirnya
akan ditampilkan oleh browser yang dibuka oleh user. Berikut merupakan alur
request-response web dinamis.
43
Gambar 8. Alur request-response web dinamis.
2.
Prinsip-prinsip Dasar Bahasa pemrograman PHP
a) Case Sensitivity
Bahasa permrograman PHP adalah bahasa permograman yang case
sensitive, semisal kita menggunakan nama sebuah variabel $nama, $NAMA
dan $NaMa maka semua tipe data tersebut terdefinisi secara berbeda.
b) Struktur Utama, Statement dan Semicolon
Kode PHP diawali dengan tag <?php dan diakhiri dengan ?>.Statement
atau pernyataan adalah kumpulan dari kode PHP untuk melakukan sesuatu.
Setiap selesai membuat sebuah pernyataan harus diakhiri dengan
semicolon atau tanda titik koma ;
<?php
echo ‚halo dunia‛;
?>
44
c) Komentar
Komentar berfungsi untuk memberikan informasi bagi seorang yang ingin
menbaca kode yang telah anda buat, komentar akan diabaikan oleh PHP
Execution, artinya komentar tidak akan memberikan efek apa-apa bagi kode
lain yang telah anda buat. Contoh:
$x = 17;// menyimpan 17 dalam variavle x
Anda dapat menggunakan cara seperti ini apabila mempunyai komentar lebih
satu baris.
/*
Ini adalah komentar yang lebih dari
Satu baris
*/
d) Identifier
Identifier adalah sebuah pengenal, dalam PHP identifier digunakan untuk
memberi nama sebuah variabel, fungsi, konstanta atau class.
Untuk membuat nama dari sebuah variabel harus diawali dengan tanda
dollar ($). Contoh:
$bill
$head_count
$MaximumForce
$_underscore
$_int
Berikut contoh penamaan variabel yang salah:
$not valid
$|
$3wa
Penamaan sebuah fungsi tidaklah case-sensitive. Berikut contoh penamaan
fungsi yang benar:
list_all_user
deleteFile
GET_ALL
Untuk penamaan class juga menggunakan standar aturan penamaan
indentifier PHP. Berikut contoh penamaan class pada PHP.
Person
Account
Konstanta adalah identifier yang memiliki sebuah nilai, nilai tersebut dapat
berupa boolean, integer, double, dan string. Sebuah konstanta didefinisikan
menggunakan define(). Contoh:
define(‘PUBLISHER’, ‚O’Reilly & Associets‛);
echo PUBLISHER;
45
e) Keywords atau Reserved Words
Keywords adalah kata yang sudah digunakan oleh PHP, artinya kata tersebut
sudah tidak bisa kita gunakan lagi untuk mendefinisikan sebuah identifier baik
sebuah variabel, fungsi, konstanta atau class.
Berikut berupakan reserved words dalam PHP:
3. Tipe Data
PHP menyediakan empat tipe data untuk menyimpan sebuah nilai, berikut
merupakan empat tipe data dalam PHP:
a) Integer
Integer adalah sebuah tipe data yang merepresentasikan bilangan bulat
atau utuh, positif maupun negatif dan bukan pecahan. Contoh 1, 2 dan -256
46
b) Float-Point Number
Float disebut disebut sebagai bilangan pecahan atau sering juga disebut
degan bilangan real yang mengandung angka desimal dibelakang koma.
Contoh 3.14
0.017
c) Strings
Tipe data string adalah untuk menyimpan sebuah untaian kalimat, dalam
PHP tipe data string diekspresikan diapit oleh petik tinggal atau petik
ganda. Contoh: ‘Ini adalah data string’ atau ‚ini adalah tipe
data string‛
d) Boolean
Bolean adalah tipe data yang merepresentasikan nilai kebenaran (truth
value).
Contoh:
if ($found) {
echo ‚data telah ditemukan‛;
}
Maksud dari kode diatas adalah jika variabel $found berisi “true” maka
akan dilakukan ekskusi kode echo ‚data telah ditemukan‛;
e) Array
Array adalah variabel yang menyimpan sekelompok nilai, yang dapat
diidentifikasikan berdasarkan posisi index-nya atau dengan identifikasi
nama (string). Contoh:
4. Variabel
Variabel dalam PHP diidentifikasikan dengan tanda dollar ($). Contoh:
47
Kita juga dapat mengganti sebuah nilai variabel dengan jenis atau tipe
data yang berbeda.
5. Operator
Dalam PHP operator dibagi menjadi 4 yaitu, assigment operator,
aritmatika operator, relasional operator dan logic operator. Assigment
operator adalah operator yang digunakan untuk memasukan sebuah nilai
kedalam sebuah variabel. Assignment operator ditandai dengan “=”.
Untuk aritmatika operator dalam daftar berikut:
Tabel 3. Operator aritmatika dalam PHP
Operator
Keterangan
+
Penjumlahan
-
Pengurangan
*
Perkalian
/
Pembagian
++
Menambah nilai sebesar 1
--
Mengurangi nilai sebesar 1
Operator
relasional
adalah
operator
yang
digunakan
untuk
membandingkan dua buah nilai, hasil operasi akan menghasilkan nilai
true atau false. Berikut merupakan contoh operator relasional:
Tabel 4. Operator relasional dalam PHP
Operator
48
Keterangan
$i == $u
Memeriksa apakah $i sama dengan $u
$i != $u
Memeriksa apakah $i tidak sama dengan $u
$i < $u
Memeriksa apakah $i kurang dari $u
$i > $u
Memeriksa apakah $i lebih dari $u
$i <= $u
Memeriksa apakah $i kurang dari sama dengan $u
$i >= $u
Memeriksa apakah $i lebih dari sama dengan $u
Sedangkan operator logika adalah operator yang digunakan untuk
mengoprasikan dua buah operand yang bertipe boolean, Operator logika
adalah sebagai berikut:
Tabel 5. Operator logika dalam PHP
Operator
&&
Keterangan
Logika AND
||
Logika OR
!
Logika NOT
6. Struktur Kontrol
Struktur kontrol adalah sintaks yang digunakan untuk mengatur proses kerja
aplikasi/program. Struktur kontrol terbagi menjadi dua yaitu percabangan atau
perulangan.
a) Percabangan
Percabangan digunakan untuk menentukan kode mana yang akan
dijalankan, percabangan diawali dengan pengecekan parameter untuk
diseleksi. Pada percabangan terdapat beberapa sintak yang bisa digunakan.
If, If digunakan untuk mengecek ekspresi, apabila ekspresi bernilai true maka
pernyataan akan di eksekusi.
if (ekspresi) pernyataan
Atau apabila saat ekspresi bernilai false ingin terdapat penyataan yang di
eksekusi maka bisa menggunakan if else
if (ekspresi)
pernyataan
else pernyataan
Atau kita bisa menggunakan elseif apabila memiliki banyak ekspresi atau
ekspresi
if (ekspresi)
pernyataan
elseif (ekspresi)
pernyataan
elseif (ekspresi)
pernyataan
else
pernyataan
Selain if kita bisa menggunakan switch ketika memiliki banyak kondisi
49
switch ($menu) {
case ‘sop’:
pernyataan
break;
case ‘soto’:
pernyataan
break;
case ‘sate’:
pernyataan
break;
case ‘bakso’:
pernyataan
break;
}
b) Perulangan
Saat membangun sebuah aplikasi web, anda akan menjumpai banyak
kasus untuk melakukan perulangan terhadap statement-statement
tertentu. Dalam proses perulangan PHP menyediakan kode untuk
melakukan perulangan, antara lain while, do-while, for dan foreach.
Struktur penulisan while:
while (ekspresi){
pernyataan
}
Struktur penulisan do-while:
do {
pernyataan
} while (ekspresi);
Struktur penulisan for:
for (inisialisasi; ekspresi; increment/decrement) {
pernyataan
}
Struktur penulisan foreach:
for ($array as $current) {
pernyataan
}
7. Memasukan kode PHP kedalam Dokumen HTML
Perintah echo dalam PHP berguna untuk mencetak nilai ke layar browser, selain
menggunakan echo anda juga menggunakan print. Berikut contoh kode php
yang sederhana:
50
<?php
echo‚halo dunia‛;
?>
Ada beberapa cara dalam mengekspresikan kode PHP dalam sebuah dokumen
HTML, yaitu dengan menyisipkan PHP dalam HTML atau HTML dalam PHP.
Berikut merupakan contoh PHP dalam HTML:
<!DOCTYPE html>
<html>
<head>
<title>PHP dalam HTML</title>
</head>
<body>
<p>Script PHP pertama saya.</p>
<?php echo ‚halo dunia‛;?>
</body>
</html>
Contoh HTML dalam PHP:
<?php
echo‚<html>‛;
echo‚<head>‛;
echo‚<title>PHP dalam HTML</title>‛;
echo‚</head>‛;
echo‚<body>‛;
echo‚<p>Script PHP pertama saya.</p>‛;
echo‚</body>‛;
echo‚</html>‛;
?>
D. Aktifitas Pembelajaran
Dalam kegiatan ini peserta diklat akan melakukan latihan membuat dokumen
web dan pengformatan dokumen pemrograman PHP. Bentuk kelompok diskusi
setiap kelompok terdiri dari 3-4 orang yang saling bertanggung jawab terhadap
perkerjaannya masing-masing. Bacalah seluruh langkah dibawah ini kemudian
lakukan dengan teliti.
1. Buat folder dalam derektori C:\xampp\htdocs dengan Nama topik2-1.
2. Tuliskan kode program dibawah ini kemudian tampilkan hasilnya pada
web browser dan analisis hasilnya.
2.1.
Latihan 2-1 Mengekspresikan PHP dalam dokumen HTML
C:xampp/htdocs/topik2-1/latihan2-1.php
1
2
<!DOCTYPE html>
<html>
51
3
4
5
6
7
8
9
10
11
<head>
<title>PHP dalam HTML</title>
</head>
<body>
<?phpecho"Kalimat yang ditulis melalui kode PHP"; ?>
<p> Kalimat yang ditulis melalui HTML </p>
<?phpecho"Kalimat yang ditulis melalui kode PHP"; ?>
</body>
</html>
Amati bagaimana sebuah kalimat bisa tampil dalam browser, apa perbedaan
menampilkan hanya melalui HTML dan bila menggunakan script PHP,
jelaskan analisa anda!
2.2.
Latihan 2-2 Pendefinisian Variabel
C:xampp/htdocs/topik2-1/latihan2-2.php
1
2
3
4
5
6
<?php
$kata="Helo dunia";
$angka_int=5;
$angka_float=3.14;
$found=true;
?>
Hapus tanda dolar ($) kemudian jalankan lagi, analisis dan jelaskan apa
yang terjadi!
2.3.
Latihan 2-3.
C:xampp/htdocs/topik2-1/latihan2-3.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!DOCTYPE html>
<html>
<head>
<title>Demo Variabel</title>
</head>
<body>
<?php
echo"<h1>Demo Variabel</h1>";
$angka=100;
echo"ini adalah nilai angka ".$angka."<br>";
$angka_2=$angka+2;
echo"ini adalah hasilnya apabila angka + 2 = ".$angka_2;
?>
</body>
</html>
Amati hasil kode diatas, lalu simpulkan!
2.4.
Latihan 2-4 Menggunakan Operator
C:xampp/htdocs/topik2-1/latihan2-4.php
1
2
3
4
5
6
7
8
52
<!DOCTYPE html>
<html>
<head>
<title>Demo opetor</title>
</head>
<body>
<?php
$penambahan=5+5;
9
10
11
12
13
14
15
16
17
18
19
20
$pengurangan=5-2;
$perkalian=5*5;
$pembagian=10/2;
$sisa_bagi=30%4;
echo"5 + 5 = ".$penambahan."<br>";
echo"5 - 2 = ".$pengurangan."<br>";
echo"5 * 5 = ".$perkalian."<br>";
echo"10 / 2 = ".$pembagian."<br>";
echo"30 % 4 = ".$pembagian."<br>";
?>
</body>
</html>
Amati hasil kode diatas, lalu simpulkan!
2.5.
Latihan 2-5.
C:xampp/htdocs/topik2-1/latihan2-5.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!DOCTYPE html>
<html>
<head>
<title>Demo operator</title>
</head>
<body>
<?php
$x=5;
echo"nilai dari x adalah ".$x."<br>";
$x+=4;
echo"hasil dari operasi x += 4 adalah ".$x."<br>";
echo"karena x += 4 itu memiliki maksud x = x + 4";
?>
</body>
</html>
Ganti operator “+=” dengan: “-=”, “*=”, “/=”, “%=”. Amati hasil operator
tersebut lalu simpulkan!
2.6.
Latihan 2-6 Penggunaan Struktur Kontrol Percabangan
C:xampp/htdocs/topik2-1/latihan2-6.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!DOCTYPE html>
<html>
<head>
<title>Percabangan if</title>
</head>
<body>
<?php
$a=10;
$b=5;
if($a>$b){
echo"cetak kata apabila a > b";
}
?>
</body>
</html>
Ganti nilai dalam variabel $a dan $b, amati hasilnya dan simpulkan!
53
2.7.
Latihan 2-7.
C:xampp/htdocs/topik2-1/latihan2-7.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!DOCTYPE html>
<html>
<head>
<title>Percabangan if else</title>
</head>
<body>
<?php
$nama="abdul munif";
if($nama=="abdul munif"){
echo"nama = ".$nama;
}else{
echo"nama bukan abdul munif, tapi ".$nama;
}
?>
</body>
</html>
Ganti string “abdul munif” dalam variabel $nama dengan nama anda, amati
hasilnya dan simpulkan!
2.8.
Latihan 2-8.
C:xampp/htdocs/topik2-1/latihan2-8.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html>
<head>
<title>Percabangan if-elseif dan operator logika</title>
</head>
<body>
<?php
$a=10;
$b=11;
$c=12;
$d=12;
if($a<=$b&&$c==$d){
echo"a kurang dari b dan c sama dengan d";
}elseif($a>=$b&&$c==$d){
echo"a lebih dari b dan c sama dengan d";
}elseif($a==$b&&$c>=$d){
echo"a sama dengan b dan c lebih dari sama dengan d";
}else{
echo"definisikan sendiri hasilnya!";
}
?>
</body>
</html>
Ganti nilai dalam variabel $a, $b, $c dan $d, Analisa hasilnya dan simpulkan!
2.9.
Latihan 2.9
C:xampp/htdocs/topik2-1/latihan2-9.php
1
2
3
4
54
<!DOCTYPE html>
<html>
<head>
<title>Seleksi switch</title>
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
</head>
<body>
<?php
$i=0;
if($i==0){
echo" i setara dengan o";
}
elseif($i==1){
echo"i setara dengan 1";
}
elseif($i==2){
echo"i setara dengan 2";
}
// Ekuivalen dengan pendekatan switch
echo"<br>";
switch($i){
case0;
echo" i setara dengan o";
break;
case1;
echo" i setara dengan 1";
break;
case3;
echo" i setara dengan 2";
break;
}
?>
</body>
</html>
Ganti nilai dalam variabel $i, Analisa hasilnya dan simpulkan!
2.10.
Latihan 2-10 Penggunaan Struktur Kontrol Perulangan
C:xampp/htdocs/topik2-1/latihan2-10.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!DOCTYPE html>
<html>
<head>
<title>Perulangan do-while</title>
</head>
<body>
<?php
$i=0;
do{
echo"$i<br>";
$i++;//increment counter
}
while($i<10);
?>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.11.
Latihan 2-11
C:xampp/htdocs/topik2-1/latihan2-11.php
1
2
<!DOCTYPE html>
<html>
55
3
4
5
6
7
8
9
10
11
12
13
14
<head>
<title>Perulangan while</title>
</head>
<body>
<?php
$i=0;
while($i<10){
echo"halo dunia <br>";
$i=$i+1;//increment counter
}
?>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.12.
Latihan 2.12 perulangan menggunakan for.
C:xampp/htdocs/topik2-1/latihan2-12.php
1
2
3
4
5
6
7
8
9
10
11
12
13
<!DOCTYPE html>
<html>
<head>
<title>Perulangan for</title>
</head>
<body>
<?php
$x=10;
for($i=0;$i<=$x;$i++){
echo"$i ";
}
?>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.13.
Latihan 2-13 perulangan dengan menggunakan foreach.
C:xampp/htdocs/topik2-1/latihan2-13.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!DOCTYPE html>
<html>
<head>
<title>Perulangan foreach</title>
</head>
<body>
<?php
$biodata=array("nama"=>"abdul munif",
"alamat"=>"malang",
"jabatan"=>"direktur"
);
foreach($biodataas$value){
echo$value."<br>";
}
?>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
56
3. Komunikasikan hasil praktikum pada langkah 2 dalam kelompok dan
buatlah kesimpulan.
4. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan
dengan tutor.
E. Latihan Soal
Buatlah sebuah folder dengan nama studi-kasus2-1 sebagai tempat
penyimpanan file dibawah ini.
1. Buatlah sebuah program menyimpan suhu air (data integer) dalam
derajat celcius dalam sebuah variabel dan menuliskan wujud air
kedalam browser sebagai barikut:

Jika suhu air <= 0 derajat maka dibrowser tercetak kata “beku”.

Jika suhu air > 0 dan kurang dari 100 derajat maka di browser
tercetak kata “cair”.

Jika suhu air >= 100 maka tercetak “uap”.
2. Buatlah sebuah program yang menyimpan data jumlah anak ayam
(tipe data integer) dan menampilkan hasil seperti dibawah ini di
layar browser. Misal kita menyimpan data jumlah anak ayam
sejumlah 5, Maka dilayar browser akan tercetak:
Anak ayam turun 5
Mati satu tinggal 4
Mati satu tinggal 3
Mati satu tinggal 2
Mati satu tinggal induknya
Gunakan perulangan dan percabangan untuk membuat program
ini!
57
F. Rangkuman
PHP adalah basaha pemrograman komputer Server-side scripting yang
diciptakan khusus untuk menciptakan konten web dinamis. PHP akan
diparsing didalam web server oleh interpreter dan diterjemahkan dalam
bentuk
HTML
dan
akhirnya
akan
ditampilkan
oleh
browser.
PHP
menyediakan empat tipe data untuk menyimpan sebuah nilai, yaitu Integer,
Floating-Point Number, String dan Booleans.
Dalam PHP, variabel
diidentifikasikan dengan diawali tanda dollar ($), dan operator dibagai
menjadi empat yaitu operator assignment, operator aritmatika, operator
relasional dan operator logika. PHP juga menyediakan sebuah sintaks untuk
mengatur proses kerja aplikasi/program yaitu percabangan dan perulangan.
Percabangan digunakan untuk menentukan alur kode mana yang akan
dijalankan dan perulangan digunakan untuk melakukan proses perulangan
terhadap statement-statement tertentu.
G. Kunci Jawaban
1.
58
2.
H. Umpan Balik dan Tindak Lanjut
1. Apakah anda sudah memahami alur request-response web dinamis?
2. Apakah anda memahami kerangka program PHP?
3. Apakah anda sudah memahami apa itu tipe data, variabel dan operator
pada PHP?
4. Apakah anda sudah mampu membuat program dalam bentuk struktur
kontrol percabangan dan perulangan dengan PHP?
5. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Mengenal Dasar Pemrograman PHP” ini, silahkan mengisi tabel 4 secara
jujur dan sesuai dengan kemampuan yang telah anda dapatkan!
Tabel 4. Tindak Lanjut
IPK
Hasil yang didapat
Rencana Tindak Lanjut
59
60
4.
61
62
Mengenal Fungsi dan Array dalam PHP
A. Tujuan Pembelajaran
Melalui praktikum peserta diklat dapat menerapkan fungsi dan array dalam
pemrograman PHP
B. Indikator Pencapaian Kompetensi
Menerapkan fungsi dan array dalam pemrograman PHP.
C. Uraian Materi
1. Fungsi
Fungsi adalah sekumpulan blok program yang didefinisikan dengan nama
tertentu dan berfungsi untuk melaksanakan tugas-tugas yang spesifik.
Mendefinikan sebuah fungsi
function [&] nama_fungsi([parameter[, ...]]) {
List pernyataan
}
Berikut merupakan jenis fungsi:
a) Fungsi yang tidak mengembalikan nilai
Fungsi ini menjalankan script yang ada dalam blok fungsi. Contoh:
Function cetak_kata() {
echo ‚mencetak sebuah kata‛;
}
b) Fungsi dengan parameter
Fungsi yang memungkinkan kita untuk memasukan informasi untuk diproses
dalam fungsi. Contoh:
Function cetak_nama($nama) {
echo ‚halo ‛ .$nama;
}
Variabel $nama akan diproses dalam fungsi cetak_nama
63
c) Fungsi yang mengembalikan nilai (return value)
Function jumlah($nilai1, $nilai2) {
$total = $nilai1 + $nilai2;
return $total;
}
2. Array
Array adalah koleksi data yang disimpan secara bersama dalam sebuah tipe
data array, dan dapat diakses menggunakan index-nya, terdapat dua jenis
array:
a) Array index numeric
Array jenis ini memiliki index dengan tipe numeric, terurut dari nol (0)
kecil hingga ke terbesar.
Contoh:
$address = array(‚gresik‛, ‚surabaya‛, ‚malang‛);
b) Aray index asosiatif
Array dengan index yang kita definisikan dengan nama tertentu. Contoh:
$indonesia = array(‚presiden‛ => ‚jokowi,
‚ibukota‛ => ‚jakarta‛
‚benua‛ => ‚asia‛
);
D. Aktifitas Pembelajaran
Dalam kegiatan ini peserta diklat akan menerapkan fungsi dan array
menggunakan pemrograman PHP. Bentuk kelompok diskusi setiap kelompok
terdiri dari 3-4 orang. Bacalah seluruh langkah dibawah ini kemudian lakukan
dengan teliti.
1. Buat folder dalam derektori C:\xampp\htdocs dengan Nama topik2-2.
2. Tuliskan kode program dibawah ini kemudian tampilkan hasilnya pada web
browser dan analisis hasilnya.
64
2.1.
Latihan 2-14 Membuat Fungsi Sederhana
C:xampp/htdocs/topik2-2/latihan2-14.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE html>
<html>
<head>
<title>Fungsi</title>
</head>
<body>
<?php
function mySum($a,$b){
$total=$a+$b;
return$total;
}
$myNumber=0;
echo"sebelum
fungsi
".$myNumber."<br />";
$myNumber= mySum(7,5);
echo"setelah
fungsi
".$myNumber."<br />";
?>
</body>
</html>
dijalankan,
nilai
dari
myNumber
adalah
dijalankan,
nilai
dari
myNumber
adalah
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.2. Latihan 2-15 Argumen fungsi.
C:xampp/htdocs/topik2-2/latihan2-15.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!DOCTYPE html>
<html>
<head>
<title>Argumen fungsi</title>
</head>
<body>
<?php
function print_teks($teks,$bold=true){
echo$bold?'<b>'.$teks.'</b>':$teks;
}
print_teks('Indonesiaku');
echo"<br>";
print_teks('Indonesiaku',false);
?>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.3. Latihan 2-16 Fungsi greeting.
C:xampp/htdocs/topik2-2/latihan2-16.php
1
2
3
4
5
6
7
<!DOCTYPE html>
<html>
<head>
<title>Fungsi Greeting</title>
</head>
<body>
<?php
65
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
function ShowGreeting($jam){
echo'Sekarang Pukul '.$jam.'.00';
if(($jam>=00.01)&&($jam<=10.00)){
echo' : Selamat Pagi';
}
if(($jam>=10.01)&&($jam<=14.59)){
echo' : Selamat Siang';
}
if(($jam>=15.00)&&($jam<=18.59)){
echo' : Selamat Sore';
}
if(($jam>=19.00)&&($jam<=23.59)){
echo' : Selamat Malam';
}
if(($jam==00.00)){
echo' : Selamat Malam';
}
}
ShowGreeting(12.00);
?>
</body>
</html>
Ganti
nilai argumen dalam fungsi ShowGreeting sesuai keinginan anda
dalam format jam, amati hasilnya dan simpulkan!
2.4.
Latihan 2-17 Passing Argumen dalam Fungsi
C:xampp/htdocs/topik2-2/latihan2-17.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<!DOCTYPE html>
<html>
<head>
<title> Passing Argumen </title>
</head>
<body>
<?php
function byval($bil){
$bil--;
}
function byref(&$bil){
$bil--;
}
$input=4;
echo"Nilai awal = ".$input."<br/>";
byval($input);
echo"by value = ".$input."<br/>";
byref($input);
echo"by reference = ".$input;
?>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
66
2.5.
Latihan 2-18 Menggenerate Tabel Menggunakan Fungsi
C:xampp/htdocs/topik2-2/latihan2-18.php
<!DOCTYPE html>
<html>
<head>
<title> Generate Sel Tabel </title>
</head>
<body>
<?php
function myTabel($baris,$kolom){
echo"<table border=50>";
for($i=1;$i<=$baris;$i++){
echo"<tr height = 50>";
for($j=1;$j<=$kolom;$j++){
echo"<td width=50></td>";
}
echo"</tr>";
}
echo"</table>";
}
myTabel(5,5);
?>
</body>
</html>
Ganti nilai argumen dalam fungsi myTabel, analisa hasilnya dan simpulkan!
2.6.
Latihan 2-19 Fungsi Built-in PHP
C:xampp/htdocs/topik2-2/latihan2-19.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<!DOCTYPE html>
</html>
<head>
<title>Fungsi Built-in</title>
</head>
<body>
<?php
$name="Iswanul Umam";
echostrpos($name,"U");
echo"<br><br>";
$stringAwal="Saya suka belajar PHP";
echo$stringAwal."<br>";
echo"Hasil setelah menggunakan fungsi srt_replace: <br>";
$stringAkhir=str_replace("Saya","Kamu",$stringAwal);
echo$stringAkhir;
echo"<br><br>";
$karakter="Belajar web dinamis dengan PHP";
echo$karakter."<br>";
$panjangKarakter=strlen($karakter);
echo"Panjang karakternya adalah ".$panjangKarakter;
echo"<br><br>";
echo"Sekarang tanggal ".date("Y/m/d")."<br>";
echo"Sekarang tanggal ".date("Y.m.d")."<br>";
echo"Sekarang tanggal ".date("Y-m-d")."<br>";
echo"Sekarang hari ".date("l");
?>
</body>
</html>
67
2.7.
Latihan 2-20 Menyimpan Data dalam Array
C:xampp/htdocs/topik2-2/latihan2-20.php
1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE html>
</html>
<head>
<title>Menyimpan data dalam array</title>
</head>
<body>
<?php
$mobil=array("Volvo","BMW","Toyota");
echo"Saya memiliki ".$mobil[0].", ".$mobil[1]." dan ".$mobil[2].".";
?>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.8.
Latihan 2-21 Menampilkan Data Array
C:xampp/htdocs/topik2-2/latihan2-21.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<!DOCTYPE html>
</html>
<head>
<title>Array</title>
</head>
<body>
<?php
$mobil=array("Volvo","BMW","Toyota");
$totalData=count($mobil);
echo"Mengekstrak data dalam array menggunakan perulangan for <br>";
for($x=0;$x<$totalData;$x++){
echo$mobil[$x];
echo"<br>";
}
echo"Mengekstrak data dalam array menggunakan perulangan foreach
<br>";
foreach($mobilas$value){
echo$value."<br>";
}
echo"Mengekstrak data dalam array menggunakan perulangan foreach
dengan meenampilkan index <br> ";
foreach($mobilas$key=>$value){
echo$key." ".$value."<br>";
}
?>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.9.
Latihan Array 2-22 Index Asosiatif
C:xampp/htdocs/topik2-2/latihan2-22.php
1
2
3
4
68
<!DOCTYPE html>
</html>
<head>
<title>Array Index Asosiatif</title>
</head>
5
6
7
8
9
10
11
12
13
14
15
16
<body>
<?php
$umur=array("Munif"=>"30","Umam"=>"21","Alvan"=>"3");
echo"Umur Munif ".$umur['Munif']." tahun.";
echo"<br><br>";
foreach($umuras$x=>$x_value){
echo"Umur ".$x." adalah ".$x_value;
echo"<br>";
}
?>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.10.
Latihan 2-23 Fungsi Built-in untuk Array
C:xampp/htdocs/topik2-2/latihan2-23.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
39
30
31
<!DOCTYPE html>
</html>
<head>
<title>Fungsi Built-in Array</title>
</head>
<body>
<?php
//fungsi built-in untuk array
$mobil=array("Volvo","BMW","Toyota");
foreach($mobilas$value){
echo$value." ";
}
sort($mobil);
echo"<br><strong>Data setelah di sorting:</strong><br>";
foreach($mobilas$value){
echo$value." ";
}
echo"<br>";
$umur=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
echo"<br>";
foreach($umuras$key=>$value){
echo$key." ".$value."<br>";
}
arsort($umur);
echo"<strong>Data setelah di arsort:</strong><br>";
foreach($umuras$key=>$value){
echo$key." ".$value."<br>";
}
?>
</body>
</html>
Terapkan juga fungsi biult-in ksort(), rsort(), asort() dan krsort(). Amati
hasilnya dan simpulkan!
69
2.11.
Latihan 2-24 Array Multidimensi
C:xampp/htdocs/topik2-2/latihan2-24.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<!DOCTYPE html>
</html>
<head>
<title>Array Multidimensi</title>
</head>
<body>
<?php
//array multidimensi
$mobil=array(
array("Volvo",22,18),
array("BMW",15,13),
array("Jaguar",5,2),
array("Lamborgini",17,15)
);
echo$mobil[0][0].":
masih
tersisa:
".$mobil[0][2].".<br>";
echo$mobil[1][0].":
masih
tersisa:
".$mobil[1][2].".<br>";
echo$mobil[2][0].":
masih
tersisa:
".$mobil[2][2].".<br>";
echo$mobil[3][0].":
masih
tersisa:
".$mobil[3][2].".<br>";
for($row=0;$row<4;$row++){
echo"<p><b>Index Row $row</b></p>";
echo"<ul>";
for($col=0;$col<3;$col++){
echo"<li>".$mobil[$row][$col]."</li>";
}
echo"</ul>";
}
?>
</body>
</html>
".$mobil[0][1].",
terjual:
".$mobil[1][1].",
terjual:
".$mobil[2][1].",
terjual:
".$mobil[3][1].",
terjual:
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
3. Komunikasikan hasil praktikum pada langkah 2 dalam kelompok dan buatlah
kesimpulan.
4. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan dengan
tutor.
E. Latihan Soal
Buatlah folder dengan nama studi-kasus2-2 untuk menyimpan file studi
kasus dibawah ini.
1. Buatlah sebuah fungsi yang digunakan untuk menerima sebuah bilangan
rill yang merupakan jari-jari sebuah lingkaran dan menghasilkan sebuah
luas lingkaran berdasarkan jari-jari tersebut!
70
2. Buatlah sebuah fungsi untuk perhitungan fibonacci, dimana inputan pada
fungsi digunakan untuk menunjukan bilangan kesekian dari deret
tersebut!
3. Buatlah sebuah fungsi untuk perhitungan nilai pangkat, dengan inputan x
(bilangan yang dikuadratkan) dan inputan y (bilangan pangkat)!
F. Rangkuman
Fungsi adalah sekumpulan blok program yang didefinisikan dengan nama
tertentu dan berfungsi untuk melaksanakan tugas-tugas yang spesifik. Secara
garis besar terdapat tiga macam fungsi dalam PHP, yaitu fungsi yang tidak
mengembalikan nilai, fungsi dengan parameter yang memungkin kita untuk
memasukan
informasi
untuk
diproses
dalam
fungsi,
dan
fungsi
yang
mengembalikan nilai (return value).
Array adalah koleksi data yang disimpan secara bersama dalam sebuah
tipe data array, dan dapat diakses menggunakan index-nya, terdapat dua jenis
array yaitu array index numerik dan array index asosiatif, array index numerik
memiliki index tipe numerik terurut dari bilangan nol (0) sampai dengan bilangan
sampai jumlah terbesar, sedangkan array index asosiatif adalah array yang
index-nya didefinisikan dengan nama tertentu.
G. Kunci Jawaban
1. Program membuat fungsi untuk menghitung lingkaran
<?php
function luaslingkaran($jari2){
return 3.14 * $jari2 * $jari2;
}
echo luaslingkaran(4.5);
?>
71
2. Program deret fibonacci
<?php
function fibonacci($deret){
$sekarang=1;
$sebelum=0;
for ($i=0; $i<$deret; $i++)
{
$output = $sebelum + $sekarang;
echo " $output";
$sebelum = $sekarang;
$sekarang = $output;
}
}
echo fibonacci(10);
?>
3. Progam Pangkat menggunakan fungsi dengan parameter x sebagai
bilangan dan y sebagai pangkat.
<?php
function pangkat($x,$y){
$hasil = 1;
for ($i=0; $i<$y; $i++)
{
$hasil = $hasil * $x;
}
return $hasil;
}
echo pangkat(3,3);
?>
H. Umpan Balik dan Tindak Lanjut
1. Apakah anda sudah memahami fungsi dan array dalam bahasa PHP?
2. Apakah anda sudah mampu membuat fungsi dan array dalam bahasa
PHP untuk memecahkan sebuah masalah dalam program?
3. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Mengenal Fungsi dan Array dalam PHP” ini, silahkan mengisi tabel 5
secara jujur dan sesuai dengan kemampuan yang telah anda dapatkan!
72
Tabel 5. Tindak Lanjut
IPK
Hasil yang didapat
Rencana Tindak Lanjut
73
74
75
76
Operasi File pada pemrograman PHP
A. Tujuan Pembelajaran
Melalui praktikum peserta diklat dapat menerapkan operasi file dalam
pemrograman PHP.
B. Indikator Pencapaian Kompetensi
Menerapkan operasi file dalam pemrograman PHP.
C. Uraian Materi
1. Menggunakan File
File dapat dijadikan alternatif untuk menyimpan data yang dimasukan
melalui form. File juga dapat digunakan untuk menyimpan data-data yang
digunakan untuk keperluan konfigurasi sistem. PHP menyediakan fitur untuk
membaca, merubah dan menyimpan file.
Sebelum mengakses sebuah file kita harus membuka dulu file yang akan
diproses. PHP menyediakan fungsi built-in untuk membuka sebuah file yaitu
fopen(). Bentuk penggunaan fungsi fopen() adalah sebagai berikut:
$file_handler = fopen(nama_file,Mode);
Mode yang bisa kita isikan dengan kode seperti dalam tabel dibawah ini:
Tabel 6. Ragam mode fungsi fopen()
Mode
Keterangan
r
Membuka file untuk proses read(membaca)
r+
Membuka file untuk proses read dan penulisan
w
Membuka file untuk proses write(penulisan)
w+
Membuka file untuk proses penulisan dan pembacaan
a
Membuka file untuk proses appending(penambah data)
a+
Membuka file untuk proses pembaca dan penambah
data
77
Setelah membuka file dan memproses dengan mode yang ada pada daftar
diatas, maka kita harus menutup sebagai tahapan terakhir dengan fungsi
fclose($file_handler).Contoh:
$sourNamaFile =‛testFile.txt‛;
$sourFileHandle = fopen($sourNamaFile, ‘w’) or die
(‚can’t open file‛);
fclose($sourFileHandle)
2. Menulis ke File
fwrite () adalah fungsi yang digunakan untuk menulis ke file. Parameter
pertama fwrite () berisi nama file untuk menulis dan parameter kedua
adalah string yang akan ditulis.
fwrite($nama_file, ‘string’)
3. Upload File
Upload adalah menyimpan file dari direktori lokal komputer client ke dalam
server. Banyak sekali metode dalam upload file, seperti mengirim file foto
dari komputer client kedalam sistem agar tampil dalam sebuah halaman
web. Form upload memiliki karakteristik/ciri-ciri daripada form biasa, yang
membedakan adalah:
 Selain terdapat method dan action pada atribut form juga
ditambahkan enctype=‛multipart/form-data‛
 Tag <input> harus di set dengan atribut type=‛file‛
Untuk menerima file kita dapat menggunakan beberapa script seperti
$_FILES[nama_field][atribut], berikut adalah isi atributnya:
 tmp_name = berisi path temporary tempat file haril proses upload
disimpan dalam server.
 name = berisi path asli dari file yang diupload user.
Proses upload pada PHP adalah berada pada penerapan fungsi built-in
yaitu:
 move_uploaded_file() atau copy() yang berfungsi memindahkan
dari folder temporary ke folder tujuan upload.
78
D. Aktifitas Pembelajaran
Dalam kegiatan ini peserta diklat akan menerapkan operasi file menggunakan
pemrograman PHP. Bentuk kelompok diskusi setiap kelompok terdiri dari 3-4
orang. Bacalah seluruh langkah dibawah ini kemudian lakukan dengan tekun
dan teliti.
1. Buat folder dalam direktori C:\xampp\htdocs dengan Nama topik2-3.
2. Tuliskan kode program dibawah ini kemudian tampilkan hasilnya pada
web browser dan analisis hasilnya.
3.1.
Latihan 2-25 Membuka dan Membaca File
C:xampp/htdocs/topik2-3/latihan2-25.php
1
2
3
4
5
<?php
$myfile=fopen("kamus.txt","r")ordie("Unable to open file!");
echofread($myfile,filesize("kamus.txt"));
fclose($myfile);
?>
C:xampp/htdocs/topik2-3/kamus.txt
1
2
3
4
5
6
AJAX = Asynchronous JavaScript and XML <br>
CSS = Cascading Style Sheets <br>
HTML = Hyper Text Markup Language <br>
PHP = PHP Hypertext Preprocessor <br>
SQL = Structured Query Language <br>
SVG = Scalable Vector Graphics <br>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
3.2.
Latihan 2-26 Menuliskan Data ke File
C:xampp/htdocs/topik2-3/latihan2-26.php
1
2
3
4
5
6
7
8
9
10
11
<?php
$myfile=fopen("newfile.txt","w")ordie("Unable to open file!");
$txt="Abdul Munif\n";
fwrite($myfile,$txt);
$txt="Iswanul Umam\n";
fwrite($myfile,$txt);
$txt="VEDC Malang\n";
fwrite($myfile,$txt);
fclose($myfile);
echo"Silahkan anda cek newfile.txt";
?>
C:xampp/htdocs/topik2-3/newfile.txt
Amati hasil dari kode tersebut, buka file newfile.txt yang tadinya kosong,
analisa hasilnya dan simpulkan!
79
3.3.
Latihan 2-27 Upload File
Tulis kode dibawah ini dan simpan dengan nama latihan2-27.html dan
upload.php dalam folder topik2-3 yang telah kita buat tadi, buat sebuah
folder dengan nama uploads dalam folder topik2-3. Lalu jalankan melalui
browser!
C:xampp/htdocs/topik2-3/latihan2-27.php
1
2
3
4
5
6
7
8
9
10
11
12
13
<!DOCTYPE html>
<html>
<head>
<title>Upload file</title>
</head>
<body>
<formaction="upload.php"method="post"enctype="multipart/form-data">
Pilih gambar yang akan diupload:
<inputtype="file"name="fileToUpload"id="fileToUpload">
<inputtype="submit"value="Upload Gambar"name="submit">
</form>
</body>
</html>
C:xampp/htdocs/topik2-3/upload.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
80
<?php
$target_dir="uploads/";
$target_file=$target_dir.basename($_FILES["fileToUpload"]["name"]);
$uploadOk=1;
$imageFileType=pathinfo($target_file,PATHINFO_EXTENSION);
// Untuk mengecek file merupakan gambar atau tidak
if(isset($_POST["submit"])){
$check=getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check!==false){
echo"Format file gambar (".$check["mime"].")<br>";
$uploadOk=1;
}else{
echo"Format file bukan gambar.<br>";
$uploadOk=0;
}
}
// Mengecek apabila file sudah ada dalam server
if(file_exists($target_file)){
echo"Maaf file ini sudah ada dalam direktori<br>";
$uploadOk=0;
}
// Untuk mengecek ukuran file
if($_FILES["fileToUpload"]["size"]>500000){
echo"Maaf, file anda terlalu besar.<br>";
$uploadOk=0;
}
// Format gambar yang di izinkan untuk di uplaod
if($imageFileType!="jpg"&&$imageFileType!="png"&&$imageFileType!="jpeg"
&&$imageFileType!="gif"){
echo"Maaf, hanya ekstensi JPG, JPEG, PNG & GIF yang di izinkan.<br>";
30
31
32
33
34
35
36
37
38
39
40
41
42
43
$uploadOk=0;
}
/* Apabila $uploadOk bernilai 0, maka syarat file yang diupload belum
terpenuhi
dan proses pemindahan file tidak dilakukan */
if($uploadOk==0){
echo"Maaf, file anda tidak terupload.<br>";
/* Aabila semua berjalan dengan baik, maka proses upload akan dilakukan */
}else{
if(move_uploaded_file($_FILES["fileToUpload"]["tmp_name"],$target_file)){
echo"File gambar ".basename($_FILES["fileToUpload"]["name"])." berhasil
diupload.";
}else{
echo"Maaf, terjadi kesalahan saat proses upload file.<br>";
}
}
?>
Dimanakah posisi file setelah proses upload berhasil dilakukan!
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
4. Komunikasikan hasil praktikum pada langkah 2 dalam kelompok dan
buatlah kesimpulan.
5. Buatlah
Laporan
kemudian
komunikasikan
hasil
laporan
dan
pembahasan dengan tutor.
E. Latihan Soal
Buat folder dengan nama studi-kasus2-3 untuk menyimpan file studi kasus
dibawah ini.
1. Buat sebuah form untuk mengupload sebuah dokumen dengan tipe PDF
(Portable Document Format) kedalam sebuah server dengan ketentuan
maksimal ukuran file adalah 2MB yang bisa diproses.
2. Buat sebuah form untuk mendownload sebuah dokumen dengan tipe
PDF (Portable Document Format) kedalam sebuah server dengan
ketentuan maksimal ukuran file adalah 2MB yang bisa diproses.
F. Rangkuman
PHP menyediakan fitur untuk membaca, merubah dan menyimpan file, PHP
menyediakan fungsi built-in untuk melakkukan operasi terhadap suatu file,
seperti untuk membuka sebuah file yaitu menggunakan fopen() atau pada
proses
upload
pada
PHP
menggunakan
fungsi
built-in
81
move_uploaded_file()untuk memindahkan dari folder temporary ke folder
upload.
G. Umpan Balik dan Tindak Lanjut
1. Apakah anda sudah memamahi pemetaan file dengan menggunakan
PHP?
2. Apakah anda sudah mampu mengoprasikan file dengan PHP seperti
menulis dan membaca file dengan PHP?
3. Apakah anda sudah bisa membuat proses upload file dengan
menggunakan PHP?
4. Setelah saudara melakukan kegiatan pembelajaran untuk modul “Operasi
File pada Pemrograman PHP” ini, silahkan mengisi tabel 6 secara jujur
dan sesuai dengan kemampuan yang telah anda dapatkan!
Tabel 6. Tindak Lanjut
IPK
82
Hasil yang didapat
Rencana Tindak Lanjut
83
84
Penanganan Form Pada PHP
A. Tujuan Pembelajaran
Melalui praktikum peserta diklat dapat menerapkan pengelolaan data
menggunakan Form dalam pemrograman PHP.
B. Indikator Pencapaian Kompetensi
Menerapkan pengelolaan data menggunakan Form dalam pemrograman
PHP.
C. Uraian Materi
Pemrosesan form (form processing) merupakan operasi mendasar
pada aplikasi web. Dalam konteks pengembangan aplikasi web dinamis,
langkah ini pasti akan dilakukan. Sebagai contoh, untuk menerima masukan
dari user, tentu diperlukan sekali form isian dan cara pemrosesannya. Begitu
pula halnya ketika administrator ingin masuk ke sistem, tentu memerlukan
suatu
antarmuka
penghubung.
Intinya,
keberadaan
form
dan
pemrosesannya mutlak diperlukan dalam membangun aplikasi web yang
interaktif.
Form adalah antarmuka (user interface) agar user dapat berkomunikasi
dengan sistem aplikasi. Setiap permintaan dari user disebut dengan request
dan setiap hasil dari pemrosesan oleh server disebut dengan response.
Form dalam aplikasi web menggunakan tag <form> dan diakhiri dengan
</form>. Dimana tag tersebut memiliki beberapa atribut antara lain adalah
action dan method. Action digunakan untuk mendefinisikan tujuan
pengiriman data dari form, dan method digunakan untuk mendefinisikan
metode pengiriman apa yang akan kita gunakan. Method dalam atribut
terdapat dua macam yaitu:
1. POST
<form action="proses.php" method="POST">
<input type="text" name="name">
<input type="submit">
</form>
85
Untuk membaca variabel dalam metode POST dapat menggunakan
variabel super global $_POST[“nama_variabel”]
2. GET
<form action="proses.php" method="GET">
<input type="text" name="name">
<input type="submit">
</form>
Untuk membaca variabel dalam metode GET dapat menggunakan variabel
super global $_GET[“nama_variabel”]
Ada beberapa komponen field yang dapat digunakan dalam form antara
lain adalah:
o
<input>, untuk inputan dalam bentuk field isian text, radio button,
check box, file, password, submit dan button.
o
<textarea>, untuk jenis inputan dalam bentuk multi baris.
o
<option>, untuk jenis inputan pilihan (combo box).
D. Aktifitas Pembelajaran
Dalam kegiatan ini peserta diklat akan menerapkan pengelolaan data
menggunakan form dalam pemrograman PHP. Bentuk kelompok diskusi setiap
kelompok terdiri dari 3-4 orang. Bacalah seluruh langkah dibawah ini kemudian
lakukan dengan teliti.
1. Buat folder dalam direktori C:\xampp\htdocs dengan Nama topik2-4.
2. Tuliskan kode program dibawah ini kemudian tampilkan hasilnya pada
web browser dan analisis hasilnya.
2.1.
Latihan 2-28 Penggunaan metoda GET
C:xampp/htdocs/topik2-4/latihan2-28.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
86
<!DOCTYPE HTML>
<html>
<head>
<title>Metode GET</title>
</head>
<body>
<form action="<?php $_SERVER['PHP_SELF'];?>" method="GET">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>
<?php
if(isset($_GET['name'])){
echo '<br>Hallo, ' . $_GET['name'];
}
if(isset($_GET['email'])){
17
18
19
20
21
22
23
24
25
26
27
28
echo '<br>Your email, ' . $_GET['email'];
}
if(isset($_REQUEST['name'])){
echo '<br>Method, ' . $_SERVER['REQUEST_METHOD'];
}
if(isset($_REQUEST['email'])){
echo '<br>Method, ' . $_SERVER['REQUEST_METHOD'];
}
?>
</body>
</html>
C:xampp/htdocs/topik2-4/proses.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
if(isset($_GET['name'])){
echo 'Hallo, ' . $_GET['name'];
}
if(isset($_GET['email'])){
echo 'Your email, ' . $_GET['email'];
}
if(isset($_REQUEST['name'])){
echo '<br />Method, ' . $_SERVER['REQUEST_METHOD'];
}
if(isset($_REQUEST['email'])){
echo '<br />Method, ' . $_SERVER['REQUEST_METHOD'];
}
?>
Ganti
action
“<?php
$_SERVER['PHP_SELF'];?>”
menjadi
“proses.php”, Amati kode tersebut, analisis hasilnya dan simpulkan!
2.2.
Latihan 2-29 Penggunaan metoda POST.
C:xampp/htdocs/topik2-4/latihan2-29.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE HTML>
<html>
<head>
<title>Metode POST</title>
</head>
<body>
<form action="<?php $_SERVER['PHP_SELF'];?>" method="POST">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>
<?php
if(isset($_POST['name'])){
echo '<br>Hallo, ' . $_POST['name'];
}
if(isset($_POST['email'])){
echo '<br>Your email, ' . $_POST['email'];
}
87
20
21
22
23
24
25
26
27
2.3.
if(isset($_REQUEST['name'])){
echo '<br>Method, ' . $_SERVER['REQUEST_METHOD'];
}
if(isset($_REQUEST['email'])){
echo '<br>Method, ' . $_SERVER['REQUEST_METHOD'];
}
?>
</body>
</html>
Latihan 2-30 Penggunaan masukan Radio Button.
C:xampp/htdocs/topik2-4/latihan2-30.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2.4.
<!DOCTYPE HTML>
<html>
<head>
<title>Inputan Radio Buttons</title>
</head>
<body>
<form action="<?php $_SERVER['PHP_SELF'];?>" method="POST">
Jenis Kelamin :
<input type="radio" name="sex" value="Pria">Pria
<input type="radio" name="sex" value="Wanita">Wanita
<input type="submit">
</form>
<?php
if(isset($_POST['sex'])){
echo $_POST['sex'];
}
?>
</body>
</html>
Latihan 2-31 Penggunaan masukan seleksi
C:xampp/htdocs/topik2-4/latihan2-31.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
88
<!DOCTYPE HTML>
<html>
<head>
<title>Inputan Seleksi</title>
</head>
<body>
<form action="<?php $_SERVER['PHP_SELF']; ?>" method="POST">
Pekerjaan
<select name="job">
<option value="Mahasiswa">Mahasiswa</option>
<option value="ABRI">ABRI</option>
<option value="PNS">PNS</option>
<option value="Swasta">Swasta</option>
</select><br>
<input type="submit">
</form>
<?php
if(isset($_POST['job'])){
echo $_POST['job'];
20
21
22
23
2.5.
}
?>
</body>
</html>
Latihan 2-32 Penggunaan masukan Data Check Box
C:xampp/htdocs/topik2-4/latihan2-32.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html>
<head>
<title>Data Checkbox</title>
</head>
<body>
<form action="<?php $_SERVER['PHP_SELF'];?>" method="POST">
Hobi
<input type="checkbox" name="hobby[]" value="Membaca">Membaca
<input type="checkbox" name="hobby[]" value="Olahraga">Olahraga
<input type="checkbox" name="hobby[]" value="Menyanyi">Menyanyi
<input type="submit">
</form>
<?php
if(isset($_POST['hobby'])){
foreach ($_POST['hobby'] as $key => $val) {
echo $key . '->' . $val . '<br>';
}
}
?>
</body>
</html>
3. Komunikasikan hasil praktikum pada langkah 2 dalam kelompok dan
buatlah kesimpulan.
4. Buatlah
Laporan
kemudian
komunikasikan
hasil
laporan
dan
pembahasan dengan tutor.
E. Latihan Soal
1. Idenifikasi perbedaan metode POST dan GET dalam form, dan
jelaskan saat yang tepat menggunakan metode POST dan saat
yang tepat menggunakan metode GET!
2. Buatlah dua halaman web (Interface) yang terdiri dari: 1) halaman
1 (entry curriculum vitae). 2) Halaman 2(konfirmasi data) berisi
detail data, tombol kirim data, tombol edit data). Komponen atau
obyek-obyek form yang digunakan meliputi input text, radio
buttom, check box, command buttom, combo box, tabel dll. Data
89
meliputi Nama, alamat tanggal lahir, jenis kelamin (radio buttom),
kompetensi yang diminati (check box), riwayat pendidikan, foto.
F. Rangkuman
Pemrosesan form (form processing) merupakan operasi mendasar pada
aplikasi web. Form adalah antarmuka (user interface) agar user dapat
berkomunikasi dengan sistem aplikasi. Setiap permintaan dari user disebut
dengan request dan setiap hasil dari pemrosesan oleh server disebut dengan
respons. Form dalam aplikasi web menggunakan tag <form> dan diakhiri
dengan </form>.
G. Kunci jawaban
Idenifikasi perbedaan metode POST dan GET dalam form:

Medote POST tidak menampikan nilai variabel pada URL
sedangkan metode GET menampilkan nilai variabel yang
dikirim.

Metode GET dibatasi panjang string sedangkan metode POST
tidak.

Metode POST digunakan untuk mengirim data yang bersifat
rahasia sedangkan metode GET digunakan untuk mengirim
data yang bersifat tidak rahasia.

Metode POST lebih aman daripada metode GET.
H. Umpan Balik dan Tindak Lanjut
1. Apakah saudara sudah bisa membuat form dan memahami cara
kerjanya?
2. Apakah saudara memahami metode POST dan GET dalam form?
3. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Penangan Form pada PHP” ini, silahkan mengisi tabel 7 secara jujur
dan sesuai dengan kemampuan yang telah anda dapatkan!
90
Tabel 7. Tindak Lanjut
IPK
Hasil yang didapat
Rencana Tindak Lanjut
91
92
93
Mengenal Dasar Pemrograman JavaScript
A. Tujuan Pembelajaran
1. Melalui diskusi peserta diklat dapat membedakan tag javascript sesuai
fungsi dan kegunaannya.
2. Melalui praktikum peserta diklat dapat menerapkan pemrograman
javascript (event, object windows)
B. Indikator Pencapaian Kompetensi
1. Membedakan tag javascript sesuai fungsi dan kegunaannya
2. Menerapkan pemrograman javascript (event, object windows)
C. Uraian Materi
1. Pengertian JavaScript
JavaScript adalah bahasa pemograman web yang bersifat Client-Side
Programming Language. Client-Side Programming Language adalah tipe
bahasa pemograman yang pemrosesannya dilakukan oleh client. Aplikasi
client yang dimaksud merujuk kepada web browser seperti Google Chrome
dan Mozilla Firefox. Jenis bahasa pemograman Client-Side berbeda dengan
bahasa pemograman Server Side seperti PHP, dimana untuk server side
seluruh kode program dijalankan di sisi server.Untuk menjalankan JavaScript,
kita hanya membutuhkan aplikasi text editor, dan web browser. JavaScript
memiliki fitur: high-level programming language, client-side, loosely tiped, dan
berorientasi objek.
2. Fungsi JavaScript dalam Pemrograman Web
JavaScript pada awal perkembangannya berfungsi untuk membuat interaksi
antara user dengan situs web menjadi lebih cepat tanpa harus menunggu
pemrosesan di web server. Sebelum javascript, setiap interaksi dari user
harus diproses oleh web server.
1. ECMAScript 5
JavaScript
adalah
bahasa
pemrograman
yang
dibuat
mengikuti
spesifikasi standar yang disebut ECMA Script dan saat ini versi termodern
94
dari ECMA Script adalah versi 5. Sebagian besar browser modern sudah
mendukung ECMA Script 5 walaupun tidak ada implementasi yang 100%
sama.
2. Testing Environment
Untuk menjalankan kode program dalam modul, kita menggunakan
JavaScript console yang ada di browser Mozilla Firefox.
Kebanyakan kode kita tulis sebagai embedded script dalam blok
<script> </script> dalam file html kecuali jika ada keterangan bahwa
kode tersebut harus ditulis dalam file .js yang terpisah. Berikut ini contoh
file html untuk embedded script.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Contoh</title>
</head>
<body>
<script>
//kode
</script>
</body>
</html>
Berikut ini contoh file html untuk memuat file .js eksternal.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Contoh</title>
</head>
<body>
<script src="file_js.js"></script>
<script>
//kode lain
</script>
</body>
</html>
Dalam dasar teori ini tidak dijelaskan tentang
pemrograman,
karena semua konsep dasar
konsep
dasar
pemrograman pada
hakekatnya adalah sama dan mengacu pada paradigmanya, untuk materi
tentang dasar-dasar pemrograman seperti perulangan, percabangan,
fungsi dan lain-lain sudah dijelaskan pada bagian pemrograman PHP,
95
bahasa pemrograman JavaScript dan PHP memiliki kesamaan paradigma
pemrograman. Akan tetapi pada latihan-latihan akan diimplementasikan
tentang
dasar-dasar
pemrograman
web
menggunakan
bahasa
pemrograman javascript.
D. Aktifitas Pembelajaran
1. Pengenalan Pemrograman JavaScript
Dalam kegiatan ini peserta diklat akan menerapkan dasar pemrograman
javascript pada dokumen web. Bentuk kelompok diskusi setiap kelompok terdiri
dari 3-4 orang. Bacalah seluruh langkah dibawah ini kemudian lakukan dengan
teliti.
1. Buat folder dalam derektori C:\xampp\htdocs dengan Nama topik2-5.
2. Tuliskan kode program dibawah ini kemudian tampilkan hasilnya pada web
browser dan analisis hasilnya.
2.1.
Latihan 2-33 Dasar Pemrograman JavaScript
C:xampp/htdocs/topik2-4/latihan2-33.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
96
<!DOCTYPE html>
<html>
<head>
<metacharset="utf-8">
<title>Variabel, Array dan Objek dalam JavaScript</title>
</head>
<body>
<scripttype="text/javascript">
console.log('----------- Demo Variabel -------------');
varnama;
nama="Iswanul Umam";
varmotor="Harley";
harga=2000000;
produk="Japan";
console.log(nama)
console.log(motor)
console.log(harga)
console.log(produk)
console.log('----------- Demo Array -------------');
varinfo=['Iswanul Umam',21, 'State University of Malang'];
console.log(info);
console.log('Nama saya : ' +info[0]);
console.log('Umur saya : ' +info[1]);
console.log('Kampus saua: ' +info[2]);
console.log('----------- Demo Objek -------------')
varmobil={
merek: 'Honda',
asal: 'Japan'
};
console.log(mobil);
console.log('Nama marek ' +mobil['merek']);
32
33
34
35
console.log('Asal Produksi ' +mobil['asal']);
</script>
</body>
</html>
Lakukan langkah-langkah berikut:
 Buka menu Mozilla Firefox
 Pilih menu Developer
 Pilih Web Console(tombol alternatif ctrl + shift + k)
Hasil:
Ganti script console.log menjadi document.write amati hasil dari kode
tersebut, analisa hasilnya dan simpulkan!
2.2.
Latihan 2-34 eksternal CSS
C:xampp/htdocs/topik2-4/myJS.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
vara=5;
functioncheck(n){
console.log('---------');
if(n>0){
console.log(n+ ' lebih dari nol');
}else{
console.log(n+ ' tidak lebih dari nol');
};
if(n>a){
console.log(n+ ' lebih besar dari ' +a);
}elseif(n<a){
console.log(n+ ' kurang dari ' +a);
}else{
console.log(n+ ' sama dengan ' +a);
};
}
check(-2);
97
C:xampp/htdocs/topik2-4/latihan2-29.html
1
2
3
4
5
6
7
8
9
10
<!DOCTYPE html>
<html>
<head>
<metacharset="utf-8">
<title>Percabangan dengan File Eksternal</title>
</head>
<body>
<scriptsrc="myJS.js"type="text/javascript">
</script>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.3.
Latihan 2-35 Perulangan menggunakan while
C:xampp/htdocs/topik2-4/latihan2-30.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<!DOCTYPE html>
<html>
<head>
<metacharset="utf-8">
<title>Perulangan While</title>
</head>
<body>
<scripttype="text/javascript">
vara=[];
vari=0;
while(i<4){
a.push(i)
i++;
}
console.log(a);
</script>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.4.
Latihan 2-36 Penggunaan Fungsi
C:xampp/htdocs/topik2-4/latihan2-31.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
98
<!DOCTYPE html>
<html>
<head>
<metacharset="utf-8">
<title>Fungsi</title>
</head>
<body>
<script type="text/javascript">
Functionn luasLingkaran(r){
Function get_pi(){
return Math.PI*r;
}
Return 2*get_pi();
}
Var result=luasLingkaran(10);
16
17
18
console.log(result);
</script>
</body>
</html>
2.5.
Latihan 2-37 Penggunaan Fungsi getElement
C:xampp/htdocs/topik2-4/latihan2-32.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!DOCTYPE html>
<html>
<head>
<metacharset="utf-8">
<title>Fungsi getElement</title>
</head>
<body>
<pid="intro">Halo Dunia!</p>
<p>Ini contoh mendemonstrasikan <b>getElementById</b> method!</p>
<pid="demo"></p>
<script type="text/javascript">
var myElement=document.getElementById("intro");
document.getElementById("demo").innerHTML=
"Teks dari paragraf intro adalah "+myElement.innerHTML;
</script>
</body>
</html>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
2.6.
Latihan 2-38 Pengunaan Fungsi built-in date
C:xampp/htdocs/topik2-4/latihan2-33.html
1
2
3
4
5
6
7
8
9
10
11
12
13
<!DOCTYPE html>
<html>
<head>
<metacharset="utf-8">
<title>Fungsi bulit-in Date</title>
</head>
<body>
<p id="demo"></p>
<script type="text/javascript">
document.getElementById("demo").innerHTML=Date();
</script>
</body>
</html>
3. Komunikasikan hasil praktikum pada langkah 2 dalam kelompok dan buatlah
kesimpulan.
4. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan dengan
tutor.
2. Pengenalan Event dan Objek Window
Bacalah seluruh langkah dibawah ini kemudian lakukan dengan teliti.
99
1. Gunakan folder C:\xampp\htdocs\topik2-5 untuk menyimpan file latihan.
2. Tuliskan kode program dibawah ini kemudian tampilkan hasilnya pada
web browser dan analisis hasilnya
2.1.
Latihan 2-39 Menampilkan alert
C:xampp/htdocs/topik2-4/latihan2-39.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2.2.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2.3.
<!DOCTYPE html>
<html>
<head>
<metacharset="utf-8">
<title>Alert</title>
</head>
<body>
<p>Klik tombol untuk menampilkan kotak alert:</p>
<button onclick="myFunction()">Coba tekan</button>
<script type="text/javascript">
Function myFunction(){
alert("Halo, saya kotak alert!");
}
</script>
</body>
</html>
Latihan 2-40 menampilkan jendela konfirmasi
C:xampp/htdocs/topik2-4/latihan2-35.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Confirm</title>
</head>
<body>
<p>Klik tombol untuk menampilkan kotak confirm.</p>
<button onclick="myFunction()">Coba tekan!</button>
<p id="demo"></p>
<script type="text/javascript">
function myFunction(){
var x;
if(confirm("Tekan tombol!")==true){
x="Kamu menekan OK!";
}else{
x="Kamu menekan Cancel!";
}
document.getElementById("demo").innerHTML=x;
}
</script>
</body>
</html>
Latihan 2-41 mendemonstrasikan kotak prompt
C:xampp/htdocs/topik2-4/latihan2-36.html
1
100
<!DOCTYPE html>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<html>
<head>
<meta charset="utf-8">
<title>Promt</title>
</head>
<body>
<p>Klik tombol untuk mendemonstrasikan kotak prompt.</p>
<button onclick="myFunction()">Coba tekan!</button>
<p id="demo"></p>
<script type="text/javascript">
function myFunction(){
var person=prompt("Masukan nama anda","Nama anda");
if(person!=null){
document.getElementById("demo").innerHTML=
"Hello "+person+"! Bagaimana kabar anda?";
}
}
</script>
</body>
</html>
3. Amati setiap kode program diatas, analisis hasilnya dan buatlah kesimpulan!
4. Komunikasikan hasil praktikum pada langkah 3 dalam kelompok dan buatlah
kesimpulan!.
5. Buatlah Laporan dan komunikasikan hasil laporan dan pembahasan dengan
tutor!.
E. Latihan Soal
Buatlah folder dengan nama studi-kasus2-4 untuk menyimpan file studi
kasus dibawah ini.
1. Buatlah sebuah program kalkulator dengan javascript yang melakukan
operasi penambahan, pengurangan, pembagian dan perkalian dua
bilangan. Bilangan di inputkan melalui form, dan hasil akan tertampil pada
objek window alert ketika di klik tombol hitung!
F. Rangkuman
JavaScript adalah bahasa pemograman web yang bersifat Client-Side
Programming Language. Client-Side Programming Languageadalah tipe
bahasa pemograman yang pemrosesannya dilakukan oleh client.Jenis
bahasa pemograman Client-Side berbeda dengan bahasa pemograman
Server Side seperti PHP, dimana untuk server side seluruh kode program
dijalankan
di
sisi
server.Untuk
menjalankan
JavaScript,
kita
hanya
101
membutuhkan aplikasi text editor, dan web browser.JavaScript pada awal
perkembangannya berfungsi untuk membuat interaksi antara user dengan
situs web menjadi lebih cepat tanpa harus menunggu pemrosesan di web
server. Sebelum javascript, setiap interaksi dari user harus diproses oleh
web server. JavaScript adalah bahasa pemrograman yang dibuat mengikuti
spesifikasi standar yang disebut ECMA Script dan saat ini versi termodern
dari ECMA Script adalah versi 5.
G. KUNCI JAWABAN
1. Program Kalkulator
102
H. Umpan Balik dan Tindak Lanjut
1. Apakah
saudara
memahami
tentang
dasar-dasar
permograman
javascript?
2. Apakah sudara sudah mampu menjelankan semua latihan-latihan dengan
benar?
3. Apakah saudara memahami tentang event, objek windows pada
javascript?
4. Apakah saudara mempu memahami perbedaan confirm, alert dan prompt
pada javascript?
5. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Mengenal Dasar Pemrograman JavaScript” ini, silahkan mengisi tabel 8
secara jujur dan sesuai dengan kemampuan yang telah anda dapatkan!
Tabel 8. Tindak Lanjut
IPK
Hasil yang didapat
Rencana Tindak Lanjut
103
104
105
106
Membuat Koneksi Database MySQL
A. Tujuan Pembelajaran
1. Melalui praktikum peserta diklat dapat membuat basis data MySQL
menggunakan fitur-fitur pada PhpMyAdmin
2. Melalui praktikum peserta diklat dapat membuat koneksi database
dengan ekstensi MySQLi
B. Indikator Pencapaian Kompetensi
1. Membuat basis data MySQL menggunakan fitur-fitur pada PhpMyAdmin.
2. Membuat koneksi basis data dengan ekstensi MySQLi
C. Uraian Materi
1. Pengertian MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL
(bahasa
Inggris:
database
management
system)
atau
DBMS
yang
multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia.
MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis
dibawah lisensi GNU General Public License (L), tetapi mereka juga menjual
dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak
cocok dengan penggunaan L. MySQL adalah sebuah implementasi dari
sistem manajemen basis data relasional (RDBMS) yang didistribusikan
secara gratis dibawah lisensi L (General Public License). Setiap pengguna
dapat secara bebas menggunakan MySQL, namun dengan batasan
perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat
komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama
dalam basis data yang telah ada sebelumnya; SQL (Structured Query
Language). SQL adalah sebuah konsep pengoperasian basis data, terutama
untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan
pengoperasian data dikerjakan dengan mudah secara otomatis. Kehandalan
suatu sistem basis data (DBMS) dapat diketahui dari Cara kerja
pengoptimasiannya dalam melakukan proses perintah-perintah SQL yang
dibuat
oleh
pengguna
maupun
program-program
aplikasi
yang
107
memanfaatkannya. MySQL mendukung operasi basis data transaksional
maupun operasi basis data non-transaksional. Pada modus operasi nontransaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja
dibandingkan perangkat lunak basis data kompetitor lainnya. Namun pada
modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data
yang tersimpan, karenanya modus non-transaksional hanya cocok untuk
jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi
blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan
sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan
modus basis data transaksional, hanya saja sebagai konsekuensinya unjuk
kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada
modus non-transaksional.
2. PhpMyAdmin
PhpMyAdmin merupakan sebuah database menajemen berbasis web,
phpMyAdmin merupakan perangkat lunak bebas yang ditulis dalam bahasa
pemrograman PHP yang digunakan untuk menangani administrasi MySQL
melalui (World Wide Web). phpMyAdmin mendukung berbagai operasi
MySQL, diantaranya (mengelola basis data, tabel-tabel, bidang (fields), relasi
(relations), indeks, pengguna (users), perijinan (permissions), dan lain-lain.
Pada diklat ini kita akan menggunakan dukungan phpMyAdmin untuk
mengoperasikan basis data MySQL.
3. Koneksi MySQL pada PHP
Untuk melakukan koneksi database MySQL, PHP 5 menyediakan tiga fungsi
untuk melakukan koneksi, yaitu:

Ekstensi MySQL

Ekstensi MySQLi (“i” singkatan improved)

PDO (PHP Data Objects)
Pada versi sebelumnya PHP menggunakan ekstensi MySQL, namun
ekstensi tersebut sekarang sudah ditinggalkan karena terdapat kekurangan
dan fitur-fitur banyak diperbaiki pada ekstensi MySQLi atau PDO.
108
MySQLi adalah ekstensi yang paling sering digunakan untuk melakukan
koneksi database MySQL karena script tergolong mudah dan simpel, akan
tetapi MySQLi memiliki kekurangan yaitu hanya bisa bekerja dengan
database MySQL saja, berbeda dengan PDO yang bisa bekerja dengan 12
sistem basis data yang berbeda. Pada modul ini akan diberikan contoh
bagaimana membuat koneksi dengan database MySQL dengan ekstensi
MySQLi.
D. Aktifitas
Pembelajaran:
Membuat
database
melalui
PhpMyAdmin
Dalam kegiatan ini peserta diklat akan membuat basis data pada MySQL
menggunakan fitur PhpMyAdmin dan membuat koneksi basis data dengan
ekstensi MySQLi menggunakan script PHP. Bentuk kelompok setiap kelompok
terdiri dari 3-4 orang. Bacalah seluruh langkah dibawah ini kemudian lakukan
dengan teliti.
1. Aktifkan apache server dan database menggunakan XAMPP control.
2. Buka browser dan masukan alamat url: http://localhost/dashboard/
3. Klik menu phpMyAdmin  Pilih menu database.
4. Buat database dengan nama database_demo.
5. Buat folder dalam direktori C:\xampp\htdocs dengan nama topik3-1,
6. Tulis kode dibawah ini dan simpan dengan nama latihan3-1.php dan
simpan dalam folder topik3-1
C:xampp/htdocs/topik3-1/latihan3-1.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$servername="localhost";
$username="root";
$password="";
// Membuat koneksi
$conn=new mysqli($servername,$username,$password);
// Mengecek koneksi
if($conn->connect_error){
die("Koneksi gagal: ".$conn->connect_error);
}
echo"Koneksi berhasil!";
$conn->close();
?>
7. Jalankan melalui web browser. Amati dan analisa hasilnya.
109
8. Tulis kode dibawah ini dan simpan dengan nama latihan3-2.php dalam
folder topik3-1 yang telah kita buat tadi. Lalu jalankan melalui browser!
C:xampp/htdocs/topik3-1/latihan3-2.php
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$servername="localhost";
$username="root";
$password="";
// Membuat koneksi
$conn= mysqli_connect($servername,$username,$password);
// Mengecek koneksi
if(!$conn){
die("Koneksi gagal: ". mysqli_connect_error());
}
echo"Koneksi berhasil!";
mysqli_close($conn);
?>
9. Komunikasikan hasil praktikum dalam kelompok dan buatlah kesimpulan.
10. Buatlah Laporan dan komunikasikan hasil dan pembahasan dengan tutor.
E. Latihan Soal
1. Rubahlah isi string dalam variabel $servername,
$username dan
$password dengan nilai yang berbeda pada latihan diatas, Amati hasil
dari kode tersebut, analisa hasilnya dan simpulkan!
2. Buat database dengan nama : database_pegawai, dan tabel dengan
nama BioData (NIP, Nama, Alamat, TglLahir, pendidikan, foto,dll) seperti
dalam kegiatan pembelajaran 7.
F. Rangkuman
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL
(bahasa Inggris: database management system). MySQL adalah sebuah
implementasi dari sistem manajemen basisdata relasional (RDBMS) yang
didistribusikan secara gratis dibawah lisensi L (General Public License).
PhpMyAdmin merupakan sebuan database menajemen berbasis web,
phpMyAdmin merupakan perangkat lunak bebas yang ditulis dalam bahasa
pemrograman PHP yang digunakan untuk menangani administrasi MySQL
melalui (World Wide Web). PhpMyAdmin mendukung berbagai operasi
MySQL, diantaranya (mengelola basis data, tabel-tabel, bidang (fields), relasi
(relations), indeks, pengguna (users), perijinan (permissions), dan lain-lain.
Untuk melakukan koneksi database MySQL, PHP 5 menyediakan tiga fungsi
110
untuk melakukan koneksi, yaitu: 1) Ekstensi MySQL 2) Ekstensi MySQLi (“i”
singkatan improved) 3) PDO (PHP Data Objects)
G. Umpan Balik dan Tindak Lanjut
1. Apakah saudara sudah bisa mengelola database MySQL melalui web
database menejemen (PhpMyAdmin)?
2. Apakah saudara sudah bisa melakukan koneksi database MySQL
dengan PHP?
3. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Membuat Koneksi Database MySQL” ini, silahkan mengisi tabel 9 secara
jujur dan sesuai dengan kemampuan yang telah anda dapatkan!
Tabel 9. Tindak Lanjut
IPK
Hasil yang didapat
Rencana Tindak Lanjut
111
112
113
114
Operasi Database
A. Tujuan Pembelajaran
Melalui praktikum peserta didik dapat menerapkan fungsi-fungsi pengelolaan
basis data seperti membuat tabel, memasukkan, mengambil, memperbarui
dan menghapus data menggunakan script PHP.
B. Indikator Pencapaian Kompetensi
Menerapkan fungsi-fungsi pengelolaan basis data menggunakan script PHP.
C. Uraian Materi
1. Objek Database
a) Basis Data (database): Basis data adalah kumpulan data yang saling
berhubungan dan diorganisasikan sedemikian rupa untuk keperluan
tertentu.
b) Tabel: Tabel adalah himpunan elemen-elemen data yang diorganisasikan
menggunakan model kolom vertikal dan baris horizontal. Tabel juga
merupakan ekuivalensi dari sebuah entitas dalam Entity Relationship
Diagram (ERD).
c) Field dan Record. Sebuah tabel dapat terdiri dari satu atau beberapa field
(atau kolom) dan baris (atau row)
d) Primary Key. Primary key atau unique key adalah suatu nilai di basis data
yang digunakan untuk mengidentifikasi keunikan baris-baris di dalam
tabel.
e) Relationship. Relationship adalah asosiasi antara beberapa entitas (atau
tabel). Relasi antar tabel bertujuan untuk mendefinisikan keterhubungan
satu tabel dengan tabel lainnya.
2. SQL (Structure Query Language)
SQL (atau query language) adalah sebuah bahasa yang digunakan untuk
melakukan request informasi dari basis data. Bahasa ini dikembangkan oleh
DBMS. Konstruksi
SQL berbentuk atas kombinasi relational-algebra dan
115
relational-calculus. SQL terdiri dari beberapa komponen, dua diantaranya
yang sangat fundamental adalah DDL (Data Definition Language) dan DML
(Data Manipulation Language).
3. DLL (Data Definition Language)
DLL menyediakan perintah-perintah untuk mendefinisikan, memodifikasi dan
menghapus skema relasi, misalnya tabel, view, prosedur dan fungsi. Contoh
perintah DLL adalah: CREATE, ALTER, DROP
4. DML (Data Manipulation Language)
DML Menyediakan perintah-perintah untuk manambah, memodifikasi,
menghapus, dan mengambil data dari database. Contoh perintah DML:
INSERT, SELECT, DELETE, UPDATE.
D. Aktifitas Pembelajaran
1. Membuat Database
Kegiatan Pembelajaran 2 mendefinisikan database dan memanipulasi data
pada database melalui pemrograman PHP. Buat folder dalam derektori
C:\xampp\htdocs dengan nama topik3-2, kemudian tulis kode dibawah ini
dan simpan dengan nama latihan3-3.php dalam folder topik3-2 yang telah
anda buat tadi. Lalu akses jalankan melalui browser!
C:xampp/htdocs/topik3-2/latihan3-3.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$servername="localhost";
$username="root";
$password="";
$conn= mysqli_connect($servername,$username,$password);
if(!$conn){
die("Koneksi gagal: ". mysqli_connect_error());
}
// Create database
$sql="CREATE DATABASE db_diklat";
if(mysqli_query($conn,$sql)){
echo"Database berhasil dicipkatan";
}else{
echo"Error saat menciptakan database: ". mysqli_error($conn);
}
mysqli_close($conn);
?>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
116
2. Membuat Tabel
Tulis kode dibawah ini dan simpan dengan nama latihan3-4.php dalam
folder topik3-1 yang telah kita buat tadi. Lalu jalankan melalui browser!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
C:xampp/htdocs/topik3-2/latihan3-4.php
<?php
$servername="localhost";
$username="root";
$password="";
$dbname="db_diklat";
// Membuat koneksi
$conn= mysqli_connect($servername,$username,$password,$dbname);
// Mengecek koneksi
if(!$conn){
die("Koneksi gagal: ". mysqli_connect_error());
}
// sql to create table
$sql="CREATE TABLE siswa (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
nama_awal VARCHAR(30) NOT NULL,
nama_akhir VARCHAR(30) NOT NULL,
email VARCHAR(50)
)";
if(mysqli_query($conn,$sql)){
echo"Tabel siswa berhasil diciptakan";
}else{
echo"Error saat membuat tabel: ". mysqli_error($conn);
}
mysqli_close($conn);
?>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
3. Memasukan Data
Tulis kode dibawah ini dan simpan dengan nama latihan3-5.php dalam
folder topik3-2 yang telah kita buat tadi. Lalu jalankan melalui browser!
C:xampp/htdocs/topik3-2/latihan3-5.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$servername="localhost";
$username="root";
$password="";
$dbname="db_diklat";
// Memciptakan koneksi
$conn= mysqli_connect($servername,$username,$password,$dbname);
// Mengecek koneksi
if(!$conn){
die("Gagal melakukan koneksi: ". mysqli_connect_error());
}
$sql="INSERT INTO siswa (nama_awal, nama_akhir, email)
VALUES ('Iswanul', 'Umam', '[email protected]')";
if(mysqli_query($conn,$sql)){
echo"Data baru berhasil dimasukan";
}else{
echo"Error: ".$sql."<br>". mysqli_error($conn);
}
117
20
21
mysqli_close($conn);
?>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan, Kemudian
masukanlah 5 data lagi, nama dan email sesuai keinginan anda!
4. Menyeleksi Data
Tulis kode dibawah ini dan simpan dengan nama latihan3-6.php dalam
folder topik3-2 yang telah kita buat tadi. Lalu jalankan melalui browser!
C:xampp/htdocs/topik3-2/latihan3-6.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
$servername="localhost";
$username="root";
$password="";
$dbname="db_diklat";
// Menciptakan koneksi
$conn= mysqli_connect($servername,$username,$password,$dbname);
// Mengecek koneksi
if(!$conn){
die("Koneksi gagal: ". mysqli_connect_error());
}
$sql="SELECT id, nama_awal, nama_akhir FROM siswa";
$result= mysqli_query($conn,$sql);
if(mysqli_num_rows($result)>0){
// output data setiap baris
while($row= mysqli_fetch_assoc($result)){
echo"id:
".$row["id"]."
Nama:
".$row["nama_akhir"]."<br>";
}
}else{
echo"Database kosong";
}
mysqli_close($conn);
?>
".$row["nama_awal"]."
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
5. Mengupdate Data
Tulis kode dibawah ini dan simpan dengan nama latihan3-7.php dalam
folder topik3-2 yang telah kita buat tadi. Lalu jalankan melalui browser!
C:xampp/htdocs/topik3-2/latihan3-7.php
1
2
3
4
5
6
7
8
9
10
118
<?php
$servername="localhost";
$username="root";
$password="";
$dbname="db_diklat";
// Menciptakan koneksi
$conn= mysqli_connect($servername,$username,$password,$dbname);
// Megnecek koneksi
if(!$conn){
die("Koneksi gagal: ". mysqli_connect_error());
11
12
13
14
15
16
17
18
19
20
}
$sql="UPDATE siswa SET nama_akhir='Ramli' WHERE id=2";
if(mysqli_query($conn,$sql)){
echo"Data berhasil di update";
}else{
echo"Error saat meng-update data: ". mysqli_error($conn);
}
mysqli_close($conn);
?>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
6. Menghapus Data
Tulis kode dibawah ini dan simpan dengan nama latihan3-8.php dalam
folder topik3-2 yang telah kita buat tadi. Lalu jalankan melalui browser!
C:xampp/htdocs/topik3-2/latihan3-8.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
$servername="localhost";
$username="root";
$password="";
$dbname="db_diklat";
// Mencipkatan koneksi
$conn= mysqli_connect($servername,$username,$password,$dbname);
// mengecek koneksi
if(!$conn){
die("Koneksi gagal: ". mysqli_connect_error());
}
// sql untuk menghapus data
$sql="DELETE FROM siswa WHERE id=3";
if(mysqli_query($conn,$sql)){
echo"Data berhasil dihapus";
}else{
echo"Erros saat menghapus data: ". mysqli_error($conn);
}
mysqli_close($conn);
?>
Amati hasil dari kode tersebut, analisa hasilnya dan simpulkan!
E. Latihan Soal
1. Buatlah folder dengan Nama studi-kasus3-2 untuk menyimpan file studi
kasus dibawah ini.
2. Dengan basis data yang telah dibuat pada studi kasus kegiatan belajar 9
(database_pegawai) buat tabel dengan nama BioData dengan atribut:
NIP, Nama, Alamat, TglLahir, pendidikan, foto, dll (Kegiatan pembelajaran
7)
119
3. Tampilkanlah data dalam database yang telah anda buat tadi dalam
browser, tampilan berupa tabel yang dibuat melalui tag HTML. Desainlah
semenarik mungkin tabel tersebut.
F. Rangkuman
Basis data adalah kumpulan data yang saling berhubungan dan diorganisasikan
sedemikian rupa untuk keperluan tertentu. Tabel adalah himpunan elemenelemen data yang diorganisasikan menggunakan model kolom vertikal dan baris
horizontal. Tabel juga merupakan ekuivalensi dari sebuah entitas dalam Entity
RelationshipDiagram (ERD). Sebuah tabel dapat terdiri dari satu atau beberapa
field (atau kolom) dan baris (atau row). Primary key atau unique key adalah suatu
nilai di basis data yang digunakan untuk mengidentifikasi keunikan baris-baris di
dalam tabel. Relationship adalah asosiasi antara beberapa entitas (atau tabel).
Relasi antar tabel bertujuan untuk mendefinisikan keterhubungan satu tabel
dengan tabel lainnya. SQL (atau query langeage) adalah sebuah bahasa yang
digunakan untuk me-request informasi dari basisdata. Bahasa ini dikembangkan
oleh DBSM. Konstruksi SQL berbentuk atas kombinasi relational-algebra dan
relational-calculus.SQL terdiri dari beberapa komponan, dua diantaranya yang
sangat fundamental adalah DDL (Data Definition Language) dan DML (Data
Manipulation
Language).DLL
menyediakan
perintah-perintah
untuk
mendefinisikan, memodifikasi dan menghapus skema relasi, misalnya tabel,
view, prosedur dan fungsi.Contoh perintah DLL adalah: CREATE, ALTER, DROP.
DML
Menyediakan
perintah-perintah
untuk
manambah,
memodifikasi,
menghapus, dan mengambil data dati database.Contoh perintah DML: INSERT,
SELECT, DELETE, UPDATE.
G. Umpan Balik dan Tindak Lanjut
1. Apakah saudara mampu membuat database di MySQL melalui kode
PHP?
2. Apakah saudara mengetahui cara meciptakan tabel pada database?
3. Apakah saudara bisa memasukkan, mengambil, mengupdate dan
menghapus data pada database?
120
4. Setelah saudara melakukan kegiatan pembelajaran untuk modul “Operasi
Database” ini, silahkan mengisi tabel 10 secara jujur dan sesuai dengan
kemampuan yang telah anda dapatkan!
Tabel 10. Tindak Lanjut
IPK
Hasil yang didapat
Rencana Tindak Lanjut
121
122
MEMBANGUN FRONT END WEB MENGGUNAKAN
FRAMEWORK BOOTSTRAP
A. Tujuan Pembelajaran
Melalui praktikum peserta diklat dapat menerapkan Framework Bootstrap
dalam membangun front-end web application.
B. Indikator Pencapaian Kompetensi
Menerapkan Framework Bootstrap dalam membangun front-end web
application.
C. Uraian Materi
1. Definisi Front-End Web
Front-End web adalah bagian utama dari sebuah web site yang berinteraksi
langsung dengan pengguna atau pengunjung situs. Segala sesuatu yang
dilihat ketika melakukan navigasi dalam sebuah halaman web, baik dari font,
warna, menu, dan segala yang menyangkut aspek desain yang nantinya
menjadi user interface dari aplikasi web adalah hasil penggabungan dari
fungsi HTML, CSS, dan JavaScript dikontrol oleh browser pada komputer.
Front-end developer harus menguasai tiga bahasa utama: HTML, CSS, dan
Javascript. Selain itu front-end developer juga harus terbiasa menggunakan
framework seperti Bootstrap, Foundation, Backbone, AngularJS, dan
EmberJS untuk membantu membuat layout tetap sempurna ketika dibuka
menggunakan perangkat apapun, juga penggunakan library seperti jQuery
dan LESS, sehingga proses pengembangan menjadi lebih mudah dan
efisien.
2. Desain Web
Desain web merupakan bagian terpenting dalam pembangunan sebuah
halaman web, dalam desain web yang baik, unsur estetika yang harus
diperhatikan adalah warna, tata letak, dan layout. Ketiga unsur tersebut
dapat diatur menggunakan CSS, seperti mengatur warna background, warna
huruf, bentuk menu, letak menu dan lain sebagainya. Dalam membangun
123
sebuah web yang bagus, ada beberapa prinsip-prinsip desain yang harus
diperhatikan:

Proximity Prinsip, yang pertama ini berkaitan dengan kelengkapan
dari sebuah field. Ini menjadi hal yang wajib dimiliki website.
Kelengkapan akan menentukan bagaimana tampilan website mampu
membuat pengunjung tertarik dan semakin nyaman berkunjung.

Clarity, Layaknya sebuah toko konvensional, desain website juga
mengusung hal yang sama. Desain website sebaiknya mampu
menyampaikan pesan yang tidak perlu disampaikan melalui kata-kata.
Clarity ini berarti sebuah website harus mempunyai kejelasan untuk
apa website tersebut dibuat. Oleh karena itu, ada perbedaan khusus
antara toko online dengan website yang menyediakan berita.

Alignment Prinsip, yang satu ini memang tidak berkaitan langsung
dengan desain website. Akan tetapi, pengaruh terhadap sebuah
desain website sangat kuat. Aligment adalah kerapian dalam tulisan.
Tulisan yang rapi akan mampu menarik minat pengunjung sehingga
diharapkan pengunjung betah membaca konten yang ada di sebuah
website.

Contrast, Seperti awal tujuan pembuatan website, menarik menjadi
kunci utama. Dengan membuat desain website yang menarik,
pengunjung akan merasa nyaman membaca serta menjelajah
website. Dalam hal ini, kenyamanan bisa ditunjukkan dengan
menerapkan prinsip contrast. Ini berhubungan dengan kombinasi
warna yang dipakai oleh seorang desainer website. Inilah yang
menjadi alasan kenapa pemilihan warna sangat penting dalam proses
mendesain sebuah website.

Consistency, Ini adalah prinsip yang terakhir yang tak kalah penting
dengan empat prinsip sebelumya. Prinsip ini berarti sebuah website
harus mengusung kesan konsisten dalam tema yang diangkat. Selain
membuat website menarik, consistency akan mempermudah pebisnis
online dalam hal branding juga.
124
3. Bootstrap Web Framework
Bootstrap adalah sebuah framework HTML, CSS dan JavaScript yang
menyediakan kumpulan komponen-komponen antarmuka dasar pada
web yang telah dirancang sedemikian rupa untuk digunakan bersamasama. Selain komponen antarmuka, Bootstrap juga menyediakan sarana
untuk membangun layout halaman dengan mudah dan rapi, serta
modifikasi pada tampilan dasar HTML untuk membuat seluruh halaman
web yang dikembangkan senada dengan komponen-komponen lainnya.
Bootstrap dibuat untuk memberikan sekumpulan perangkat yang dapat
digunakan untuk membangun website sederhana dengan mudah.
4. Cara Menggunakan Bootstrap
Untuk menggunakan Boostrap pada aplikasi kita, tentunya kita harus
memiliki Bootstrap terlebih dahulu. Buka website resmi Bootstrap,
http://getbootstrap.com/ dan klik tombol “Download Bootstrap” untuk
memulai download Bootstrap. Atau anda bisa meng-copy file bootstrap
yang sudah disediakan dalam CD modul ini.
Selesai download, anda akan memiliki file bootstrap.zip yang berisi
file-file yang dibutuhkan untuk menggunakan Bootstrap. Ekstrak file
tersebut sehingga sekarang kita memiliki file seperti berikut:
isi dari masing-masing direktori yaitu:
1. Direktori “css” memiliki enam buah file di dalamnya, yaitu:

bootstrap.css

bootstrap.min.css

bootstrap.min.css.map

bootstrap-theme.css

bootstrap-theme.css.map

bootstrap-theme.min.css
2. Direktori “fonts” memiliki lima buah file di dalamnya, yaitu:
125

glyphicons-halflings-regular.eot

glyphicons-halflings-regular.svg

glyphicons-halflings-regular.ttf

glyphicons-halflings-regular.woff

glyphicons-halflings-regular.woff2
3. Direktori “js” memiliki tiga buah file di dalamnya, yaitu:

bootstrap.js

bootstrap.min.js

npm.js
D. Aktifitas Pembelajaran
1. Mendesain Halaman Home, Carousel dan Menu
Buat folder dalam direktori C:\xampp\htdocs dengan nama topik4-1, copy
file bootstrap.rar yang ada dalam CD kedalam forder topik4-1 dan ekstrak
file, copy juga folder image dan style yang ada dalam CD paste satu folder
dengan file bootstrap. Sehinga diperoleh file seperti gambar dibawah ini
didalam folder topik4-1.
kemudian tulis kode dibawah ini dan simpan dengan nama home.html dan
dalam folder topik4-1 yang telah anda buat tadi. Lalu akses jalankan melalui
browser!
C:xampp/htdocs/topik4-1/home.html
1
2
3
4
5
126
<!DOCTYPE html>
<html lang="en">
<head>
<title>Nama Proyek</title>
<meta charset="utf-8">
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
35
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="css/bootstrap.min.css">
<link href="style/carousel.css" rel="stylesheet">
<style>
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
width: 100%;
margin: auto;
}
</style>
</head>
<body>
<!-- CAROUSEL -->
<div id="myCarousel" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#myCarousel" data-slide-to="0"class="active"></li>
<li data-target="#myCarousel" data-slide-to="1"></li>
<li data-target="#myCarousel" data-slide-to="2"></li>
</ol>
<div class="carousel-inner"role="listbox">
<div class="item active">
<img src="images/gambar1.jpg" alt="Chania">
<div class="carousel-caption">
<h2>Judul Gambar 1</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
commodo</p>
</div>
</div>
<div class="item">
<img src="images/gambar2.jpg" alt="Flower">
<div class="carousel-caption">
<h2>Judul Gambar 2</h2>
<p>Consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est
laborum.</p>
</div>
</div>
<div class="item">
<img src="images/gambar3.jpg" alt="Flower">
<div class="carousel-caption">
<h2>Judul Gambar 3</h2>
<p>Tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse</p>
</div>
</div>
<!-- Left and right controls -->
<a class="left carousel-control"href="#myCarousel"role="button"data-slide="prev">
<span class="glyphicon glyphicon-chevron-left"aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a
class="right
carousel-control"href="#myCarousel"role="button"dataslide="next">
<span class="glyphicon glyphicon-chevron-right"aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div><!-- carousel-inner -->
</div><!-- AKHIR SCRIPT CAROUSEL -->
<div class="container">
<div>
<br>
127
75
76
77
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed"data-toggle="collapse"datatarget="#navbar"aria-expanded="false"aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Nama Proyek</a>
</div>
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#">Profil</a></li>
<li><a href="#">Kontak</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" ariahaspopup="true" aria-expanded="false">Menu lain <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Galery</a></li>
<li><a href="#">Video</a></li>
</ul>
</li>
</ul>
</div><!--/.nav-collapse -->
</div><!--/.container-fluid -->
</nav>
</div>
<div class="row">
<div class="col-sm-8 blog-main">
<div>
<h2>Blog post</h2>
<p>December 23, 2015 by <a href="#">Iswanul Umam</a></p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est
laborum.</p>
</div><!-- /.blog-post -->
<nav>
<ul class="pager">
<li><a href="#">Previous</a></li>
<li><a href="#">Next</a></li>
</ul>
</nav>
</div><!-- /.blog-main -->
<div class="col-sm-3 col-sm-offset-1 blog-sidebar">
<div class="sidebar-module sidebar-module-inset">
<h4>About</h4>
<p>Etiam porta <em>sem malesuada magna</em> mollis euismod. Cras mattis
consectetur purus sit amet fermentum. Aenean lacinia bibendum nulla sed
consectetur.</p>
</div>
<div>
<h4>Archives</h4>
<ol class="list-unstyled">
<li><a href="#">Januari 2015</a></li>
<li><a href="#">Februari 2015</a></li>
<li><a href="#">Maret 2015</a></li>
<li><a href="#">April 2015</a></li>
128
<li><a href="#">Mei 2015</a></li>
<li><a href="#">Juni 2015</a></li>
<li><a href="#">Juli 2015</a></li>
<li><a href="#">Augustus 2015</a></li>
<li><a href="#">September 2015</a></li>
<li><a href="#">Oktober 2015</a></li>
<li><a href="#">November 2015</a></li>
<li><a href="#">Desember 2015</a></li>
</ol>
</div>
<div>
<h4>Elsewhere</h4>
<ol class="list-unstyled">
<li><a href="#">GitHub</a></li>
<li><a href="#">Twitter</a></li>
<li><a href="#">Facebook</a></li>
</ol>
</div>
</div><!-- /.blog-sidebar -->
</div><!-- /.row -->
<script src="js/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</html>
Jalankan pada browser dan tampilkan hasilnya.
2. Mendesain Dashboard Admin
kemudian tulis kode dibawah ini dan simpan dengan nama dashboard.html,
simpan dalam folder topik4-1 yang telah anda buat tadi. Lalu akses jalankan
melalui browser!
C:xampp/htdocs/topik4-1/dashboard.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Dashboard Admin</title>
<!-- Bootstrap core CSS -->
<link rel="stylesheet" href="css/bootstrap.min.css">
<link href="style/dashboard.css" rel="stylesheet">
</head>
<body>
<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container-fluid">
<div class="navbar-header">
<button
type="button"
class="navbar-toggle
collapsed"datatoggle="collapse"data-target="#navbar"aria-expanded="false"ariacontrols="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
129
23
24
25
26
27
28
29
30
31
32
33
34
35
35
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
7
<a class="navbar-brand"href="#">Nama Proyek</a>
</div>
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="#">Setting</a></li>
<li><a href="#">Logout</a></li>
</ul>
</div>
</div>
</nav>
<div class="container-fluid">
<div class="row">
<div class="col-sm-3 col-md-2 sidebar">
<ul class="nav nav-sidebar">
<liclass="active"><ahref="#">Artikel<spanclass="sronly">(current)</span></a></li>
<li><ahref="#">Kontak</a></li>
<li><ahref="#">Pesan</a></li>
</ul>
<ulclass="nav nav-sidebar">
<li><ahref="">User</a></li>
<li><ahref="">Setting</a></li>
</ul>
</div>
<divclass="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
<h1class="page-header">Dashboard</h1>
<h2class="sub-header">Artikel</h2>
<buttontype="submit"class="btn btn-success">Buat baru</button>
<divclass="table-responsive">
<tableclass="table table-striped">
<thead>
<tr>
<thwidth="5%">#</th>
<thwidth="40%">Judul</th>
<thwidth="45%">Konten</th>
<thwidth="5%">Aksi</th>
<thwidth="5%"></th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Lorem</td>
<td>ipsum</td>
<td><buttontype="submit"class="btn btn-info">Update</button></td>
<td><buttontype="submit"class="btn btn-danger">Hapus</button></td>
</tr>
<tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</body>
</html>
Jalankan pada browser dan tampilkan hasilnya.
130
3. Mendesain Form Artikel
Tulis kode dibawah ini dan simpan dengan nama form_artikel.html di folder
topik4-1 yang telah anda buat tadi. Lalu akses jalankan melalui browser!
C:xampp/htdocs/topik4-1/form_artikel.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
35
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<!DOCTYPE html>
<htmllang="en">
<head>
<metacharset="utf-8">
<metaname="viewport"content="width=device-width, initial-scale=1">
<title>Dashboard Admin</title>
<!-- Bootstrap core CSS -->
<linkrel="stylesheet"href="css/bootstrap.min.css">
<linkhref="style/dashboard.css"rel="stylesheet">
</head>
<body>
<navclass="navbar navbar-inverse navbar-fixed-top">
<divclass="container-fluid">
<divclass="navbar-header">
<buttontype="button"class="navbar-toggle
collapsed"data-toggle="collapse"datatarget="#navbar"aria-expanded="false"aria-controls="navbar">
<spanclass="sr-only">Toggle navigation</span>
<spanclass="icon-bar"></span>
<spanclass="icon-bar"></span>
<spanclass="icon-bar"></span>
</button>
<aclass="navbar-brand"href="#">Nama Proyek</a>
</div>
<divid="navbar"class="navbar-collapse collapse">
<ulclass="nav navbar-nav navbar-right">
<li><ahref="#">Setting</a></li>
<li><ahref="#">Logout</a></li>
</ul>
</div>
</div>
</nav>
<divclass="container-fluid">
<divclass="row">
<divclass="col-sm-3 col-md-2 sidebar">
<ulclass="nav nav-sidebar">
<liclass="active"><ahref="#">Artikel
<spanclass="sronly">(current)</span></a></li>
<li><ahref="#">Kontak</a></li>
<li><ahref="#">Pesan</a></li>
</ul>
<ulclass="nav nav-sidebar">
<li><ahref="">User</a></li>
<li><ahref="">Setting</a></li>
</ul>
</div>
<divclass="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
<h1class="page-header">Dashboard</h1>
<h2class="sub-header">Terbitkan Artikel</h2>
<form>
<divclass="form-group">
131
52
53
55
56
57
58
59
60
61
62
63
64
65
<label>Judul Artikel</label>
<inputtype="text"class="form-control"placeholder="Judul artikel">
</div>
<divclass="form-group">
<label>Konten</label>
<textareaclass="form-control"rows="12"></textarea>
</div>
<buttontype="submit"class="btn btn-primary">Simpan</button>
<buttontype="submit"class="btn btn-danger">Cancel</button>
</form>
</div>
</body>
</html>
Jalankan pada browser dan tampilkan hasilnya. Buat pula form update
dengan cara seperti form artikel, bedanya hanya pada button, save as file form
artikel, ubah judul “Terbitkan Artikel” Menjadi “Update Artikel” dan ubah button
“Simpan” menjadi “update. Simpan dengan nama form_update.html
4. Mendesain Halaman Signin
Tulis kode dibawah ini dan simpan dengan nama signin.html, simpan dalam
folder topik4-1 yang telah anda buat tadi. Lalu akses jalankan melalui
browser!
C:xampp/htdocs/topik4-1/signin.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<!DOCTYPE html>
<htmllang="en">
<head>
<metacharset="utf-8">
<metaname="viewport"content="width=device-width, initial-scale=1">
<title>Signin</title>
<!-- Bootstrap core CSS -->
<linkrel="stylesheet"href="css/bootstrap.min.css">
<linkhref="style/signin.css"rel="stylesheet">
</head>
<body>
<divclass="container">
<formclass="form-signin">
<h2class="form-signin-heading">Silahkan masuk</h2>
<labelfor="inputEmail"class="sr-only">Alamat Email</label>
<inputtype="email"id="inputEmail"class="form-control"placeholder="Alamat
Email"requiredautofocus>
<labelfor="inputPassword"class="sr-only">Password</label>
<inputtype="password"id="inputPassword"class="formcontrol"placeholder="Password"required>
<divclass="checkbox">
<label>
<inputtype="checkbox"value="remember-me"> Ingat saya
</label>
</div>
<buttonclass="btn btn-lg btn-primary btn-block"type="submit">Sign in</button>
</form>
132
29
30
</div><!-- /container -->
</body>
</html>
E. Latihan Soal
1. Buatlah sebuah halaman kontak untuk pengunjung website yang
didalamnya terdapat sebuah form untuk mengirimkan sebuah pesan oleh
pengunjung website kedalam admin web. Desainlah sesuai dengan tema
pada latihan, anda bisa memanfaatkan kode-kode yang ada pada latihan!
Simpan dengan nama kontak.html dalam folder topik4-1
2. Buatlah sebuah antarmuka pada dashboard admin untuk menampilkan
pesan yang dikirim melalui halaman kontak. Anda bisa memodifikasi
halaman dashboard artikel.
3. Simpan dengan nama pesan.html dalam folder topik4-1
F. Rangkuman
Front-End web adalah bagian utama dari sebuah web site yang berinteraksi
langsung dengan pengguna atau pengunjung situs. Segala sesuatu yang
dilihat ketika melakukan navigasi dalam sebuah halaman web, baik dari font,
warna, menu, dan segala yang menyangkut aspek desain yang nantinya
menjadi user interface dari aplikasi web adalah hasil penggabungan dari
fungsi HTML, CSS, dan JavaScript dikontrol oleh browser pada komputer.
Desain web merupakan bagian terpenting dalam pembangunan sebuah
halaman web, dalam desain web yang baik, unsur estetika yang harus
deperhatikan adalah warna, tata letak, dan layout. Selain itu juga ada prinsipprinsip yang harus diperhatikan dalam mendesain sebuah web yaitu:
Proximity Prinsip, Clarity, Alignment Prinsip Contrast,Consistency
G. Umpan Balik dan Tindak Lanjut
1. Apakah saudara mampu mendesain tampilan dan layout web yang bagus
dan menarik dalam membangun front-end web application?
2. Apakah saudara memahami apa itu front-end framework Bootstrap?
3. Apakah saudara mengetahui cara menggunakan Bootstrap?
133
4. Apakah saudara mengetahui fitur-fitur dan keunggulan Bootstrap web
framework?
5. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Membangun Front-End Web Menggunakan Framework Bootstrap
” ini, silahkan mengisi tabel 11 secara jujur dan sesuai dengan
kemampuan yang telah anda dapatkan!
Tabel 11. Tindak Lanjut
IPK
134
Hasil yang didapat
Rencana Tindak Lanjut
135
136
137
Membangun Back-end Application dengan konsep
MVC menggunakan framework CodeIgniter
A. Tujuan Pembelajaran
1. Melalui praktikum peserta diklat dapat membangun Back-end Application
pada web dinamis dengan dukungan web framework PHP Code Igniter.
2. Melalui praktikum menerapkan prinsip-prinsip MVC (Model, View,
Controller) dalam membangun Back-end Application.
B. Indikator Pencapaian Kompetensi
1. Membangun Back-end Application pada web dinamis dengan dukungan
web framework PHP Code Igniter.
2. Menerapkan prinsip-prinsip MVC (Model, View, Controller)
C. Uraian Materi
1. Definisi Back-End Web
Back-End web adalah bagian utama dari sebuah web site yang berfokus
pada pemrograman sisi server dan database. Segala fitur yang ada pada
web dinamis seperti mengambil data, memasukan data, menghapus data
dan mengupdate data adalah dibangun pada bagian back-end development.
Back-end developer minimal harus menguasai pemrograman sisi-server
seperti PHP, ASP, python atau bisa juga dan menguasai Database
Management System (DBSM) seperti MySQL, Oracle, PostgreSQL atau
yang lain. Back-end Developer harus memiliki pengetahuan tentang HTML
karena untuk membangun sebuat web tidak akan bisa lepas dari yang
namanya HTML meskipun fokus pekerjaan bukan pada bagian front-end.
Back-end developer minimal harus menguasai pemrograman sisi-server
seperti PHP.
2. Codeigniter
CodeIgniter merupakan toolkit atau framework untuk membangun aplikasi
web
dinamis
menggunakan
PHP.
Tujuannya
adalah
membuat
pengembangan proyek menjadi lebih cepat dibandingkan dengan menulis
138
kode dari awal (scratch). CodeIgniter menyediakan kumpulan library untuk
tugas-tugas yang sering dilakukan (commonly needed task) dan sangat
mudah untuk mengakses library yang tersedia di CodeIgniter. Dengan
menggunakan
CodeIgniter,
pengembangan
cukup
fokus
pada
pengembangan projek dan meminimalisir jumlah kode yang akan ditulis,
CodeIgniter sendiri dibangun menggunakan konsep Model-View-Controller.
Framework adalah desain struktur dasar yang dapat digunakan kembali
(reuseable) yang terdiri dari abstract class dan concreate class di
pemrograman berorientasi objek.
3. Alur Proses Codeigniter
Alur-alur proses codeigniter adalah sebagai berikut:

Index.php
berfungsi sebagai pengendali awal,
menginisialisasi
sumber daya utama yang dibutuhkan CodeIgniter.

Router memeriksa paket HTTP request untuk menentukan aksi apa
yang harus dilakukan oleh sistem.

Jika cache tersedia, maka halaman langsung dikirim ke browser,
eksekusi sistem yang normal akan dilewati.

Security: Sebelum Application Controller dieksekusi, paket HTTP
request dan semua data yang dikirimkan pengguna akan disaring
terlebih dahulu oleh Security Class.

Application Controller menginisialisasi model, library utama, helpers
dan semua sumber daya yang dibutuhkan untuk setiap request.

Antar muka aplikasi (view) yang sudah disiapkan dikirimkan ke
browser. Jika caching diaktifkan, maka view akan disimpan sementara
untuk request yang sama berikutnya.
139
3. Arsitektur 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. CodeIgniter menggunakan pendekatan Model-View-Controller,
yang bertujuan untuk memisahkan logika dan presentasi.

Model
Model berhubungan dengan data dan interaksi ke database atau
webservice. Model juga merepresentasikan struktur data dari aplikasi
yang bisa berupa basis data maupun data lain, misalnya dalam bentuk
file teks, file XML maupun web service. Biasanya di dalam model akan
berisi class dan fungsi untuk mengambil, melakukan update dan
menghapus
data
website.
Sebuah
aplikasi
web
biasanya
menggunakan basis data dalam menyimpan data, maka pada bagian
Model biasanya akan berhubungan dengan perintah-perintah query
SQL.

View
View berhubungan dengan segala sesuatu yang akan ditampilkan ke
end-user. Bisa berupa halaman web, rss, javascript dan lain-lain. Kita
harus menghindari adanya logika atau pemrosesan data di view. Di
dalam view hanya berisi variabel-variabel yang berisi data yang siap
ditampilkan. View dapat dikatakan sebagai halaman website yang
dibuat
dengan
menggunakan
HTML
dan
bantuan
CSS
atau
JavaScript. Di dalam view jangan pernah ada kode untuk melakukan
koneksi ke basis data. View hanya dikhususkan untuk menampilkan
data-data hasil dari model dan controller

Controller
Controller bertindak sebagai penghubung data dan view. Didalam
Controller
inilah
terdapat
class-class
dan
fungsi-fungsi
yang
memproses permintaan dari View ke dalam struktur data di dalam
Model. Controller juga tidak boleh berisi kode untuk mengakses basis
140
data karena tugas mengakses data telah diserahkan kepada model.
Tugas controller adalah menyediakan berbagai variabel yang akan
ditampilkan di view, memanggil model untuk melakukan akses ke basis
data, menyediakan penanganan kesalahan/error, mengerjakan proses
logika dari aplikasi serta melakukan validasi atau cek terhadap input.
D. Aktifitas Pembelajaran
1. Instalasi CodeIgniter
1. Copy
file
CodeIgniter-3.0.1
yang
ada
dalam
CD
kedalam
C:\xampp\htdocs
2. Ekstrak file CodeIgniter-3.0.1
3. Rename nama folder Codeigniter-3.0.1 menjadi myproyek
4. Akses
direktori
tersebut
melalui
browser
dengan
URL
http://localhost/myproyek/
5. Jalankan program dan tampilkan hasilnya.
6. Analisis struktur folder CodeIgniter

Application
Berisi folder dan file yang berkaitan dengan aplikasi yang akan
kita buat, kita akan berkerja pada direktori application ini. Berikut
merupakan folder dan file yang ada dalam direktori application.
141

System
Berisi file-file CodeIgniter dan konfigurasinya, kita tidak akan
mengubah apapun dalam folder ini, karena dalam folder ini berisi
file-file inti CodeIgniter.

User_guide
Berisi file dokumentasi atau tutorial CodeIgniter yang dapat
diakses melalui browser. Kita dapat mengaksesnya dengan
http://localhost/myproyek/user_guide/
2. Controller dan View
Membangun view sama seperti membangun HTML biasa. Folder views
berisi file HTML yang telah pertama kali dibuat. File HTML menggunakan
tag-tag standard dan merupakan web statis. Kegiatan pembelajaran
berikutnya akan memodifikasi file tersebut sehingga menjadi dokumen web
dinamis. Langkah-langkah yang dapat dilakukan adalah sebagai berikut :
1. Buka file home.html pada folder topik4-1, ubah beberapa script
menjadi seperti dibawah ini, save as dengan nama home.php dalam
folder views CodeIgniter.
C:xampp/htdocs/myproyek/application/controllers/Web.php
1
2
142
<!DOCTYPE html>
<htmllang="en">
<head>
3
4
5
6
7
8
9
10
11
12
13
14
15
<title>Nama Proyek</title>
<metacharset="utf-8">
<metaname="viewport"content="width=device-width, initial-scale=1">
<linkrel="stylesheet"href="<?phpecho
base_url()?>/assets/css/bootstrap.min.css">
<linkrel="stylesheet"href="<?phpecho
base_url()?>/assets/style/carousel.css">
<linkrel="stylesheet"href="<?phpecho
base_url()?>/assets/style/blog.css">
<style>
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
width: 100%;
margin: auto;
}
</style>
... kode lanjutan ...
<scriptsrc="<?phpecho base_url()?>/assets/js/jquery.min.js"></script>
<scriptsrc="<?phpecho
base_url()?>/assets/js/bootstrap.min.js"></script>
<scriptsrc="<?phpecho base_url()?>/assets/js/docs.min.js"></script>
166
167
168
Petunjuk: Nomor dengan warna merah adalah kode yang perlu diubah.
2. Copy folder assest dalam CD dan paste dalam direktori myproyek
yang telah kita buat tadi. Folder assets berisikan file CSS, JavaScript,
dan Gambar dari web yang kita bangun.
3. ubah beberapa konfigurasi dalam CodeIgniter Seperti dibawah ini,
pada file autoload.php, aktifkan helper url!
143
$autoload['helper'] = array('url');
Tambahkan url pada array helper seperti code diatas.
4. Masuk pada direktori controllers, buat file baru dengan nama
Web.php, dan tulis code dibawah ini dalam file tersebut.
C:xampp/htdocs/myproyek/application/controllers/Web.php
1
2
3
4
5
6
7
8
9
10
<?php
defined('BASEPATH')ORexit('No direct script access allowed');
class Web extends CI_Controller {
publicfunction index()
{
$this->load->view('home');
}
}
5. ubah default controller yang awalnya controller welcome menjadi
controller web.
$route['default_controller'] = 'welcome';
ubahlah menjadi
$route['default_controller'] = 'web';
Untuk merubah controller yaitu melalui file routers.php yang ada
dalam folder config.
144
6. Jalankan
web
dengan
mengakses
myproyek
dengan
URL
http://localhost/myproyek
7. Jalankan program di web browser tampilkan dan analisa hasilnya
Petunjuk :

Apabila browser menunjukan kesalahan error, berarti terjadi
kesalahan pada konfigurasi CodeIgniter

Apabila browser sudah menampillkan hasil tapi tampilan masih
acak-acakan berarti terjadi kesalahan dalam penulisan kode
HTML dan PHP.
3. Model
Sebelum membuat class model, kita membuat database terlebih dahulu.
Database merupakan media penyimpanan data web yang nantinya akan
kita olah.
1. Langkah pertama buatlah database dengan nama myproyek melalui,
kemudian buat sebuah tabel artikel dengan field id, judul dan konten.
2. Masukan beberapa data dalam tabel tersebut
3. Masuk ke konfigurasi database pada CodeIgniter dan ubah beberapa
konfigurasi menjadi seperti dibawah ini.
145
C:xampp/htdocs/myproyek/application/config/database.php
... kode php sebelum ...
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
$db['default']=array(
'dsn' =>'',
'hostname'=>'localhost',
'username'=>'root',
'password'=>'',
'database'=>'myproyek',
'dbdriver'=>'mysqli',
'dbprefix'=>'',
'pconnect'=>FALSE,
'db_debug'=>(ENVIRONMENT !=='production'),
'cache_on'=>FALSE,
'cachedir'=>'',
'char_set'=>'utf8',
'dbcollat'=>'utf8_general_ci',
'swap_pre'=>'',
'encrypt'=>FALSE,
'compress'=>FALSE,
'stricton'=>FALSE,
'failover'=>array(),
'save_queries'=>TRUE
);
4. Buat file web_model.php dalam folder models, tulis kode dibawah
ini dalam file tersebut!
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
7
8
9
10
11
146
<?phpif(!
defined('BASEPATH'))exit('No
direct
script
access
allowed');
class Web_model extends CI_Model {
publicfunction get_data_artikel(){
$query=$this->db->query("SELECT * FROM artikel");
foreach($query->result()as$data){
$artikel[]=$data;
}
return$artikel;
}
}
5. Buka Web.php pada controllers, ubah kode menjadi dibawah ini.
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
7
8
9
10
11
12
<?php
defined('BASEPATH')ORexit('No direct script access allowed');
class Web extends CI_Controller {
publicfunction index()
{
$this->load->model('web_model');
$data['artikel']=$this->web_model->get_data_artikel();
$this->load->view('home',$data);
}
}
6. Buka home.php pada folder views, ubah kode menjadi seperti
dibawah ini.
C:xampp/htdocs/myproyek/application/
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
... kode sebelum ...
<divclass="col-sm-8 blog-main">
<?phpforeach($artikelas$data_artikel):?>
<div>
<h2><?phpecho$data_artikel->judul;?></h2>
<p><?phpecho$data_artikel->waktu;?>
<ahref="#">Iswanul Umam</a></p>
<p><?phpecho$data_artikel->konten;?></p>
</div><!-- /.blog-post -->
<?phpendforeach?>
<nav>
<ulclass="pager">
<li><ahref="#">Previous</a></li>
<li><ahref="#">Next</a></li>
</ul>
</nav>
</div><!-- /.blog-main -->
... kode sesudah ...
by
7. Akses web dengan URL http://localhost/myproyek
8. Jalankan program di web browser tampilkan dan analisa hasilnya..
4. Membangun web dinamis (halaman admin),
Langkah-langkah yang dilakukan untuk mebangun web dinamis anatra lain
adalah sebagai berikut:
1. Buka file dashboard.html, ubah beberapa kode program menjadi
seperti dibawah ini. Simpan dengan nama dashboard.php dalam
folder views!
C:xampp/htdocs/myproyek/application/
1
<!DOCTYPE html>
147
2
3
4
5
6
7
8
9
10
11
<htmllang="en">
<head>
<metacharset="utf-8">
<metaname="viewport"content="width=device-width, initial-scale=1">
<title>Dashboard Admin</title>
<!-- Bootstrap core CSS -->
<linkhref="<?phpecho
base_url()?>/assets/css/bootstrap.min.css"rel="stylesheet">
<linkhref="<?phpecho
base_url()?>/assets/style/dashboard.css"rel="stylesheet">
</head>
<body>
... kode sesudah ...
2. Buat controller Admin.php dalam folder controllers, tulis kode
dibawah ini!
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
7
8
9
10
<?php
defined('BASEPATH')ORexit('No direct script access allowed');
class Admin extends CI_Controller {
publicfunction index(){
$this->load->model('web_model');
$data['artikel']=$this->web_model->get_data_artikel();
$this->load->view('dashboard',$data);
}
}
4. Buka kembali file dashboard.php, ubah kode seperti dibawah ini,
kode ini digunakan untuk menampilkan data yang ada dalam
database yang telah disimpan dalam sebuah tipe data array.
C:xampp/htdocs/myproyek/application/
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
50
148
... kode sebelum ...
<divclass="table-responsive">
<tableclass="table table-striped">
<thead>
<tr>
<thwidth="5%">#</th>
<thwidth="20%">Judul</th>
<thwidth="60%">Konten</th>
<thwidth="5%">Aksi</th>
<thwidth="5%"></th>
</tr>
</thead>
<?php$nomer=1;?>
<tbody>
<?phpforeach($artikelas$data_artikel):?>
<tr>
<td><?phpecho$nomer;?></td>
<td><?phpecho$data_artikel->judul;?></td>
<td><?phpecho$data_artikel->konten;?></td>
<td><ahref=""class="btn
btn-
51
52
53
54
55
56
57
info">Update</a></td>
<td><ahref=""class="btn
danger">Hapus</a></td>
</tr>
<tr>
<?php$nomer++?>
<?phpendforeach?>
</tbody>
</table>
</div>
... kode sesudah ...
btn-
5. Akses web dengan URL http://localhost/myproyek/index.php/admin
6.
Jalankan program tampilkan dan analisa hasilnya
4. Membangun form tambah artikel pada halaman admin:
1. Buka file form_artikel.html, ubah beberapa kode seperti dibawah ini,
simpan dengan nama form_artikel.php dalam folder application views!
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
7
8
9
10
52
53
54
55
56
57
58
59
60
<!DOCTYPE html>
<htmllang="en">
<head>
<metacharset="utf-8">
<metaname="viewport"content="width=device-width, initial-scale=1">
<title>Dashboard Admin</title>
<!-- Bootstrap core CSS -->
<linkhref="<?phpecho
base_url()?>/assets/css/bootstrap.min.css"rel="stylesheet">
<linkhref="<?phpecho
base_url()?>/assets/style/dashboard.css"rel="stylesheet">
</head>
... kode antara ...
<formaction="<?phpecho
base_url()?>index.php/admin/do_tambah"method="POST">
<divclass="form-group">
<label>Judul Artikel</label>
<inputtype="text"name="judul"class="formcontrol"placeholder="Judul artikel">
</div>
<divclass="form-group">
<label>Konten</label>
<textareaname="konten"class="formcontrol"rows="12"></textarea>
</div>
<buttontype="submit"class="btn btn-primary">Simpan</button>
<buttontype="submit"class="btn btn-danger">Cancel</button>
</form>
2. Tambahkan kode seperti dibawah ini dalam class Admin (file
Admin.php)
149
3. Jalankan program dan tampilkan serta analisis hasilnya !
5. Membangun form update artikel pada halaman admin:
1. Buka file form_update.html, ubah beberapa kode seperti dibawah ini,
simpan dengan nama form_update.php dalam folder application views!
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
7
8
9
10
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<!DOCTYPE html>
<htmllang="en">
<head>
<metacharset="utf-8">
<metaname="viewport"content="width=device-width, initial-scale=1">
<title>Dashboard Admin</title>
<!-- Bootstrap core CSS -->
<linkhref="<?phpecho
base_url()?>/assets/css/bootstrap.min.css"rel="stylesheet">
<linkhref="<?phpecho
base_url()?>/assets/style/dashboard.css"rel="stylesheet">
</head>
... kode antara ...
<?phpforeach($artikelas$data_artikel):?>
<formaction="<?phpecho
base_url()?>index.php/admin/do_update"method="POST">
<divclass="form-group">
<inputname="id"type="hidden"class="formcontrol"value="<?phpecho$data_artikel->id;?>">
</div>
<divclass="form-group">
<label>Judul Artikel</label>
<inputname="judul"type="text"class="formcontrol"placeholder="Judul
Artikel"value="<?phpecho$data_artikel>judul;?>">
</div>
<divclass="form-group">
<label>Konten</label>
<textareaname="konten"class="formcontrol"rows="12"><?phpecho$data_artikel->konten;?></textarea>
</div>
<label>
</label>
<buttontype="submit"class="btn btn-info">Update</button>
<buttontype="submit"class="btn btn-danger">Cancel</button>
</form>
<?phpendforeach?>
2. Tambahkan kode seperti dibawah ini dalam class Admin (file
Admin.php)
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
150
publicfunction update_artikel($id){
$this->load->model('web_model');
$data['artikel']=$this->web_model->get_for_update($id);
$this->load->view('form_update',$data);
}
6
7
8
9
10
11
12
13
publicfunction do_update(){
$judul =$_POST['judul'];
$konten =$_POST['konten'];
$id
=$_POST['id'];
$this->load->model('web_model');
$this->web_model->update_artikel($judul,$konten,$id);
redirect(base_url()."index.php/admin");
}
3. Jalankan program dan tampilkan serta analisis hasilnya !
6. Membangun perintah untuk hapus artikel
1. Tambahkan kode seperti dibawah ini dalam class Admin (file
Admin.php)
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
publicfunction do_hapus($id){
$this->load->model('web_model');
$this->web_model->hapus_artikel($id);
redirect(base_url()."index.php/admin");
}
2. Jalankan program dan tampilkan serta analisis hasilnya !
E. Latihan Soal
Rancanglah sebuah halaman kontak yang nantinya berfungsi untuk
pengiriman pesan oleh pengunjung web kepada admin, pesan dikirim melalui
form halaman kontak, dan semua pesan yang dimasukan akan muncul dalam
bentuk daftar pada halaman admin! Untuk antarmuka dari halaman kontak
dan admin anda dapat menggunakan hasil dari studi kasus pada Kegiatan
Pembelajaran pertama.
F. Rangkuman
Back-End web adalah bagian utama dari sebuah web site yang berfokus
pada pemrograman sisi server dan database. Segala fitur yang ada pada
web dinamis seperti mengambil data, memasukan data, menghapus data dan
mengupdate data adalah dibangun pada bagian back-end development.
Seorang back-end developer minimal menguasai pemrograman sisi server
seperti PHP dan DBMS seperti MySQL.
151
H. Umpan Balik dan Tindak Lanjut
1. Apakah saudara memahami konsep arsitektur MVC(Model View
Controller)?
2. Apakah saudara memahami apa itu back-end Application?
3. Apakah saudara mengetahui cara menggunakan framework
CodeIgnniter?
4. Apakah saudara mengetahui fitur-fitur dan keunggulan CodeIgniter
web framework?
5. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Membangun
Back-End
Application
dengan
Konsep
MVC
Menggunakan Framework CodeIgniter ” ini, silahkan mengisi tabel
12 secara jujur dan sesuai dengan kemampuan yang telah anda
dapatkan!
Tabel 12. Tindak Lanjut
IPK
152
Hasil yang didapat
Rencana Tindak Lanjut
153
Membangun Sistem Autentikasi
A. Tujuan Pembelajaran
Melalui praktikum diharapkan peserta diklat dapat menerapkan sistem
autentikasi pada aplikasi atau dokumen web.
B. Indikator Pencapaian Kompetensi
Menerapkan sistem autentikasi pada aplikasi atau dokumen web
C. Uraian Materi
Autentikasi adalah proses dalam rangka validasi user pada saat
memasuki sistem, nama dan password dari user di cek melalui proses yang
mengecek langsung ke daftar mereka yang diberikan hak untuk memasuki
sistem tersebut. Autorisasi ini di set up oleh administrator, web master atau
pemilik situs (pemegang hak tertinggi atau mereka yang ditunjuk di sistem
tersebut). Untuk proses ini masing-masing user akan di cek dari data yang
diberikannya seperti nama, password serta hal-hal lainnya yang tidak tertutup
kemungkinannya seperti jam penggunaan, lokasi yang diperbolehkan.
Autentikasi
merupakan
suatu
langkah
untuk
menentukan
atau
menginformasi bahwa seseorang adalah autentik atau asli. Melakukan
autentikasi terhadap sebuah objek adalah melakukan konfirmasi terhadap
kebenarannya. Sedangkan melakukan autentikasi terhadap seseorang
biasanya adalah untuk memverifikasi identitasnya. Pada suatu sistem
komputer, autentikasi biasanya terjadi pada saat login atau permintaan
akses.
Dalam aplikasi Web dibutuhkan mekanisme yang dapat melindungi data
dari pengguna yang tidak berhak mengaksesnya, misalnya sebuah situs Web
yang berisikan foto-foto keluarga dan hanya dapat diakses sesama anggota
keluarga. Mekanisme ini dapat diimplementasikan dalam bentuk sebuah
proses login yang biasanya terdiri dari tiga buah tahapan yaitu : identifikasi,
Autentikasi dan otorisasi.
Proses Autentikasi pada prinsipnya berfungsi sebagai kesempatan
pengguna dan pemberi layanan dalam proses pengaksesan resource. Pihak
154
pengguna harus mampu memberikan informasi yang dibutuhkan pemberi
layanan untuk berhak mendapatkan resourcenya. Sedang pihak pemberi
layanan harus mampu menjamin bahwa pihak yang tidak berhak tidak akan
dapat mengakses resource ini.
D. Aktifitas Pembelajaran
1. Identifikasi Kasus
Pada Kegiatan Pembelajaran yang ke-12, telah dijelaskan bagaimana
membangun sebuah halaman admin, akan tetapi aplikasi tersebut masih
belum sempurna, karena semua user tanpa terkecuali bisa mengakses
halaman tersebut, hal ini menjadi masalah karena seharusnya halaman
admin hanya bisa diakses oleh pihak-pihak yang memiliki kewenangan saja.
Pada Kegiatan Pembelajaran kali ini kita akan membangun sebuah system
autentikasi, yang memberi batasan terhadap user untuk bisa mengakses
halaman admin. User yang bisa mengakses halaman admin harus login
terlebih dahulu dengan memasukan username dan password.
2. Membangun Sistem authentifikasi
1. Buka file autoload.php pada folder config, aktifkan libraries session!
$autoload['libraries'] = array('database', 'session');
2. Buat tabel pada database myproyek dengan nama akun dengan field id,
username dan email.
3. Buat class controller Login, tulis kode dibawah ini dan simpan dengan
nama Login.php
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
defined('BASEPATH')ORexit('No direct script access allowed');
class Login extends CI_Controller {
publicfunction index(){
$this->load->view('login');
}
publicfunction validasi_user(){
$username=$_POST['username'];
$password=md5($_POST['password']);
$this->load->model('akun_model');
$query=$this->akun_model->verifikasi_data($username,$password);
if($query->num_rows()>0){
$data_user=array(
155
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
'username'=>$username,
'logged_in'=>TRUE
);
$this->session->set_userdata($data_user);
redirect('admin');
}else{
header('location:'. base_url().'index.php/login/gagal_login');
}
}
publicfunction gagal_login(){
echo"Password atau username salah, Silahkan periksa kembali!";
}
}
4. Buka file login.html, tuliskan kode dibawah ini, kemudian simpan dengan
nama login.php
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
156
<!DOCTYPE html>
<htmllang="en">
<head>
<metacharset="utf-8">
<metaname="viewport"content="width=device-width, initial-scale=1">
<title>Signin</title>
<!-- Bootstrap core CSS -->
<linkhref="<?phpecho
base_url()?>/assets/css/bootstrap.min.css"rel="stylesheet">
<linkhref="<?phpecho
base_url()?>/assets/style/signin.css"rel="stylesheet">
</head>
<body>
<divclass="container">
<formclass="form-signin"action="<?phpecho
base_url()?>index.php/login/validasi_user"method="POST">
<h2class="form-signin-heading">Silahkan masuk</h2>
<labelfor="text"class="sr-only">Alamat Email</label>
<inputname="username"type="text"id="username"class="formcontrol"placeholder="Username"requiredautofocus>
<labelfor="inputPassword"class="sr-only">Password</label>
<inputname="password"type="password"id="inputPassword"class="formcontrol"placeholder="Password"required>
<divclass="checkbox">
<label>
<inputtype="checkbox"value="remember-me"> Ingat saya
</label>
</div>
<buttonclass="btn
btn-lg
btn-primary
btn-block"type="submit">Sign
in</button>
</form>
</div><!-- /container -->
</body>
</html>
5. Buat class Akun_model, tuliskan code dibawah ini, simpan dengan nama
Akun_model.php
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
7
8
9
10
<?phpif(!
defined('BASEPATH'))exit('No
direct
script
allowed');
class Akun_model extends CI_Model {
publicfunction verifikasi_data($username,$password){
$this->db->where('username',$username);
$this->db->where('password',$password);
$query=$this->db->get('akun');
return$query;
}
}
access
6. Buka controller admin, tambahkan kode fungsi dibawah ini!
C:xampp/htdocs/myproyek/application/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
publicfunction__construct(){
parent::__construct();
$this->is_logged_in();
}
publicfunction is_logged_in (){
$logged_in=$this->session->userdata('logged_in');
if(!isset($logged_in)||$logged_in!=TRUE){
echo"Kamu tidak memiliki izin unntuk mengakses halaman ini,
Silahkan login terlebih dahulu! ";
die();
}
}
publicfunction logout(){
$session=$this->session->userdata('logged_in');
if($session!=TRUE){
header('location:'. base_url().'index.php/login');
}else{
$this->session->sess_destroy();
header('location:'. base_url().'index.php/login');
}
}
7. Jalankan program pada web browser tampilkan dan analisis hasilnya.!
E. Latihan Soal
Lakukan pengujian sistem autentikasi yang telah anda bangun, coba kunjungi
URL: http://localhost/myproyek/index.php/admin tanpa login terlebih dahulu,
apabila halaman admin masih bisa diakses tanpa login berarti sistem masih
gagal, dan apabila halaman admin sudah tidak bisa diakses, berarti sistem
autentikasi telah berhasil dibangun.
157
F. Rangkuman
Autentikasi adalah proses dalam rangka validasi user pada saat memasuki
sistem, nama dan password dari user di cek melalui proses yang mengecek
langsung ke daftar mereka yang diberikan hak untuk memasuki sistem tersebut.
Autentikasi merupakan suatu langkah untuk menentukan atau mengonfirmasi
bahwa seseorang adalah autentik atau asli. Melakukan autentikasi terhadap
sebuah objek adalah melakukan konfirmasi terhadap kebenarannya. Dalam
aplikasi Web dibutuhkan mekanisme yang dapat melindungi data dari pengguna
yang tidak berhak mengaksesnya, Proses Autentikasi pada prinsipnya berfungsi
sebagai
kesempatan
pengguna
dan
pemberi
layanan
dalam
proses
pengaksesan resource. Pihak pengguna harus mampu memberikan informasi
yang dibutuhkan pemberi layanan untuk berhak mendapatkan resourcenya.
Sedang pihak pemberi layanan harus mampu menjamin bahwa pihak yang tidak
berhak tidak akan dapat mengakses resource ini.
G. Umpan Balik dan Tindak Lanjut
1. Apakah anda sudah mampu membangun sistem autentikasi?
2. Apakah anda sudah mengetahui manfaat sistem autentikasi?
3. Setelah saudara melakukan kegiatan pembelajaran untuk modul
“Membangun Sistem Autentikasi” ini, silahkan mengisi tabel 13 secara
jujur dan sesuai dengan kemampuan yang telah anda dapatkan!
Tabel 13. Tindak Lanjut
IPK
158
Hasil yang didapat
Rencana Tindak Lanjut
159
EVALUASI
1. Berikut ini adalah jenis browser yang digunakan untuk mengakses sebuah
halaman web site, kecuali:
A.
B.
C.
D.
Mozilla Firefox
Bootstrap
Internet Explorer
Google Chrome
2. Berikut ini adalah contoh perangkat lunak yang berfungsi sebagai web server
kecuali?
A.
B.
C.
D.
Apache
Internet Information Service (IIS)
Internet Explorer (IE)
Apache Tomcat
3. Jika anda ingin mengubah warna latar belakang pada halaman web site
menjadi warna biru dengan menggunakan tag HTML, manakah diantara tag
berikut ini yang paling tepat?
A.
B.
C.
D.
<body bgcolor=”blue”>
<body background=”blue”>
<body backgroundcolor=”blue”>
<body backcolor=”blue”>
4. Kode HTML <img src=””></img> adalah berfungsi untuk
A.
B.
C.
D.
Menyisipkan gambar kedalam halaman web site
Memberi bingkai pada gambar
Membuat gambar dapat bergerak
Tidak ada jawaban yang benar
5. Contoh salah satu penerapan tag HTML adalah <a href=”kirimemail.html”>
Kirim Email </a>, apakah fungsi dari tag tersebut?
E.
F.
G.
H.
Membuat hyperlink
Membuat hyperlink
Membuat hyperlink
Membuat hyperlink
yang berfungsi untuk menampilkan halaman lain.
yang berfungsi untuk memanggil alamat email.
yang berfungsi untuk mengunduh sebuah file.
yang berfungsi untuk mengunggah sebuah file.
6. Salah satu cara untuk menggunakan script CSS (Cascading Style Sheet)
adalah dengan cara external. Manakah script yang paling tepat untuk
mengimplementasikan cara tersebut?
A.
B.
C.
D.
160
<a href=”style.css” type=”text/css” rel=”stylesheet”>
<script type=”text/css” src=”style.css”>
<link href=”text/css” file=”style.css” rel=”stylesheet”>
<link href=”style.css” type=”text/css” rel=”stylesheet”>
7. Perhatikan script css berikut ini dengan seksama!
Manakah diantara kode berikut ini yang tepat untuk membuat huruf menjadi
tebal dengan memanfaatkan script css tersebut?
A.
B.
C.
D.
<div class=”cetakTebal”>Cetak Tebal</div>
<div=”cetakTebal”>Cetak Tebal</div>
<div id=”cetakTebal”>Cetak Tebal</div>
<div id=”{cetakTebal}”>Cetak Tebal</div>
8. Manakah bahasa pemrograman berikut ini yang menggunakan komunikasi
server side dalam pemrosesannya?
A.
B.
C.
D.
PHP, JavaScript dan ASP.Net
Bootstrap, CodeIgniter, JQuery
ASP.Net, PHP, JSP
CodeIgniter, AngularJS, Backbone
9. Berikut ini adalah penamaan variabel dalam PHP yang diperbolehkan
kecuali:
A.
B.
C.
D.
$_nama
$2nama
$namaLengkap
$for_nama
10. Dalam membangun back-end application, Pemrograman yang digunakan
untuk mengkomunikasikan antara user dengan server dan database adalah .
...
A. Server-side Scripting
B. Client-side Scripting
C. Database Server
D. HTTP Server
11. Manakah diantara script PHP berikut ini yang berfungsi untuk melakukan
perulangan sebanyak 100 kali dengan baik dan benar?
A.
B.
161
D.
C.
12. Kode program dari JavaScript yang berfungsi untuk mengambil sebuah value
dari input form adalah…
A.
B.
C.
D.
document.write()
document.getElementByVal()
document.getElementById().value
document.getValue()
13. Selain menggunakan “if then else” untuk mengatasi permasalahan kondisi
percabangan pada JavaScript dapat juga menggunakan….
A.
B.
C.
D.
for…
while…
do while
switch
14. Pada web dinamis, terdapat pemisahan antara layout web dengan konten
web, hal ini yang menjadikan web dapat bekerja secara efisien. Hal itu
disebabkan karena . . . . . .
A. Saat konten berjumlah sangat banyak, tidak akan terjadi kesulitan saat
pengelolaan atau memanipulasi data
B. Saat konten berjumlah sangat banyak, Halaman akan diskses secara cepat dan
ringan
C. Database Server Data yang diminta dari server hanya data konten, sehingga
web bekerja secara cepat
D. Data yang diminta dari server hanya data konten, sehingga web bekerja secara
cepat
15. Sistem autentikasi digunakan untuk pengkategorian user dalam pengaksesan
atau pengelolaan aplikasi web. Hal tersebut perlu dilakukan karena . . . . . .
A. Untuk memberian batasan pengunjung dan pengelola web, sehingga web
dapat beroprasi secara semestinya
B. Untuk memberikan hak akses kepada pengunjung sehingga pengunjung dapat
mengunjungi web tanpa mengelolanya
C. Untuk memberikan hak akses kepada pengunjung sehingga web dapat dikelola
dengan baik
D. Untuk memberikan kebebasan kepada pengunjung sehinggadapat mengakses
web tanpa terganggu oleh system
162
16. Script PHP yang berfungsi untuk menghitung panjang karakter adalah..
A.
B.
C.
D.
strlength()
strlen()
length()
len()
17. Jika ada script echo substr("ALUN SUJJADA",0,4); Maka output yang
dihasilkan adalah…
A.
B.
C.
D.
JADA
ALUN
4
16
18. Jika ada script echo
dihasilkan adalah….
A. 2
B. 5
C. 3
D. 4
strpos("SUJJADA","A");
Maka output yang
19. Manakah diantara pernyataan berikut ini yang paling tepat?
A. CodeIgniter adalah framework untuk mempermudah pembuatan web dinamis
berbasi Java.
B. CodeIgniter adalah framework yang menerapkan konsep MVC (Model, View,
Controller)
C. CodeIgniter adalah sebuah web framework yang digunakan untuk pembuatan
desain front-end
D. Model pada CodeIgniter tidak diperbolehkan menuliskan fungsi untuk mengakses
database.
20. Inti dari proses upload pada PHP adalah berada pada penerapan fungsi builtin yaitu move_uploaded_file() atau copy(). Script tersebut berfungsi untuk . . .
A.
B.
C.
D.
Memindahkan dari folder temporary ke folder tujuan upload
Memindahkan dari folder temporary ke folder tujuan download
Memindahkan dari folder temporary ke folder tujuan server
Memindahkan dari folder temporary ke folder tujuan direktori local
163
164
PENUTUP
A. Kesimpulan
Pemrograman web dinamis merupakan salah satu modul dari sepuluh modul
diklat PKB. Modul grade 6 ini digunakan untuk pelatihan guru kejuruan Rekayasa
Perangkat Lunak untuk jenjang diklat tingkat lanjut. Melalui modul ini peserta
diklat diharapkan mampu memiliki kompetensi dalam membuat aplikasi berbasis
web dinamis. Proses pembuatan aplikasi web dinamis diawali dengan
pemahaman
tentang
perangkat-perangkat
yang
dibutuhkan
untuk
mengembangkan aplikasi web melalui aktifitas pembelajaran observasi dan
analisis.
Dalam
ketrampilan
mengembangkan
dasar
yaitu
aplikasi
pembuatan
web
kode
dinamis
program
ini
dibutuhkan
HTML.
Teknik
pengembangan web dinamis menggunakan server side scripting berbasis
bahasa pemrograman PHP dengan menggabungkan CSS dan pemrograman
java script. Pengembangan front end aplikasi menggunakan framework
bootstrap. Pengembangan back-end aplikasi
menggunakan model MVC dan
data disimpan dalam database MySQL. studi kasus aplikasi yang dijadikan
contoh untuk pengembangan adalah publikasi artikel. Dalam aplikasi tersebut
pengguna dapat melihat dan mencari artikel sedangkan untuk mengedit,
menambah dan menghapus artikel melalui proses authentifikasi user.
B. Tindak lanjut
Modul diklat PKB guru RPL grade 6 ini memberikan kepada peserta didik
pengetahuan dan ketrampilan dasar dalam mengembangkan aplikasi berbasi
web. Dalam implementasi pengembangan aplikasi menggunakan penggabungan
teknik web dinamis dasar dan pemrograman framework. Untuk menghasilkan
aplikasi yang berkualitas, efektifitas dan efesiensi dalam pengembangan serta
kompleksitas aplikasi yang tinggi dibutuhkan pemahaman, ketrampilan dan seni
dalam
pengembangan
proyek
aplikasi
berbasis
web.
Modul
diklat
selanjutnyaakan memberikan pemahaman dan ketrampilan tentang manajeman
proyek sistem informasi berbasis web.
165
166
DAFTAR PUSTAKA
Duckett, Jon. (2011). HTML & CSS: Design and Build Websites. Canada: John
Wiley & Sons, Inc.
Jackson, Jeffrey C. (2007). Web Technologies: A Computer Sciense Perspective.
United States of America: Pearson Prentice Hall.
Kevin Tatroe, Peter Maclntyre and Rasmus Lerdorf. (2013). Programming PHP:
Creating Dynamic Web Pages. United State of America: O’Reilly.
Noxon, Robin. (2014). Learning PHP, MySQL, JavaScript, CSS & HTML5: A
Step-By-Step Guide to Creating
Dynamic Websites. United States of
America: O’Reilly.
https://id.wikipedia.org/wiki/XAMPP
http://www.w3schools.com/
http://ihsanatkia.com/featur-lebih-dari-package-sublime-text/
http://www.htmlandcssbook.com/code-samples/
http://www.duniailkom.com/tutorial-belajar-javascript-pengertian-dan-fungsijavascript-dalam-pemograman-web/
https://id.wikipedia.org/wiki/MySQL
https://id.wikipedia.org/wiki/PhpMyAdmin
167
168
GLOSARIUM
Address bar
Browser
Back-end
Client-side
CSS
Content
Download
FTP
Front-end
Home Page
HTML
A
: Kotak tempat penginputan alamat web lainnya pada
web browser.
B
: Software yang digunakan untuk menelusuri dan
menampilkan informasi dari web server, seperti
Internet Explorer, Opera, Mozilla Firefox, dan Safari.
: Berkaitan dengan alur program web dinamis.
C
: Operasi/kegiatan yang dilakukan di client dan tidak
melibatkan server. Operasi yang terjadi hanya di
browser, tidak ada permintaan data, verifikasi data
ke server.
: (Cascading
Style
Sheets):
Bahasa
yang
direkomendasikan W3C (World Wide Web
Consortium) untuk mendefiniskan style (seperti jenis,
ukuran, warna huruf, dan lain-lain) pada dokumen
web.
: Isi sebuah website yang mencakup, teks, gambar,
atau media-media lainnya. Content harus dibedakan
dari layout. Yang disebut kemudian berhubungan
dengan
bagaimana
sebuah
halaman
web
ditampilkan.
D
: Transfer file atau informasi dari komputer lain ke
komputer kita. Dalam istilah web, download berarti
transfer file dari server web ke klien web.
F
: File Transfer Protocol, yaitu protokol yang
memungkinkan seseorang mentransfer file dari satu
komputer ke komputer lainnya. FTP biasa digunakan
untuk menransfer file web kita ke komputer server
atau penyedia hosting.
: Berkaitan dengan user interface/tampilan website.
H
: Halaman pertama dari situs web.
: HyperText Markup Language. HTML merupakan
bahasa yang digunakan untuk mendefinisikan
sejumlah bagian dari sebuah dokumen web dalam
bentuk tag, sehingga browser dapat mengetaui
bagaimana menampilkan dokumen web tersebut
169
yang mencakup, link, text, gambar dan media-media
lainnya seperti video dan audio.
HTTP
Hypertext
: Kependekan dari Hypertext Transfer Protocol, yaitu
aturan-aturan
yang
digunakan
untuk
menghubungkan dan mengirimkan dokumendokumen hypertext seperti web.
: Tanda atau penunjuk ke dokumen lain web Hyperlink
sinonim dengan hotlink, anchortext, atau link.
: Hypertext adalah teks yang bisa di-klik.
Javascript
J
: Bahasa pemrograman sisi-client.
Hyperlink
Login
Logout
Link
Password
L
: Otorisasi yang dilakukan oleh seorang user untuk
masuk ke halaman pribadi dengan memasukkan
username dan password di dalam sebuah jaringan
komputer (termasuk internet).
: Keluar dari otorisasi (login).
: Koneksi hypertext antar halaman-halaman web.
Sinonim dengan hotlink atau hyperlink.
P
: Kode rahasia yang digunakan oleh pengguna untuk
dapat mengotorisasikan username yang dia miliki
untuk dapat memasuki sebuah halaman pribadi di
jaringan komputer (termasuk internet)
PHP
Server
:
Server-side
:
Sistem Autentikasi
Site
:
:
Script
:
170
Bahasa pemrograman sisi-server
S
Sebuah komputer yang bertugas melayani
pembagian serta pengolahan informasi yang
diperlukan oleh Client. Server biasanya di kendalikan
oleh seorang admin.
Operasi/kegiatan yang dilakukan di server dalam
konteks hubungan server-client. Sebagai contoh saat
mengakses sebuah halaman web di komputer
menggunakan browser, browser adalah client yang
mengirim permintaan kepada server. Kemudian
server merespon permintaan client. Sebelum
merespon permintaan client lebih dulu terjadi
kegiatan di server, seperti menerjemahkan
permintaan client, memproses, memilih data dan
sebagainya.
Memiliki makna yang sama dengan system login.
Sinonim dengan halaman web atau website. Dalam
bahasa Indonesia, kita sering menyebutnya situs
atau situs web.
Adalah kumpulan perintah yang disusun dalam
bahasa komputer tertentu (Java, VisualBasic,
CGI/Perl) untuk melakukan sebuah program
interaktif atau animasi dalam sebuah webpage.
URL
Upload
User
Website
Website Dinamis
Web Programmer
Web Desainer
Web Developer
Web Master
Web Statis
WWW
Web Client
Web server
U
: Uniform Resource Locator, yaitu alamat dokumen
atau sumber-sumber lain di internet. URL menyajikan
informasi tentang bagaimana sebuah server serta
alamat-alamat file lainnya diakses.
:
Kegiatan mentransfer atau mengirim suatu file ke
komputer lain.
: Pemakai atau pengguna dalam komputer (termasuk
internet).
W
: Sekumpulan halaman-halaman web (web page),
gambar, video atau aset-aset digital lainnya yang
disimpan pada satu atau lebih web server, biasanya
dapat diakses melalui internet.
: Website yang dapat dirubah-ubah konponen maupun
kontennya dan terkoneksi dengan database.
: Seseorang yang perkerjaannya membuat website,
akan tetapi terfokus pada membuat alur program
website tersebut.
: Seseorang yang pekerjaannya membuat website,
akan terfokus pada tampilan atau desain.
: Seseorang yang pekerjaannya membua website.
: Seseorang yang melakukan kegiatan manajeman
website untuk memastikan bahwa website tersebut
dapat berfungsi dengan baik.
: Website yang tidak dapat dirubah komponen
maupun kontennya.
: World Wide Web, Layanan internet berbasis
hiperteks yang digunakan untuk menelusuri sumbersumber di internet.
: Biasa disebut dengan browser atau perambaan
adalan perangkat lunak yang digunakan untuk
mengakses web server dengan mengirimkan pesan
permintaan (request) HTTP dan mengolah response
HTTP yang dihasilkan
: Merupakan perangkat lunak dalam server yang
berfungsi menerima permintaan (request) melalui
HTTP dari client yaitu browser dan mengirimkan
kembali response HTTP yang pada umumnya akan
berbentuk dokumen HTML atau file.
171
HTTP (HyperText Transfer Protocol) adalah standart protokol komunikasi,
protokol jaringan lapisan aplikasi yang digunakan untuk sistem
informasi terdistribusi, kolaboratif, dan menggunakan hipermedia.
URL (Uniform/Universal Resource Locator) merupakan suatu alamat yang
digunakan untuk mengakses resource (file) yang berada pada
jaringan intranet maupun internet.
HTML (Hyper Text Markup Language) adalah Sebuah bahasa markup yang
terdiri dari seperangkat kode-kode (tag markup) yang digunakan
untuk mendeskripsikan dokumen web (halaman web).
CSS (Cascading Style Sheets), CSS mendefinisikan bagaimana elemen HTML
yang akan ditampilkan. CSS Bekerja dengan mengaitkan aturan
denga elemen HTML, aturan-aturan ini yang nantinya mengatur
bagaimana elemen ditampilkan.
Client-Side Programming Languageadalah merupakan salah satu tipe bahasa
pemograman yang pemrosesannya dilakukan oleh client (user,
pengguna). Aplikasi client yang dimaksud merujuk kepada web
browser seperti Google Chromedan Mozilla Firefox. Salah satu contoh
Bahasa permograman jenis ini adalah Java script.
Server-side Programming Languageadalah merupakan salah satu tipe Bahasa
permograman yang hasil programnya (script program) berjalan di sisi
server. Salah satu contoh Bahasa permograman ini adalah PHP.
Dokumen PHP akan diparsing didalam web server oleh interpreter
dan diterjemehkan dalam bentuk HTML dan akhirnya akan
ditampilkan oleh browser yang dibuka oleh user.
Front-End Web adalah bagian utama dari sebuah web site yang berinteraksi
langsung dengan pengguna atau pengunjung situs. Segala sesuatu
yang dilihat ketika melakukan navigasi dalam sebuah halaman web,
baik dari font, warna, menu, dan segala yang menyangkut aspek
desain yang nantinya menjadi user interface dari aplikasi web adalah
hasil penggabungan dari fungsi HTML, CSS, dan JavaScript dikontrol
oleh browser pada komputer.
PHP adalah basaha bahasa pemrograman komputer Server-side scripting yang
diciptakan khusus untuk menciptakan konten web dinamis
Identifier adalah sebuah pegenal, dalam PHP identifier digunakan untuk memberi
nama sebuah variabel, fungsi, konstanta atau class.
Bootstrap adalah sebuah framework HTML, CSS dan Java Script yang
menyediakan kumpulan komponen-komponen antarmuka dasar pada
web yang telah dirancang sedemikian rupa untuk digunakan bersamasama. Selain komponen antarmuka, Bootstrap juga menyediakan
sarana untuk membangun layout halaman dengan mudah dan rapi,
serta modifikasi pada tampilan dasar HTML untuk membuat seluruh
172
halaman web yang dikembangkan senada dengan komponenkomponen lainnya.
Autentikasi adalah proses dalam rangka validasi user pada saat memasuki
sistem, nama dan password dari user di cek melalui proses yang
mengecek langsung ke daftar mereka yang diberikan hak untuk
memasuki sistem tersebut.
SQL (Structure query language) adalah sebuah bahasa yang digunakan untuk
me-request informasi dari basisdata. Bahasa ini dikembangkan oleh
DBSM. Konstruksi SQL berbentuk atas kombinasi relational-algebra
dan relational-calculus.SQL terdiri dari beberapa komponan, dua
diantaranya yang sangat fundamental adalah DDL (Data Definition
Language) dan DML (Data Manipulation Language).
173
Download