Anda di halaman 1dari 24

3.

LAPORAN KEGIATAN KERJA PRAKTEK


3.1 Dasar Teori Pada sub bab ini akan dibahas mengenai teori-teori enun!ang "ang digunakan o#eh enu#is da#am embuatan Ker!a Praktek. 3.1.1 Metode Algoritma Genetika A#goritma Genetika atau Genetic Algorithm $GA% meru akan a#goritma "ang terins irasi o#eh teori e&o#usi dari 'har#es (ar)in. (engan kata #ain en*arian so#usi suatu masa#ah dengan a#goritma genetika akan terus bere&o#usi. A#goritma genetika memberikan so#usi dari masa#ah "ang tidak memi#iki suatu metode en*arian so#usi "ang te at+ atau un bi#a ada+ mungkin membutuhkan )aktu "ang #ama da#am men*ari so#usin"a. Pen*arian so#usi dengan a#goritma genetika ini diminati o#eh karena tidak membutuhkan )aktu "ang #ama. ,e#ain itu hasi# dari a#goritma genetika ini *uku memuaskan dan da at dia #ikasikan ada semua bidang. Inti dari a#goritma genetika ada#ah se*ara bertaha akan men*ari so#usi terbaik $survival of the fittest % dari begitu ban"ak so#usi "ang ada. Pertama-tama a#goritma genetika beker!a dengan membuat bebera a so#usi se*ara a*ak+ tentu sa!a dari taha an ertama ini so#usin"a kemungkinan masih buruk. ,o#usi tersebut akan menga#ami roses e&o#usi se*ara terus menerus dan akan menghasi#kan suatu so#usi "ang #ebih baik. ,etia so#usi "ang terbentuk me)aki#i satu kromosom dan satu indi&idu terdiri dari satu kromosom. Kum u#an dari indi&idu-indi&idu ini akan membentuk suatu o u#asi+ dari o u#asi ini akan #ahir o u#asi- o u#asi baru sam ai dengan se!um#ah generasi "ang ditentukan. Gen da#am kasus ini ada#ah urutan raktikum "ang te#ah dikodekan ter#ebih dahu#u sehingga membentuk suatu kromosom. Kromosom meru akan kum u#an dari gen-gen "ang ada+ "ang berarti bah)a an!ang kromosom akan sesuai dengan !um#ah raktikum "ang dibutuhkan.

Universitas Kristen Petra

,edangkan indi&idu meru akan kum u#an kromosom+ da#am kasus ini satu indi&idu memi#iki satu kromosom. ,edangkan o u#asi+ meru akan kum u#an indi&idu "ang te#ah ditentukan !um#ahn"a o#eh user. (a#am eksekusin"a+ a#goritma genetika akan di#akukan untuk tia ke#om ok atau kategori raktikum. Tabe# 3... Tabe# K#asi/ikasi Kode Praktikum dan Ke#as Praktikum No. . 1 3 3 4 5 Kode 00. 001 003 003 004 005 Kelas Praktikum AP.$A% AP.$2% AP.$'% AP.$(% AP1$A% AP1$2%

,ebe#um memasuki taha an-taha an a#goritma genetika+ ter#ebih dahu#u akan dia)a#i dengan eren*anaan &ariabe#-&ariabe# "ang dibutuhkan. 6ariabe#-6ariabe# A#goritma Genetika ,ebe#um men!a#ankan roses a#goritma genetika+ tentu sa!a di er#ukan bebera a dibutuhkan da#am ni#ai dari &ariabe#-&ariabe# a#goritma "ang akan tersebut. emrosesan genetika

Pemberian inisia#isasi ada &ariabe#-&ariabe# tersebut nantin"a akan mem engaruhi hasi# a#goritma genetika "ang dida at. 6ariabe#&ariabe# "ang dibutuhkan itu ada#ah7 o Jum#ah Indi&idu er Po u#asi $JI% 6ariabe# ini se#an!utn"a akan disebut JI. 6ariabe# JI ini memi#iki engaruh "ang kuat dida#am enggunaan u#a untuk a#goritma genetika. ,emakin besar JI+ semakin besar &ariasi indi&idu "ang dihasi#kan+ maka semakin besar sedikit !um#ah generasi "ang di er#ukan kesem atan untuk menda atkan so#usi terbaik dan semakin menda atkan so#usi terbaik.

Universitas Kristen Petra

<

o Jum#ah Generasi $JG% 6ariabe# ini se#an!utn"a akan disebut JG. 6ariabe# ini menentukan sam ai bera a ka#i o u#asi a)a# akan berubah+ !adi !uga memi#iki eran "ang tak ka#ah enting da#am menam i#kan !um#ah &ariasi indi&idu+ "ang akan ber engaruh terhada hasi# a#goritma genetika. 9ntuk JG ini dibatasi maksima# .00 generasi untuk mendukung memori "ang terda at da#am kom uter "ang digunakan da#am me#akukan a#goritma genetika ini. Jadi ha# itu berhubungan erat dengan keterbatasan memori "ang terda at da#am sebuah kom uter. o Tingkat Imigrasi $TI% 6ariabe# ini se#an!utn"a akan disebut TI. TI meru akan angka ersentase "ang akan mem engaruhi o u#asi. 6ariabe# ini !uga sebera a sering ter!adin"a imigrasi atau mun*u#n"a indi&idu baru da#am suatu meru akan &ariabe# "ang berbentuk e#uang. o Tingkat :utasi $T:% 6ariabe# ini se#an!utn"a akan disebut T:. 6ariabe# "ang beru a angka *uku ersentase ini akan mem engaruhi o u#asi. ban"ak ter!adin"a mutasi da#am suatu

6ariabe# T: meru akan sa#ah satu &ariabe# "ang berbentuk e#uang+ artin"a kemungkinan ter!adin"a mutasi di#ihat tia indi&idun"a. :isa#kan JI .0+ angka T: diisikan 0+4+ bukan berarti akan ada 4 mutasi $0.4 ; .0%+ teta i e#uang ter!adin"a mutasi untuk masing-masing indi&idu ada#ah 0.4. Jadi da#am *ontoh diatas bisa sa!a ter!adi 0 mutasi sam ai .0 mutasi.

Universitas Kristen Petra

.0

o Tingkat Persi#angan $*ross over% $TP% 6ariabe# ini se#an!utn"a akan disebut TP. ,e#ain T:+ TP !uga meru akan &ariabe# "ang berbentuk e#uang. Jadi TP ada#ah e#uang untuk ter!adi ersi#angan antara se asang indi&idu. (a#am ken"ataann"a ersi#angan akan se#a#u ter!adi+ han"a sa!a !um#ah gen dan gen-gen "ang disi#angkan akan berbeda-beda. O#eh karena itu+ biasan"a TP diisi dengan ni#ai . atau .00=+ "ang berarti akan se#a#u ter!adi ersi#angan. o Persentase Persi#angan $PP% 6ariabe# ini se#an!utn"a akan disebut PP. PP meru akan angka ersentase "ang akan mem engaruhi bera a gen "ang akan disi#angkan. :isa#kan da#am satu indi&idu+ ada 5 gen dan PP>0.4. :aka !ika ter!adi ersi#angan+ gen-gen "ang akan disi#angkan se!um#ah 3 buah gen. Pembuatan Po u#asi A)a# Po u#asi meru akan kum u#an bebera a indi&idu. ,emua o u#asi da#am a#goritma genetika ini berasa# dari satu o u#asi "aitu o u#asi a)a#. ,o#usi atau kromosom terbaik dari o u#asi a)a# ini akan di ertahankan+ dan akan menga#ami Pembuatan roses e&o#usi untuk roses menda atkan kemungkinan so#usi "ang #ebih baik. o u#asi a)a# ini di#akukan me#a#ui emi#ihan se*ara a*ak dari se#uruh so#usi "ang ada. Pemi#ihan a*ak ini men"ebabkan o u#asi a)a# dari a#goritma genetika tidak akan sama da#am setia ka#i er*obaan+ meski un semua ni#ai &ariabe# "ang digunakan sama.

Universitas Kristen Petra

..

(a#am ha# ini o u#asi ada#ah sebuah string "ang berisi gen "ang ber!um#ah sesuai dengan !um#ah raktikum. ,ebagai *ontoh a abi#a terda at suatu gen "ang "ang akan di-generate. ,emua ke#as raktikum "ang akan disim an ada a#et- a#et+ ter#ebih dahu#u akan disim an ada sebuah arra". Arra" tersebut ada arra"+ dan osisin"a berisi in/ormasi urutan ke#as tersebut ketika akan dimasukkan ke da#am a#et. :en*ari ?itness 'ost 9ntuk mengetahui baik tidakn"a so#usi "ang ada ada suatu indi&idu+ setia indi&idu ada o u#asi harus memi#iki ni#ai embandingn"a $fitness cost%. :e#a#ui ni#ai embanding ini#ah akan dida atkan so#usi terbaik dengan *ara engurutan ni#ai embanding dari indi&idu-indi&idu da#am di ertahankan+ sementara o u#asi. ,o#usi terbaik ini akan so#usi #ain diubah-ubah untuk cross over dan an!angn"a 3 karakter+ maka an!ang string ada#ah 3 ; n+ dengan n meru akan !um#ah raktikum

menda atkan so#usi "ang #ain #agi+ me#a#ui taha mutasi $mutation%.

,ebe#um me#akukan enem atan ke#as raktikum di#akukan dua buah enge*ekan ter#ebih dahu#u+ "aitu en*arian hari dan !am "ang masih kosong dan enge*ekan rioritas "aitu ada hari dan !am mana "ang a#ing tinggi rioritasn"a. Pen*arian hari dan !am "ang te at akan disesuaikan dengan hari dan !am #aboratorium "ang mengadakan tentun"a dengan mem erhatikan #aboratorium tersebut. ,ete#ah se#uruh raktikum "ang ada di#etakan ada hari dan !am serta #aboratorium "ang masih kosong $terutama #aboratorium "ang mengadakann"a%+ maka a #ikasi akan menge*ek bebera a aturan "ang harus di enuhi "aitu7 Tidak bo#eh bentrok dengan mata ku#iah "ang sama. raktikum tersebut ada rioritas "ang tertinggi

Universitas Kristen Petra

.1

Tidak bo#eh bentrok dengan res onsi mata ku#iah "ang sama. Tidak bo#eh bentrok dengan mata ku#iah semester "ang sama. Jum#ah raktikum ada setia #aboratorium setia harin"a harus memenuhi !um#ah "ang te#ah ditentukan. Praktikum diutamakan untuk da at diadakan di

#aboratorium "ang mengadakann"a. A abi#a terda at aturan-aturan "ang di#anggar maka ni#ai fitness cost akan dikurangi sehingga hasi#n"a akan men!adi #ebih !e#ek. Aturan tentang fitness cost akan di!e#askan berikut7

Tabe# 3.1. Tabe# Fitness Cost Aturan :ata ku#iah "ang sama bentrok Fitness cost Fitness cost @ $!um#ah mata

ku#iah bentrok A.00% Res onsi mata ku#iah "ang sama Fitness cost @ $!um#ah bentrok :ata ku#iah semester sama bentrok res onsi bentrok A.00% Fitness cost @ $!um#ah

mataku#iah semester A.0% Praktikum tidak diadakan di tem at Fitness cost @ $!um#ah #aboratorium "ang menanganin"a. raktikum tidak sesuai A.0% Praktikum diadakan di #aboratorium Fitness cost B $!um#ah "ang sesuai Pengurutan (ata $Sorting% Taha se#an!utn"a ada#ah taha an engurutan indi&idu da#am o u#asi ni#ai embanding $fitness cost% "ang te#ah dida at dari bagian sebe#umn"a. Tu!uan utama dari engurutan kromosom ini ada#ah untuk men*ari indi&idu terbaik ada suatu o u#asi+ "ang bisa dikatakan sebagai so#usi terbaik sementara. ,o#usi "ang terbaik dari kum u#an so#usi terbaik sementara "ang ada meru akan so#usi akhir dari roses a#goritma genetika. raktikum "ang sesuai A10%

Universitas Kristen Petra

.3

Taha 'ross O&er Taha an ini akan men"i#angkan dua indi&idu "ang ada da#am suatu o u#asi+ untuk menda atkan dua indi&idu baru. ,ete#ah taha + maka akan dida at o u#asi baru "ang !um#ahn"a 1 ka#i #i at dari o u#asi #ama. (a#am kasus dari se#uruh ke#as dimasukkan. Indi&idu . > 00. 001 003 003 Indi&idu 1 > 004 005 00- 008 (ari o u#asi "ang ada+ diambi# indi&idu se asang demi se asang untuk disi#angkan $cross over%. Persi#angan ada kasus ini di#akukan dengan memindahkan sebagian urutan ada satu indi&idu dan menukarkann"a dengan indi&idu "ang #ain. Ada 1 ma*am *ara "aitu dengan Two Points dan Uniform. Pada Two Points Cross Over+ di i#ih se*ara a*ak 1 titik "ang akan disi#angkan. Indi&idu . > 00. C 001 003 C 003 Indi&idu 1 > 004 C 005 00- C 008 ,edangkan ada Uniform Cross Over ada enentuan ersentase gen "ang akan disi#angkan misa#kan 40=+ angka ini nantin"a er#u masukkan dari user. Indi&idu . > 00. 001 C 003 003 Indi&idu 1 > 004 005 C 00- 008 ,ete#ah disi#angkan+ akan di#akukan masing-masing indi&idu+ a akah ter!adi enge*ekan terhada engu#angan. Kedua en"usunan !ad)a# raktikum ini+ "ang untuk men!adi indi&idu ada#ah satu urutan en"usunan !ad)a# raktikum+ raktikum "ang dibuka dan sia

indi&idu "ang te#ah disi#angkan ini di erbaiki+ sehingga tidak ada engu#angan #agi. Garis besarn"a ada#ah setia angka "ang diu#ang ditukar dengan asangann"a+ "aitu angka "ang diu#ang di kromosom asangann"a. Dasi# untuk Two Points Cross Over7

Universitas Kristen Petra

.3

Indi&idu . > 00. 005 00- 003 Indi&idu 1 > 004 001 003 008 Dasi# untuk Uniform Cross Over7 Indi&idu . >00. 001 00- 008 Indi&idu 1 > 004 005 003 003 Po u#asi baru "ang dihasi#kan ini akan dibandingkan dengan o u#asi terbaik "ang te#ah ada dan bi#a o u#asi terbaru #ebih baik ni#ai fitness cost-n"a maka o u#asi ini akan mengantikan o u#asi terbaik "ang ernah ada.

Taha :utasi $Mutation% 'ara #ain untuk menda atkan indi&idu "ang baru "aitu dengan mutasi. Probabi#itas ter!adin"a mutasi gen kromosom sangat#ah ke*i#+ karena itu da#am a#goritma genetika+ ada suatu ada enera ann"a

robabi#itasn"a seringka#i dibuat ke*i#+ #ebih cross over,

ke*i# dari E $mutation rate%. 2erbeda dengan taha

dimana satu indi&idu er#u indi&idu "ang #ain+ ada taha ini tidak membutuhkan indi&idu "ang #ain untuk bermutasi. (a#am kasus ini dimungkinkan ter!adi 1 ma*am mutasi dimana robabi#itas ter!adin"a mutasi akan ditentukan user. :utasi ertama "ang mungkin ter!adi ada#ah erubahan urutan ke#as raktikum. Da# ini di#akukan se*ara a*ak+ diambi# 1 angka $nomor ke#as raktikum% dari satu indi&idu+ kemudian ditukar. 'ontoh7 Asa#7 00. 001 003 003 Dasi#7 003 001 00. 003

Peru#angan Taha ,atu o u#asi baru te#ah terbentuk dengan se#esain"a mutasi. Po u#asi baru tersebut akan men!adi o u#asi a)a# bagi generasi

Universitas Kristen Petra

.4

se#an!utn"a dan a#goritma genetika akan mengu#ang taha 1 sam ai 3 se*ara terus menerus sam ai se!um#ah generasi "ang te#ah ditentukan.

3.1.2 Entity Relationship Diagram (ERD) Entity elationshi! "iagram $ER(% ada#ah diagram "ang di akai untuk mendokumentasikan data dengan mengidenti/ikasikan !enis entitas dan hubungann"a. ER( meru akan era#atan embuatan mode# data "ang a#ing /#eksibe# dan da at diada tasi untuk berbagai mungkin diikuti erusahaan da#am endekatan "ang engembangan sistem. ER( ini

menggambarkan re#asi atau hubungan antar entitas "ang ada+ dimana terda at 1 !enis hubungan+ "aitu7 a. O#ligatory7 bi#a semua anggota dari suatu entity harus ber artisi asi atau memi#iki hubungan dengan entity "ang #ain. b. $on-o#ligatory7 bi#a tidak semua anggota dari suatu entity harus ber artisi asi atau memi#iki hubungan dengan entity "ang #ain. (a#am menggambar ER(+ ada bebera a kom onen "ang di erhatikan+ "aitu7 a% Entity Entity dide/inisikan sebagai sesuatu "ang mudah diidenti/ikasikan. ,ebuah entity da at beru a ob"ek+ tem at+ orang+ konse atau akti&itas. Pada teknik enggambaran+ entity digambarkan dengan kotak segiem at. ,etia kotak diberi la#el beru a kata benda. ,imbo# entity da at di#ihat ada Gambar 3...
Entity

er#u

Gambar 3... Entity b. Atribut

Universitas Kristen Petra

.5

Identi/ikasi dan deskri si dari entity di!e#askan o#eh atribut-atributn"a $karakteristik entity%. ,ebuah atribut dide/inisikan sebagai en!e#asanen!e#asan dari entity "ang membedakann"a dengan entity "ang #ain. ,e#ain itu+ atribut !uga meru akan si/at-si/at dari sebuah entity. ,ebagai *ontoh+ entity Proficiency mem un"ai atribut I(Pro/i*ien*"+ Name+ dan atribut #ainn"a. 'ontoh atribut da at di#ihat ada Gambar 3.1.
Proficiency
IDProficiency Name Date Time

Gambar 3.1. Atribut *. Re#asi Re#asi ada#ah enghubung antara suatu entity dengan entity "ang #ain dan meru akan bagian "ang sangat enting da#am mendesain &ata#ase. ,imbo# re#asi da at di#ihat ada Gambar 3.3.

Gambar 3.3. Re#asi Ada tiga ma*am re#asi+ antara #ain7 a% One'to'One Pada bentuk re#asi One'to'One+ satu anggota entity memi#iki hubungan dengan satu anggota entity ada ke#as "ang berbeda. ,imbo# re#asi One'to'One da at di#ihat ada Gambar 3.3.
Entitas 1
Memiliki

Entitas 2

Gambar 3.3. Re#asi One to One #% One'to'Many

Universitas Kristen Petra

.-

Pada bentuk re#asi One'to'Many+ satu anggota entity bisa memi#iki hubungan dengan bebera a anggota entity ada ke#as "ang berbeda. ,ama ha#n"a dengan One'to'One+ ada re#asi "ang satu ini !uga terbagi ke da#am 1 !enis hubungan+ "aitu7 o#ligatory dan nono#ligatory. ,imbo# re#asi One'to'Many da at di#ihat ada Gambar 3.4.
Entitas 1
Memiliki

Entitas 2

Gambar 3.4. Re#asi One to Many *. Many'to'Many Pada bentuk re#asi Many'to'Many+ bebera a anggota entity da at memi#iki hubungan dengan bebera a anggota entity #ainn"a. (a#am re#asi ini !uga terda at dua !enis hubungan+ "aitu7 o#ligatory dan non-o#ligatory. ,imbo# re#asi :an"-to'Many da at di#ihat Gambar 3.5.
Entitas 1
Memiliki

ada

Entitas 2

Gambar 3.5. Re#asi Many to Many

,ebagai *ontoh+ hubungan antara dosen dengan mata ku#iah "ang dia!arkann"a. :aka bentuk diagram ada#ah sebagai berikut 7

Gambar 3.-. 'ontoh ER( Pada gambar diatas+ (osen dan :ata Ku#iah meeru akan entitas. ,edangkan :enga!ar meru akan re#asi antara (osen dan :ata Ku#iah. (ari

Universitas Kristen Petra

.8

*ontoh ini da at ter!adi bebera a re#asi dengan kondisi-kondisi tertentu sebagai berikut 7 .. ,eorang dosen han"a da at menga!ar satu mata ku#iah dan satu mata ku#iah han"a da at dia!ar o#eh seorang dosen sa!a. Re#asi dengan kondisi se erti ini dinamakan re#asi One'to'One $. 7 .%. 1. ,eorang dosen da at menga!ar #ebih dari satu mata ku#iah dan satu mata ku#iah han"a da at dia!ar o#eh seorang dosen sa!a. Re#asi dengan kondisi se erti ini dinamakan re#asi One'to'Many $. 7 n%. 3. ,eorang dosen han"a da at menga!ar satu mata ku#iah dan satu mata ku#iah da at dia!ar #ebih dari satu orang dosen. Re#asi dengan kondisi se erti ini dinamakan re#asi Many'to'One $n 7 .%. 3. ,eorang dosen da at menga!ar #ebih dari satu mata ku#iah dan satu mata ku#iah da at dia!ar #ebih dari satu orang dosen sa!a. Re#asi dengan kondisi se erti ini dinamakan re#asi Many'to'Many $m 7 n%.

3.1.3 Hyper Text Markup Language ( TM!) DT:L ada#ah standar bahasa "ang digunakan untuk mengatur enam i#an dari ha#aman we#. DT:L tersusun atas asangan- asangan tag "ang mem un"ai /ungsi "ang berbeda-beda. 'iri dari tag ada DT:L ada#ah dia)a#i dengan tanda kurang dari FGH dan diakhiri o#eh tanda #ebih dari FIH se erti FGheadIH. Pada DT:L ada 1 ma*am tag "aitu tag embuka FGJIH dan tag enutu FGKJIH. ,ebuah ha#aman DT:L dibagi men!adi 1 bagian "aitu hea&er dan content "ang masing-masing di)aki#i o#eh asangan tag FGheadIJGKheadIH dan FGbod"IJGKbod"IH. (ea&er ada DT:L ber/ungsi untuk men"am aikan !udu# "ang di)aki#i o#eh tag FGtit#eIJGKtit#eIH. Content tam i#an suatu ha#aman DT:L. o ?ormat Teks ada DT:L berisi scri!t "ang mengatur

Universitas Kristen Petra

.<

Tam i#an dari teks ada suatu ha#aman DT:L diatur o#eh tag FG/ontIJGK/ontIF. 2erikut ini ada#ah e#emen dari tag FG/ontIF "ang biasa digunakan 7 color untuk mengatur )arna face untuk mengatur font "ang akan digunakan si)e untuk mengatur ukuran font style untuk mengatur *etak teba#+ *etak miring E#emen face da at diatur hingga maksimum 3 ma*am font "ang berbeda dengan ketentuan font ertama akan digunakan+ kemudian a abi#a tidak tersedia maka akan di*oba menggunakan font kedua sam ai font ketiga "ang akhirn"a akan diatur untuk menggunakan font &efault dari )indo)s a abi#a semua font tidak tersedia. E#emen style tertentu da at !uga digantikan o#eh asangan tag tertentu se erti *etak teba# "ang digantikan o#eh FGstrongIJ GKstrongIF+ *etak miring "ang digantikan o#eh FGemIJGKemIF+ dan sebagain"a. enam i#an font+ se erti garis ba)ah+

o *in+ *in+ ada#ah suatu *ara untuk mere/erensikan sebuah tu#isan atau gambar ada sebuah ha#aman DT:L dengan ha#aman DT:L "ang #ain. *in+ ada DT:L ditandai o#eh sebuah anchor atau tag FGaIJGKaIF beserta e#emen. 'ontoh enggunaan dari anchor sebagai #ink ada#ah sebagai berikut Ga hre/>Hinde;.htm#HIinde;GKaI. Kata in&e, "ang dia it o#eh tag ada#ah kata "ang akan ditam i#kan ada we# #rowser.

o Tabe#

Universitas Kristen Petra

10

Tabe# da at ber/ungsi untuk mengontro# tam i#an dari sebuah DT:L agar #ebih ra i dan terstruktur. Tag "ang ada umumn"a digunakan untuk membuat tabe# ada#ah sebagai berikut7 Tag Gtab#eI+ untuk memu#ai sebuah tabe#. Tag GtrI+ untuk membuat sebuah baris da#am tabe#. Tag GtdI+ untuk membuat sebuah ko#om da#am tabe#. Tag-tag tersebut diatas harus dirangkaikan sedemikian ru a untuk membentuk sebuah tabe#+ !adi masing-masing tag tidak da at berdiri sendiri. o Form Form ada#ah kom onen dari DT:L "ang ber/ungsi untuk menam ung &ariabe#-&ariabe# dari suatu ha#aman we# "ang ni#ain"a di#etakan ada suatu te,t fiel&+ ra&io #utton+ dan kom onen "ang #ain agar da at dia#ihkan ke ha#aman DT:L se#an!utn"a. 2erikut ini ada#ah *ontoh dari form7
<form action=url method=get|post

E#emen action berisi a#amat DT:L "ang akan digunakan untuk me#aksanakan form. 2i#a tidak ada a#amat "ang disebutkan+ maka #ase 9RL dari dokumen "ang sedang akti/ "ang digunakan. E#emen metho& menun!ukkan bagaimana data form dikirim ke server. Get C Post da at beru a sa#ah satu value berikut7 GET POS T o -n!ut -n!ut ada#ah suatu &ariabe# untuk menetukan !enis in ut "ang di#akukan ada ha#aman DT:L+ a akah beru a te,t fiel&+ te,t area atau media in!ut #ainn"a. 2erikut ini ada#ah *ontoh dari in!ut 7
<input type=type ma!length=length name=name si"e=size src=address #alue=value

7 (ata dari sebuah form akan dikirim me#a#ui a#amat 9RL. 7 (ata dari sebuah form akan dikirim me#a#ui hea&er dari file DT:L tersebut $tidak ter#ihat%.

Universitas Kristen Petra

1.

E#emen ma,length menun!ukkan bera a !um#ah karakter maksimum "ang da at dimasukkan da#am sebuah kontro# "ang berti e te,t. E#emen name mende/inisikan nama dari in!ut% E#emen si)e mende/inisikan ukuran dari kontro# $da#am karakter%. 9ntuk kontro# ti e te,tarea+ baik tinggi mau un #ebar da at disesuaikan dengan /ormat7 F)idth+ heightH. E#emen src digunakan untuk mende/inisikan a#amat image "ang akan digunakan+ ketika e#emen ty!e berni#ai image. E#emen t" e mende/inisikan ti e kontro# "ang digunakan. Ti en"a da at beru a satu dari value berikut7 chec+#o, 7 digunakan untuk atribut .oolean sederhana atau atribut-atribut "ang da at mengambi# multi!le value ada )aktu "ang sama+ ditandai dengan bebera a chec+ #o, fiel& "ang mem un"ai hi&&en image 7 7 nama "ang sama. tidak ada fiel& "ang ditam i#kan ada user teta i isi fiel& dikirim bersama form. sebuah fiel& image "ang da at di-k#ik "ang da at men"ebabkan form terkirim dengan te,t !asswor& 7 7 segera. digunakan untuk fiel& te,t'entry satu baris. sama dengan atribut te,t+ ke*ua#i bah)a teks tidak ditam i#kan saat emakai ra&io 7 memasukkann"a. digunakan untuk menerima single value dari serangkaian a#ternati/. ,etia ra&io #utton fiel& da#am satu gru harus diberi nama "ang sama. Dan"a ra&io #utton "ang di i#ih da#am gru menghasi#kan nama ada data "ang dikirim. a&io #utton memer#ukan sebuah atribut value reset 7 "ang eks #isit. sebuah tombo# "ang a abi#a di-k#ik me-reset fiel&'fiel& form ada value a)a#n"a "ang

Universitas Kristen Petra

11

su#mit

s esi/ik. sebuah tombo# "ang bi#a di-k#ik akan mengirimkan form e#emen value digunakan untuk kontro# te,tualKnumerical+ men!e#askan &efault value dari kontro#.

9ntuk kontro#-kontro# .oolean+ men!e#askan value "ang akan kemba#i bi#a kontro# din"a#akan. 3.1." Hypertext Preprocessor (P P) PDP meru akan bahasa emrograman we#'server'si&e+ scri!t "ang membuat dokumen DT:L se*ara on the fly+ "aitu dokumen DT:L "ang dihasi#kan han"a ada saat diakses o#eh user. ,ehingga suatu ha#aman enger!aan scri!t tersebut diker!akan di server roses dari scri!t DT:L tidak #agi bersi/at statis+ namun men!adi bersi/at dinamis. ,i/at server'si&e ini membuat sedangkan "ang dikirim ke ada #rowser ada#ah hasi# scri!ting maka PDP da at me#akukan

tersebut sudah berbentuk DT:L. Karena PDP meru akan server'si&e engum u#an form data+ mengenerate &ynamic !age content atau mengirim dan menerima coo+ies+ dan !uga ban"ak /ungsi "ang #ain. 9ntuk da at men!a#ankan /ungsi sebagai server'si&e scri!ting maka dibutuhkan PDP !arser, we#server+ dan we##rowser. /e##rowser er#u di!a#ankan dan digabungkan dengan insta#asi PDP. 9ntuk mengakses PDP+ da at digunakan we# #rowser "ang da at me#ihat hasi# dari scri!t PDP. Keunggu#an dari PDP dengan si/at server'si&e ada#ah7 Tidak di er#ukan adan"a kom atibi#itas #rowser atau harus menggunakan #rowser tertentu+ karena server "ang menger!akan scri!t tersebut. Dasi# "ang dikirimkan kemba#i ke #rowser biasan"a da#am bentuk format DT:L+ "ang berisi teks atau un gambar sehingga da at dikena#i o#eh #rowser a a un.

Universitas Kristen Petra

13

(a at meman/aatkan sumber-sumber a #ikasi "ang dimi#iki o#eh server+ *ontoh 7 hubungan ke da#am &ata#ase. Scri!t as#i tidak da at di#ihat o#eh #rowser sehingga keamanan #ebih ter!amin. PDP ada#ah sebuah roduk o!en source+ sehingga source co&e PDP

da at digunakan+ diubah. Keunggu#an PDP se#ain si/atn"a "ang o!en source ada#ah multi !latform se#ain da at di!a#ankan ada !latform *inu,, PDP !uga da at di!a#ankan dengan menggunakan A!ache+ dengan II, ada Lindo) NT atau P/S ada Lindo)s <8.
.

PDP dibuat ada tahun .<<3 o#eh Rasmus Lerdor/. Teta i kemudian

dikembangkan o#eh orang #ain dan sete#ah me#a#ui tiga ka#i kar"a enu#isan akhirn"a PDP men!adi bahasa emrograman we# se erti sekarang ini. Pada bu#an Januari 100. PDP sudah kurang #ebih digunakan #ebih dari 4 !uta &omain dan terus berkembang hingga saat ini. Jum#ahn"a hingga saat ini da at di#ihat ada htt 7KK))). h .netKusage. h . 3.1.# M$%&! :",ML ada#ah sebuah a #ikasi elational "ata#ase Management emakai se*ara Server $R(2:,% "ang sangat *e at dan kokoh. (engan menggunakan :",ML ,er&er maka data da at diakses o#eh ban"ak bersamaan seka#igus da at membatasi akses ara emakai berdasarkan

!rivilege $hak akses% "ang diberikan. :",ML menggunakan bahasa ,ML $Structure& 0uery *anguage% "aitu bahasa standar "ang digunakan untuk emrograman &ata#ase. :",ML di ub#ikasikan se!ak .<<5+ teta i sebenarn"a dikembangkan se!ak .<-<. :",ML te#ah memenangkan enghargaan Linu; Journa# ReaderNs 'hoi*e A)ard se#ama tiga tahun. :",ML sekarang tersedia diba)ah iOin o!en source+ teta i !uga ada iOin untuk enggunaan se*ara komersia#. Keunggu#an dari :",ML ada#ah7 o 2ersi/at o!en source.

(okumentasi PDP+ htt 7KK))). h .netKdo*s. h Universitas Kristen Petra

13

o ,istem "ang digunakan o#eh erangkat #unak ini tidak memberatkan ker!a dari server+ karena da at beker!a di #ac+groun&. o :em un"ai koneksi "ang stabi# dan ke*e atan "ang tinggi.

3.1.'

Structured Query Language (%&!) Structure& 0uery *anguage $,ML% ada#ah bahasa "ang digunakan untuk berkomunikasi dengan &ata#ase. Perintah- erintah ,ML digunakan untuk me#akukan eker!aan- eker!aan tertentu ada &ata#ase se erti u!&ate data atau untuk mengambi# data dari &ata#ase. Pada subbab-subbab berikut ini akan di!e#askan mengenai erintah select, insert, u!&ate &an &elete ada ,ML. o Perintah Select Perintah select digunakan untuk mengambi# dan menam i#kan data dari &ata#ase sesuai dengan s"arat-s"arat "ang ditentukan. 2erikut ini ada#ah /ormat erintah select "ang umum digunakan7
$E%E&T *+,M column1 ta-lename '(column2(etc)

'./E+E condition)0 keterangan1 ') = optional

Column menun!ukkan nama ko#om dari tabe# "ang ingin diambi#. Column da at #ebih dari satu atau menggunakan FAH untuk mengambi# semua ko#om. Ta#lename menun!ukkan nama tabe# "ang ingin digunakan. K#ausa where men"aring data berdasarkan kondisi "ang ditu#iskan sete#ah kata where. O erator-o erator "ang digunakan da#am k#ausa where antara #ain da at di#ihat ada tabe# berikut7 Tabe# 3.3. O erator 9ntuk Perintah ,ML
Lambang Arti

Universitas Kristen Petra

14

= > < >= <= <> LIKE

Sama dengan Lebih besar dari Lebih kecil dari Lebih besar sama dengan Lebih kecil sama dengan Tidak sama dengan (dijelaskan di bawah ini)

O erator *-1E da at men"e#eksi data sesuai dengan string "ang diinginkan. ,imbo# F=H digunakan untuk men*o*okkan karakter "ang mun*u# sebe#um atau sesudah karakter "ang diinginkan. 'ontohn"a ada#ah sebagai berikut7
$E%E&T *+,M nama2depan( kota karya3an %45E 6$am760

./E+E nama2depan

Perintah ,ML di atas memi#iki out!ut semua nama de an "ang dia)a#i dengan F,amH. ,imbo# F=H da at u#a di#etakkan di de an atau di be#akang. ,e#ain se erti "ang di!abarkan di atas+ erintah select !uga memi#iki /ormat #ain "ang #ebih #engka "ang mendukung /ungsi agregasi+ "aitu7
$E%E&T '8%% | D4$T4N&T) column1'(column2) *+,M ta-le1'(ta-le2) './E+E 9conditions9) ':+,;P <= 9column>list9) '/8?4N: 9conditions) ',+DE+ <= 9column>list9 '8$& | DE$&) )

Tabe# 3.3. ?ungsi Agregasi


Nama Fungsi SUM( ) AVG( ) MAX( ) MIN( ) !UN"( ) Kegunaan Untuk menghitung jumlah nilai pada suatu kolom Untuk menghitung nilai rata-rata pada suatu kolom Untuk mencari nilai maksimum pada suatu kolom Untuk mencari nilai minimal pada suatu kolom Untuk menghitung jumlah #aris pada suatu kolom

Ke")ord A** digunakan untuk mengambi# semua data sedangkan "-ST-$CT digunakan untuk mengambi# data "ang unik dimana baris "ang sama akan di!adikan satu baris sa!a.

Universitas Kristen Petra

15

o K#ausa Grou! .y K#ausa grou! #y akan mengum u#kan baris data dari tabe# sesuai dengan ko#om "ang dis esi/ikasikan dan mem erkenankan ada#ah /ungsi agregasi ada satu atau #ebih ko#om. 9ntuk #ebih !e#as da at di#ihat ada *ontoh berikut7
$E%E&T M8@AgaBiC( departemen *+,M karya3an :+,;P <= departemen0

0uery ini akan mengambi# dan menam i#kan ga!i maksimum dari kar"a)an dari tia de artemen dan dike#om okkan berdasarkan nama de artemenn"a. o K#ausa (aving K#ausa having da at mens esi/ikasikan kondisi dari baris untuk tia grou!+ dengan kata #ain tia baris akan diambi# berdasarkan kondisi "ang dis esi/ikasikan. Jika menggunakan k#ausa having harus diikuti dengan k#ausa grou! #y. 'ontoh enggunaan dari k#ausa having ada#ah sebagai berikut7
$E%E&T departemen( a#gAgaBiC *+,M karya3an :+,;P <= departemen /8?4N: a#gAgaBiC 2DDDD0

Pada 2uery di atas !ika kar"a)an ada tia

ada 2uery tersebut han"a

menggunakan grou! #y sa!a maka akan mengambi# rata-rata ga!i de artemen. Teta i bi#a ditambahkan dengan k#ausa having maka da at dis esi/ikasikan rata-rata ga!i "ang diambi# ada#ah "ang berni#ai #ebih dari 10000. o K#ausa Or&er .y K#ausa or&er #y meru akan k#ausa o!tional "ang digunakan !ika kita ingin menam i#kan hasi# dari 2uery se*ara urut+ baik urut se*ara ascen&ing $ASC% mau un se*ara &escen&ing $"ESC%+ sesuai dengan ko#om "ang dis esi/ikasikan ada or&er #y. 'ontoh

Universitas Kristen Petra

1-

enggunaann"a !ika diinginkan hasi# urut data kar"a)an berdasarkan umurn"a se*ara ascen&ing ada#ah sebagai berikut7
$E%E&T kode2karya3an( nama2depan( umur( gaBi *+,M karya3an ./E+E departemen = EPenBualanF ,+DE+ <= umur 8$&0

2i#a ingin mengurutkan berdasarkan dua atau #ebih ko#om+ maka harus di isahkan dengan tanda koma+ se erti di!abarkan di ba)ah ini7
$E%E&T kode2karya3an( nama2depan( umur( gaBi *+,M karya3an ./E+E departemen = EPenBualanF ,+DE+ <= umur( gaBi DE$&0

0uery di atas akan mengurutkan hasi# 2uery berdasarkan umur+ baru kemudian mengurutkan berdasarkan ga!i se*ara &escen&ing. o 3oin Ta#le (a#am ken"ataann"a+ 2uery tidak han"a dari satu tabe# sa!a+ mungkin dua atau #ebih. 9ntuk itu di er#ukan 4oin ta#le untuk menggabungkan dua atau #ebih tabe# "ang bere#asi da#am suatu &ata#ase relational. (engan 4oin ta#le maka han"a dengan satu 2uery "ang menggunakan erintah select da at menggabungkan data dari dua atau #ebih tabe# ke da#am satu hasi# 2uery. Antar dua tabe# "ang bere#asi asti terda at satu ko#om "ang sama. Ko#om ini#ah "ang digunakan untuk menggabungkan dua tabe# tersebut. 'aran"a ada#ah sebagai berikut7
$E%E&T konsumenGnama2depan( penBualanGno2faktur *+,M konsumen( penBualan ./E+E konsumenGkode2konsumen=penBualanGkode2konsumen0

3oin ta#le di atas meru akan inner 4oin dimana akan menghasi#kan semua nama de an dari konsumen $"ang diambi# dari tabe# konsumen% dan nomor /aktur en!ua#an $"ang diambi# dari tabe#

Universitas Kristen Petra

18

en!ua#an% dari semua baris dimana kode konsumen di tabe# konsumen sama dengan kode konsumen di tabe# en!ua#an. o Perintah -nsert Perintah insert digunakan untuk memasukkan atau menambah baris data ke da#am sebuah tabe#. ?ormat erintah insert ada#ah sebagai berikut7
4N$E+T 4NT, ta-lename Afirst2column( H( last2columnC ?8%;E$ Afirst2#alue( H( last #alueC0

enu#isan

Parameter sete#ah ta#lename ada#ah da/tar ko#om-ko#om "ang di isahkan dengan koma+ diikuti dengan kata values #a#u diikuti #agi dengan da/tar ni#ai "ang urutann"a sesuai dengan da/tar ko#om sebe#um kata values. 9ntuk ni#ai "ang berni#ai string harus dia it dengan tanda etik satu sedangkan untuk "ang berni#ai integer tidak. 'ontohn"a ada#ah sebagai berikut7
4N$E+T 4NT, karya3an Anama2depan( nama2-elakang( umur( kotaC E$ura-ayaFC0 ?8%;E$ AE$amF( E8liF( 21(

0uery di atas akan menambahkan baris baru kar"a)an dengan fiel& namaPde an berni#ai

ada tabe# fiel&

F,amH+

namaPbe#akang berni#ai FA#iH+ fiel& umur berni#ai 1. dan fiel& kota berni#ai F,uraba"aH. o Perintah U!&ate Perintah u!&ate digunakan untuk mengubah data "ang sudah ada berdasarkan kondisi tertentu "ang di!abarkan o#eh +eywor& where. ?ormat erintah #engka n"a ada#ah sebagai berikut7
;PD8TE ta-lename $ET columnname =ne3#alue'(ne!tcolumn = ne3#alue2GG) ./E+E columnname <,PE+8T,+ 'and|or column9 <,PE+8T,+ keterangan 1 ') = optional #alue 9#alue9)0

'ontoh enggunaan 7

Universitas Kristen Petra

1<

;PD8TE karya3an $ET umur = 1I ./E+E nama2depan = E$amF0

o Perintah "elete Perintah de#ete digunakan untuk mengha us baris dari suatu tabe#. ?ormatn"a ada#ah sebagai berikut7
DE%ETE *+,M ta-lename ./E+E columnname <,PE+8T,+ <operator #alue) keterangan1 ') = optional #alue 'and|or column

'ontoh enggunaann"a ada#ah se erti di ba)ah ini7


DE%ETE *+,M karya3an ./E+E nama2depan = E$amF0

'ontoh di atas akan mengha us baris dari tabe# Fkar"a)anH "ang /ie#d FnamaPde anH-n"a berni#ai FA#iH. 9ntuk mengha us se#uruh baris dari suatu tabe#+ kosongkan k#ausa where. 3.1.( Koneksi P P dan M$%&! 9ntuk menghubungkan bahasa emrograman PDP dengan :",ML dibutuhkan bebera a erintah- erintah khusus+ "ang terdiri dari7 Pembuatan koneksi antara server dari :",ML dengan we# server tem at men"im an ha#aman we#. (engan erintah 7
<J Kconn = mysLl2connectAMnama ser#er My$N%O(login(pass3ordC0 J

Q*onn ada#ah &ariabe# bebas "ang digunakan untuk men"im an koneksi antara PDP dan :",ML. ,ete#ah terbentuk koneksi maka se#an!utn"a di#akukan emi#ihan &ata#ase "ang akan digunakan dengan erintah 7
<J Kconn = mysLl2select2d-AMnama data-aseOC0 J

2aru#ah kemudian da at di#akukan erintah- erintah ,ML "ang #ain se erti select, u!&ate, &elete, insert+ dan erintah- erintah #ainn"a.
<J Kresult = mysLl2LueryAMperintah LueryO(KconnC0 J

Universitas Kristen Petra

30

Qresu#t ada#ah &ariabe# bebas "ang digunakan untuk men"im an hasi# dari 2uery. 9ntuk select 2uery di#akukan erintah7
<J Kro3 = mysLl2fetch2ro3AKresultC0 J

roses

engambi#an data dengan

,ete#ah se#esai me#akukan mani u#asi data maka koneksi PDP dan :",ML ditutu dengan menggunakan erintah 7
<J mysLl2closeAKconnC0 J

Universitas Kristen Petra

Anda mungkin juga menyukai