Modul Web Programming dengan PHP dan MySQL

91
MODUL PRATIKUM PEMROGRAMAN APLIKASI WEB DENGAN PHP DAN MYSQL OLEH : EDI ISMANTO, S.T, M.KOM LABORATORIUM KOMPUTER PROGRAM STUDI PENDIDIKAN INFORMATIKA UNIVERSITAS MUHAMMADIYAH RIAU

Transcript of Modul Web Programming dengan PHP dan MySQL

Page 1: Modul Web Programming dengan PHP dan MySQL

MODUL PRATIKUMPEMROGRAMAN APLIKASI WEB DENGAN PHP DAN MYSQL

OLEH :

EDI ISMANTO, S.T, M.KOM

LABORATORIUM KOMPUTERPROGRAM STUDI PENDIDIKAN INFORMATIKA

UNIVERSITAS MUHAMMADIYAH RIAU

Page 2: Modul Web Programming dengan PHP dan MySQL

ii

Kata Pengantar

Modul Pemrograman PHP ini adalah sebuah modul yang berisikan tutorial dasar-

dasar pemrograman web menggunakan bahasa pemrograman PHP. Seperti yang

telah diketahui PHP saat ini merupakan bahasa pemrograman untuk web yang

terpopuler. Facebook, Yahoo, Digg dan masih banyak website populer lainnya

menggunakan PHP. Belum lagi jumlah CMS yang bebasiskan PHP beberapa yang

terpopuler diantaranya: Joomla, Wordpress, Drupal, ModxCMS, dan masih banyak

lagi. Dengan menguasasi PHP sudah dapat dibayangkan bukan banyak kelebihan

yang akan anda dapat.

Pada modul ini saya coba untuk menjelaskan secara step-by-step bagaimana

membuat sebuah halaman website yang lengkap dengan mengetahui terlebih

dahulu dasar-dasar web. Hal tersebut meliputi dasar-dasar WWW, HTML, CSS

dan pengetahuan dasar tentang website yang menurut saya perlu diketahui. Baru

setelah itu saya masuk ke bahasan utama yaitu PHP. Pada akhir modul ini saya

sertakan beberapa contoh aplikasi sederhana yang mungkin akan sangat membantu

pemahaman pembaca mengenai pemrograman PHP.

Semoga modul ini dapat berguna bagi semua pembaca. Kritik dan saran untuk

modul ini dapat disampaikan pada email saya di [email protected] Terima

Kasih.

Pekanbaru, November 2015

Penulis

Edi Ismanto

Page 3: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

iii

Daftar IsiKATA PENGANTAR................................................................................................ii

DAFTAR ISI......................................................................................................... iii

PENDAHULUAN...................................................................................................1

BAB I : HTML,CSS, DAN JAVASCRIPT................................................................. 4

BAB II : PENGENALAN PHP .................................................................................. 36

BAB III : STRUKTUR KONTROL PADA PHP ................................................... 48

BAB IV : FILE DAN ARRAY PADA PHP ............................................................. 62

BAB V : KONEKSI KE DATABASE MYSQL...................................................... 81

Page 4: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

1

Pendahuluan

A. Instalasi pada Windows

Instalasi software dan konfigurasi saya lakukan pada sistem operasi Windows 7.

Bagi anda yang menggunakan Windows versi lain silahkan menyesuaikan.

Software-software yang akan kita gunakan diantaranya:

• XAMPP for Windows

• Text Editor (Notepad++)

• Web Browser (Firefox, Opera, Chrome, atau yang lain)

1. Instalasi XAMPP for Windows

Download file XAMPP for Windows dari situs http://www.apachefriends.org/.

Asumsi yang saya berikan adalah:

• File xampp-win32-x.y.z.exe (x.y.z versi xampp)

• XAMPP yang anda download adalah XAMPP versi installer.

• Target instalasi adalah C:\xampp

Langkah-langkahnya:

1. Double klik file xampp-win32-x.y.z.exe

2. Pada pilihan bahasa pilih saja English lalu OK

3. Pada Destination Folder pilih saja defaultnya yaitu c:\xampp

4. Klik Next > Install

5. Setelah selesai coba jalankan XAMPP Control panel melalui Start →

Programs → Apache Friends → XAMPP → XAMPP Control Panel

6. Klik tombol “Start” disebelah kanan Apache

7. Coba buka browser anda pada alamat http://localhost/ jika semuanya OK

maka akan muncul tampilan XAMPP for Windows

Page 5: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

2

B. Konvensi Letak Direktori

Pada modul ini anda akan sering menemui perintah untuk menyimpan file ke suatu

direktori. Maka pada modul dibuat konvensi sebagai berikut.

Jika disebutkan alamat direktori sebagai berikut

htdocs/ maka:

berarti: c:\xampp\htdocs\

Modul ini terdiri dari lima bab, untuk itu saya menyarankan untuk membuat direktori

baru bernama webpro didalam htdocs/. Setelah itu berturut-turut buatlah direktori

dengan nama bab1, bab2, bab3, bab4, dan bab5. Sehingga struktur direktori akhir

akan terlihat seperti tabel dibawah.

WindowsC:\xampp\htdocs\webpro\bab1

C:\xampp\htdocs\webpro\bab2

C:\xampp\htdocs\webpro\bab3

C:\xampp\htdocs\webpro\bab4

C:\xampp\htdocs\webpro\bab5

Jadi setiap project yang anda kerjakan pada modul ini simpan sesuai dengan babnya

masing-masing untuk lebih mempermudah organisasi.

Mungkin anda bingung dengan perbedaan istilah direktori dan folder. Anggap saja itu

sama, tidak usah dipusingkan. Folder ya direktori, direktori ya folder.

Page 6: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

3

Halaman ini sengaja dikosongkan

Page 7: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

4

BAB IHTML, CSS, DAN JAVASCRIPT

1.1 Cara Kerja WWW

Ketika kita mengunjungi sebuah situs katakanlah, google.com, ada sebuah proses

“dibalik layar” yang tidak anda ketahui. Proses tersebut cukup kompleks

namun, jika digambarkan dalam sebuah diagram sederhana kurang lebih akan

seperti berikut:

Gambar 1.1: Cara kerja WWW

Secara kronologis urutan proses pada diagram diatas adalah:

1. User membuka alamat website pada browser

2. Browser mengirim HTTP-Request ke server

3. Server merespon HTTP-Request dari browser

4. Server mengirim HTTP-Response ke browser

5. Browser menampilkan halaman website kepada user

1.2 HTML

HTML (HyperText Markup Language ) / XHTML (Extensible HyperText

Markup Language) merupakan format tampilan yang digunakan untuk

menampilkan halaman website. HTML terdiri dari simbol-simbol tertentu

yang sering disebut dengan tag. Sebuah halaman website yang valid selalu

Page 8: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

5

diapit tag <html></html>. File HTML umumnya memiliki akhiran *.htm atau

*.html.

Tag-tag pada HTML selalu diawali dengan <x>...</x>, dimana x tag HTML

seperti <strong>, <p>, <div>, dan lain-lain. Dibawah ini adalah tabel beberapa

tag HTML yang sering digunakan.

Tag HTML Keterangan<html></html> Tag untuk mengapit halaman HTML<head></head> Tag yang berisi informasi umum dari halaman<title></title> Judul Halaman *<body></body> Akan ditampilkan di browser<style></style> Untuk CSS *<strong></strong> Untuk menebalkan teks<div></div> Untuk membuat layer<a></a> Untuk membuat hyperlink<p></p> Untuk membuat paragraf<hn></hn> Untuk membuat header **<span></span> Untuk inline style (manipulasi teks)<!-- --> Komentar

* Tag tersebut harus berada didalam tag <head>...</head>** n dapat berupa angka dari 1 – 5, contoh <h1>...</h1>

Penerapan Teori HTML

1. Buka editor anda Notepad++

2. Ketik kode berikut:

Page 9: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

6

3. Simpan dengan nama hello-world.html

4. Buka browser anda (Firefox, Chrome, dsb) dan buka file yang baru saja anda

buat.

5. Hasilnya akan seperti gambar 1.1

Gambar 1.1: hello-world.html

1.3 Manipulasi Font

Untuk memanipulasi font kita akan menggunakan inline style/CSS (akan dibahas

dibagian berikutnya). Kita tidak akan menggunakan tag <font> karena tag ini

sudah “kuno” alias deprecated. W3C sebagai pengembang HTML sudah tidak

menyarankan untuk menggunakan tag font lagi.

Sebagai gantinya digunakan tag <span> dan inline style. Inline style adalah

attribut style yang diberikan pada sebuah tag HTML. Contoh, untuk membuat

tampilan teks tebal gunakan cara berikut:

<span style=”font-weight:bold”>Aku adalah teks tebal</span>

Output:

Aku adalah teks tebal

Pada contoh diatas kita memberikan attribut style, yang berisi “font-weight:bold”.

Maksudnya adalah kita akan mengaplikasikan style bold pada teks yang diapit

oleh tag <span></span>.

Page 10: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

7

Pemberian style tidak hanya terbatas pada satu bagian saja. anda dapat

memberikan beberapa style sekaligus dengan memberi tanda pemisah berupa “;”

untuk setiap style.

<span style=”font-weight:bold; text-decoration:underline; font-style:italic”> Aku adalah teks tebal, bergaris bawah dan miring</span>

Output

Aku adalah teks tebal, bergaris bawah, dan miring

Pada contoh diatas kita menerapkan tiga style pada tag span. Dapat dilihat kalau

setiap style dipisahkan oleh titik koma. Intinya kita dapat memberikan banyak

style sekaligus pada suatu tag.

Penerapan Teori Manipulasi Teks

1. Buka Notepad++

2. Ketik kode HTML berikut ini

3. Simpan dengan nama manipulasi-teks.html

4. Buka dengan browser anda

5. Hasilnya akan seperti gambar 1.2

Attribut style tidak terbatas pada tag span saja, hampir semua tag yang digunakan untukpresentasi teks dapat kita sisipi tag style.

Page 11: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

8

Output

Gambar 1.2: Manipulasi font menggunakan atribut style

1.4 Hyperlink

Anda tentu sering melngklik gambar atau tulisan yang mengarah ke halaman

lain atau website lainnya. Yang anda klik itu adalah hyperlink atau lebih

dikenal dengan istilah link saja. Untuk membuat link kita dapat menggunakan

tag <a></a>. Dua attribut yang paling sering digunakan pada tag <a> adalah

href dan target. href digunakan untuk menentukan lokasi tujuan dari link.

Dapat berupa relatif URL atau absolut URL.

target digunakan untuk menentukan apakah halaman akan dibuka pada

jendela/window baru atau tidak. Defaultnya adalah self dimana link tidak

dibuka pada window baru. Jika ingin membuka pada window baru gunakan

nilai _blank.

Untuk lebih memahami cara kerja link, kita akan membuat dua file yaitu

profilku.html dan daftar-situs.html.

1. Buka Notepad++

2. Ketik kode berikut:

Page 12: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

9

3. Simpan dengan nama profilku.html

4. Buat file baru lagi, kemudian ketik kode berikut:

5. Simpan dilokasi yang sama dengan profilku.html dan beri nama daftar-

situs.html

6. Buka file profilku.html dengan browser anda, dan coba klik link yang ada

untuk memahami cara kerjanya

Gambar 1.3.Tampilan Halaman Profilku

Gambar 1.4.Tampilan Halaman Daftar Sistus

Page 13: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

10

1.5 Membuat Tabel

Untuk membuat tabel kita dapat menggunakan tag <table></table>. Dalam

beberapa tahun terakhir, penggunaan tabel sebagai layout website sudah

tidak relevan lagi, dan digantikan oleh tag DIV. Saat ini penggunaan tabel

dikhususkan hanya untuk menampilkan data secara tabular saja tidak untuk

design halaman.

Beberapa tag yang sering digunakan saat membuat tabel adalah:

Tag Keterangan<tr></tr> Digunakan untuk membuat baris baru<th></th>* Digunakan untuk membuat header tabel<td></td>* Digunakan untuk membuat kolom

* Tag tersebut selalu berada didalam tag <tr>...</tr>

Seperti halnya tag lain yang digunakan untuk presentasi teks, seperti

<span>, anda dapat menggunakan attribut style untuk memformat tampilan

tabel. Berikut ini adalah contoh pembuatan tabel menggunakan HTML.

1. Buka teks editor Notepad++

2. Ketik kode berikut:

Page 14: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

11

3. Simpan denan nama tabel.html

4. Buka dengan browser anda, hasilnya akan nampak seperti gambar 1.5

Gambar 1.5: Penggunaan Tabel

&gt; merupakan special character untuk tanda “>”. Dalam HTML special character diawali tandaampersand “&” dan diakhiri “;”. Contoh lain adalah &lt; untuk “<”,

&copy; untuk “©”

Page 15: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

12

1.6 HTML Form

HTML Form sering digunakan untuk meminta inputan dari user yang

kemudian diproses oleh server side scripting seperti PHP, JSP, dan

sebagainya. Form HTML diapit oleh tag <form></form>. Dua attribut yang

paling sering digunakan dalam penggunaan form adalah:

– Action: Nilai dari attribut ini menunjukkan lokasi dari file pemroses

dari form. Dapat berupa relatif URI (Uniform Resource Identifier),

contoh “folderX/file.php” atau absolut URI, contoh

“http://contoh.com/file.php”.

– Method: Nilai dari attribut menentukan metode data yang dikirimkan

ke file pemroses, apakah melalui metode “GET” atau “POST”.

Contoh penggunaan tag form sebagai berikut:

<form action=”file.php” method=”POST”>...</form>

Tag form tidak banyak berguna tanpa adanya tag input lain. Tag form

berfungsi hanya sebagai wrapper yang mengelompokkan data yang akan

dikirim. Tag yang digunakan bersama tag form adalah tag <input>.

1.6.1 Macam-macam input

Untuk menampilkan textbox, checkbox, radio button, dan lainnya hanya

diperlukan tag <input>. Yang membedakan output dari masing-masing

tampilan adalah nilai dari attribut type. Contoh berikut merupakan

penggunaan tag input untuk menampilkan textbox:

<input type=”text” size=”16” maxlength=”16”>

Berikut ini daftar nilai yang dapat digunakan pada attribut type:

Nilai type Keterangan

text Untuk menampilkan textbox

password Untuk menampilkan password field

Page 16: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

13

file Untuk menampilkan proses upload file (mirip seperti textboxnamun dengan tombol Browse)

checkbox Untuk menampilkan tombol checkbox (lebih dari satu pilihan)

radio Untuk menampilkan tombol radio/option (hanya satu pilihan)

submit Tombol untuk men-submit form (default button untuk submit)

button sama dengan submit hanya saja bukan default button

reset Untuk membersihkan tampilkan form

hidden Input tidak ditampilkan dibrowser.

Selain tag <input> masih ada tag lain yang biasa digunakan dalam form yaitu

tag <select> dan <textarea>.

PENERARAN TEORI HTML FORM

1. Buka Notedpad++

2. Ketik kode berikut:

3. Simpan dengan nama form.html

4. Buka dengan browser file tersebut.

Page 17: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

14

Hasilnya memang tidak begitu bagus karena kita tidak melakukan styling pada

form.

Gambar 1.6: Contoh HTML Form Sederhana

Dalam kasus real world nilai yang ada pada attribut name dan value-lah yang

akan dikirim ke file pemroses.

1.7 Menampilkan Gambar

Untuk menampilkan gambar pada halaman HTML dapat digunakan tag

<img>. Beberapa attribut yang sering digunakan adalah src, height, dan

width. Attribut src digunakan untuk menentukan alamat dari gambar yang

akan ditampilkan, dapat berupa relatif URI (Uniform Resource Identifier)

atau absolut URI. Attribut height digunakan untuk menentukan tinggi,

sedangkan width untuk menentukan lebar.

Secara default nilai yang ada pada height dan width adalah dalam pixel,

kecuali anda menambahkan tanda “%”. Maka lebar atau tinggi diukur

menggunakan persen. Jika anda tidak menyertakan attribut height dan width,

maka gambar tersebut akan ditampilkan sesuai dengan ukuran aslinya.

Untuk lebih memahaminya ikuti langkah berikut:

Page 18: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

15

1. Siapkan dua buah gambar dalam folder yang sama dengan file html

2. Dalam contoh ini saya menggunakan (1)honda.png dan (2)honda.jpg

3. Buka Notepad++

4. Ketik kode berikut:

5. Simpan dengan nama gambar.html

Gambar 1.7: Menampilkan gambar dengan img

1.8 XHTML dan DOCTYPE

Apakah XHTML itu? apakah ia berbeda dengan HTML? Sebenarnya XHTML

adalah HTML hanya saja XHTML mengikuti format XML sebagai standar

penulisannya. Jadi setiap tag harus memiliki penutup.

Anda tentu pernah mengetik tag-tag tanpa penutup seperti <br>, <img>, dan

<input> pada pembahasan sebelumnya. Pada XHTML semua tag harus

memiliki penutup, jika tidak maka halaman yang anda buat tidak sesuai

dengan standar yang telah ditentukan dan dianggap tidak valid/compliant

dengan standar W3C.

Page 19: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

16

Berikut ini adalah beberapa contoh penulisan yang valid di HTML tapi tidak

di XHTML.

SALAH BENAR<strong><span>Hello World</strong></span>

<strong><span>HelloWorld</span></strong>

<input type=”radio” checked> <input type=”radio”checked=”checked” />

<br> <br /> atau <br></br>

<img border=1> <img border=”1” />

<input type=”button” value=”GO >>>”> <input type=”button” value=”GO&gt;&gt;&gt;” />

<STRONG>Hello</strong> <strong>Hello</strong>

Mungkin anda bertanya, lalu bagaimana saya memberitahu browser bahwa

halaman saya adalah XHTML? Semua itu terletak pada DOCTYPE halaman

anda. DOCTYPE adalah pententu tipe document yang ingin anda gunakan

apakah HTML 4.01, XHTML 1.0 Transitional, XHTML 1.0 Strict dan

lainnya.

DOCTYPE juga sering disebut DTD (Document Type Definition). Berikut ini

adalah contoh penggunaan tipe dokumen HTML 4.01,

<!DOCTYPE HTML PUBLIC "-//W3C/DTD HTML 4.01//EN"

"http://www.w3c.org/TR/html4/strict.dtd">

Jika anda tidak menyebutkan DTD yang anda gunakan asumsi dari satu

browser dengan browser yang lain mungkin berbeda-beda. Jadi jika memang

anda ingin menggunakan HTML murni bukan XHTML gunakanlah DTD

4.01. Deklarasi DOCTYPE harus diletakkan paling awal sebelum tag

<html>.

Untuk XHTML beberapa DTD yang sering digunakan adalah

1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0Transitional//EN"

Page 20: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

17

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

Perbedaan Transitional dan Strict terdapat pada toleransi kesalahan. Pada

transitional jika masih ada kesalahan standar penulisan masih diberikan

toleransi, sedangkan Strict tidak memberikan toleransi sama sekali. Contoh

halaman XHTML yang valid adalah sebagai berikut:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/TR/xhtml1">

<head>

<title>Every document must have a title</title>

</head>

<body>

<span>Hello World</span>

</body>

</html>

Dalam pembahasan selanjutnya kita akan selalu menggunakan XHTML bukan

lagi HTML.

1.9 CSS (Cascading Style Sheets)

CSS merupakan suatu teknologi yang digunakan untuk mempermudah

pembuatan sebuah website. Dengan CSS kita dapat dengan cepat

mengaplikasikan suatu style pada tag tertentu. Bahkan kita dapat meletakkan

CSS pada suatu file sehingga dapat digunakan oleh banyak halaman sekaligus.

Itu merupakan salah satu kelebihan CSS. CSS diapit oleh tag <style></style>

dan berada diantara tag <head></head>. Kelebihan lainnya adalah anda dapat

menyisipkan komentar pada CSS, hal ini cukup penting jika jumlah CSS anda

sangat banyak. Komentar pada CSS diapit oleh karakter /*………*/.

Deklarasi versi XML pada awal halaman tidak harus ditulis namun sangat dianjurkanuntuk ditulis. Attribut “xmlns” harus ditulis untuk menentukan namespace yang

digunakan.

Page 21: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

18

Pada pembahasan-pembahasan sebelumnya kita sering menggunakan attribut

style untuk memformat tampilan atau sering disebut inline style. Apa yang

ada pada attribut style tersebut sebenarnya adalah CSS yang valid, hanya saja

letaknya didalam tag.

Hampir semua tag dapat dimanipulasi menggunakan CSS seperti <body>,

<span>, <div>, <table>, <p>, dan masih banyak lagi. Berikut ini adalah

contoh sederhana penggunaan CSS pada tag body.

body {font-face: Verdana; font-size: 11px }

Pada contoh diatas kita memformat semua teks yang ada pada tag body

menjadi berjenis huruf Verdana dengan ukuran 11 pixel. Tag body pada

contoh disebut selector sedangkan attribut style didalamnya disebut

declaration. Declaration ditandai dengan adanya kurung kurawal {...}.

PENERAPAN TEORI CSS

1. Buka Notepad++

2. Ketik kode berikut:

3. Simpan dengan nama css.html

4. Lalu jalankan pada browser, hasilnya akan terlihat seperti gambar 1.8

Page 22: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

19

Gambar 1.8: Contoh penggunaan CSS

Dapat anda lihat bahwa tag yang kita deklarasikan pada CSS secara otomatis style

tag tersebut mengikuti aturan CSS yang kita buat. Dengan demikian kita dapat

dengan mudah memodifikasi banyak elemen sekaligus hanya dari sebuah baris

CSS.

1.9.1 CSS Class dan ID

Jika anda cukup kreatif, saya harap memang demikian :) maka anda mungkin

berfikir kalau penggunaan cara seperti pembahasan sebelumnya tidak

sepenuhnya baik. Mengapa? Bayangkan jika pada beberapa bagian pada

halaman, anda tidak ingin mengaplikasikan style tersebut. Lalu apa yang

anda lakukan? Merubahnya secara manual lewat inline style? Itu memang

dapat dilakukan tapi tidak efisien.

Cara yang paling efektif dan efisien adalah dengan menggunakan class

dalam CSS. Dengan menggunakan class kita dapat menentukan letak bagian

yang harus kita aplikasikan suatu style. Penggunakan class diawali dengan

tanda titik “.”. Lihat contoh berikut:

.tebal-miring { font-weight: bold; font-style: italic }

div.error { color: red; font-weight: bold }

Baris pertama merupakan general class karena semua tag dapat

menggunakannya. Sedangkan pada baris kedua adalah regular class karena

class tersebut hanya berlaku pada tag div saja. Untuk mengaplikasikan style

yang ada pada class kita harus memasukkan nama class tersebut pada attribut

class.

Page 23: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

20

Cara lain adalah dengan menggunakan nilai dari attribut id pada setiap tag.

Nilai dari attribut id antara tag yang satu dengan tag yang lain tidak boleh

ada yang sama. Tanda yang digunakan bukan titik melainkan tanda pagar “ #

”.

#main { border: 1px solid #000000 } div#header { padding: 4px}

OK, mari kita buat sebuah file untuk lebih memahaminya.

1. Buka Notepad++

2. Ketik kode berikut:

3. Simpan dengan nama css-class.html

4. Hasilnya akan tampak seperti gambar 1.9 jika anda jalankan pada browser

Page 24: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

21

Gambar 1.9. CSS Class dan Id

1.9.2 Hyperlink Pseudoclass

Jika anda pernah mengunjungi suatu website dan anda menggerakkan mouse

anda ke arah sebuah link lalu link tersebut berubah warna dan menjadi

bergaris bawah atau sebaliknya. Apa yang anda lihat tersebut adalah hasil

dari hyperlink pseudoclass-nya CSS.

Seperti yang sudah dibahas sebelumnya untuk membuat link kita

menggunakan tag <a></a>. Oleh karena itu tag iniliah yang akan kita

manipulasi. Format penulisan hyperlink pseudoclass adalah a: nama_aksi,

dimana nama_aksi dapat berupa:

• link: Tampilan link ketika tidak dipilih oleh user (biasanya tidak perlu

ditulis)

• visited: Tampilan link setelah diklik

• active:Tampilan ketika link diklik

• hover: Tampilan ketika mouse melewati link (lebih sering digunakan

daripada active)

Penasaran? langsung saja buat file untuk mencobanya.

1. Buka Notepad++

2. Ketik kode berikut:

Page 25: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

22

3. Simpan dengan nama pseudoclass.html

4. Buka browser anda lalu buka file tersebut

Gambar: 1.10: Penggunaan pseudoclass link

1.9.3 External CSS

Sampai saat ini anda sudah tahu bagaimana mudahnya memodifikasi style

dengan menggunakan CSS. Agar dalam pembuatan website kita lebih

efisien maka sebaiknya kita meletakkan file CSS kita pada suatu file

Page 26: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

23

tersendiri. Sehingga kita dapat meload-nya pada halaman yang

membutuhkan style yang ada pada file CSS tersebut.

File CSS yang akan kita load tidak harus berada satu komputer dengan file

HTML kita. File CSS tersebut dapat berada pada website lain, ini

dimungkinkan karena kita dapat menggunakan URL pada saat pemanggilan

file.

Ada dua metode untuk memanggil file CSS, yang pertama adalah dengan

menggunakan tag <link> dan yang kedua adalah menggunakan statement

@import didalam CSS. Cara yang lebih sering digunakan adalah

menggunakan tag <link>. Tidak ada yang lebih jelas daripada learning by

doing, karena itu langsung saja kita praktikkan.

1. Buka Notepad++

2. Ketik kode berikut:

3. Simpan dengan nama my.css

4. Buat file baru lagi, kemudian ketik kode berikut:

Page 27: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

24

5. Simpan dengan nama external-css.html

6. Jalankan pada browser, hasilnya akan terlihat seperti gambar 1.11

Gambar 1.11: External stylesheet

1.10 Membuat Layout dengan DIV

Seperti yang sudah disinggung pada pembahasan tentang tabel, kalau

pembuatan design website yang menggunakan tabel dapat dikatakan sudah

tidak relevan lagi. Sebagai pengganti dari tabel adalah tag div. Tag div

memang dikhususkan untuk membagi halaman kedalam beberapa segmen.

Jika kita gabungkan dengan penggunakan attribut id dan class, maka div

dapat kita gunakan untuk layout sebuah halaman.

Secara kasar setiap halaman yang “baik” pasti memiliki beberapa bagian,

misalnya halaman tersebut terdiri dari header, kemudian beberapa kolom

untuk content utama, dan sebagainya. Semua itu terserah pada designernya.

Pada contoh kasus yang akan kita buat nantinya, kita akan membuat

sebuah layout halaman yang terdiri dari:

Page 28: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

25

1. Header utama halaman

2. 2 Kolom

3. 1 untuk content utama

4. 1 untuk berita atau lainnya

5. lebar halaman tidak lebih dari 800px (untuk berjaga-jaga, karena

masih banyak user yang resolusi monitornya 800x600)

6. Footer halaman

Design halaman yang akan dibuat tidak melibatkan penggunaan gambar,

karena prioritas kita disini hanyalah bagaimana cara mengatur tata letak

komponen menggunakan tag div. OK, langsung saja kita membuatnya.

1. Buka Notepad++

2. Ketik kode berikut:

Page 29: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

26

Page 30: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

27

5. Simpan dengan nama layout.css

6. Buat file baru, lanjutkan dengan mengetik kode berikut:

Page 31: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

28

Page 32: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

29

7. Simpan dengan nama layout.html

Page 33: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

30

Gambar 1.12. Design tampilan dengan Div

1.11 Javascript

Javascript adalah sebuah bahasa pemrograman yang khusus dirancang untuk

website. Javascript hanya berjalan disisi klien, artinya penggunaan javascript

hanya terbatas pada web-browser anda saja, ia tidak bisa melakukan manipulasi

data pada sisi server. Saat ini javascript merupakan salah satu element terpenting

dari teknologi web terkini. AJAX adalah salah satu contoh penggunakan

javascript yang saat ini banyak digunakan oleh website.

Namun pada buku ini saya hanya membahas javascript sepintas saja, untuk tahu

lebih jauh tentang javascript anda dapat mencari lewat google atau tunggu buku

saya berikutnya.

1.11.1 Menggunakan Javascript

Secara sederhana sebuah script javascript diapit oleh tag <script></script>,

namun untuk lebih memperjelas penggunaan javascript biasanya ditambahkan

attribut language atau type, contoh seperti berikut:

<script language=”javascript”>

// javascript kode disini...

</script>

Page 34: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

31

atau

<script type=”text/javascript”>

//javascript kode disini...

</script>

Kenapa demikian? Karena jika anda pengguna browser IE maka ia memiliki

satu bahasa lagi selain javascript yaitu vbscript. Namun pada kenyataannya

hampir tidak ada situs yang menggunakan vbscript, jadi secara default pun

jika anda hanya menggunakan tag <script></script> maka IE akan

menganggap script tersebut adalah javascript.

Tag <script> dapat anda letakkan pada level global yaitu pada tag

<head></head> atau secara lokal dimana pun dalam tag <body></body>. OK

langsung saja kita coba “scriptnya” ini.

1. Buka Notepad++

2. Ketik kode berikut:

3. Simpan dengan nama javascript.html

4. Jalankan pada browser untuk melihat hasilnya.

Page 35: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

32

Gambar 1.13. Javascript prompt

Pada contoh diatas kita meletakkan javascript pada level global dengan

meletakkannya pada tag <head></head>. prompt, confirm, dan alert adalah

fungsi-fungsi built in javascript yang dapat kita gunakan untuk berinteraksi

dengan user.

Jika anda familiar dengan bahasa seperti Java, C++, C, atau anak cucunya

maka anda tidak akan terlalu berlama-lama menyesuaikan diri dengan syntax

javascript. Hal itu karena syntax javascript sangat mirip dengan ketiga bahasa

yang telah disebutkan diatas. Untuk mendeklarasikan variabel pada javascript

kita dapat menggunakan keyword var.

1.11.2 Manipulasi DOM

Salah satu fungsi utama javascript adalah kemampuannya untuk

memanipulasi DOM (Document Object Model). DOM sendiri adalah suatu

struktur didalam dokumen HTML yang berbentuk seperti tree yang

komponen-komponennya adalah elemen HTML seperti tag. Karena

kemampuan inilah maka dengan javascript kita dapat menciptakan

DHTML Effect (Dynamic HTML Effect).

Javascript versi terbaru sudah mendukung penggunaan tipe data dalam pendeklarasianvariabel seperti int, string, dll. Namun untuk menjaga kompatibilitas sebaiknya tetap gunakan

keyword var.

Page 36: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

33

Salah satu contoh pengaplikasian DHTML Effect adalah hide and show

suatu elemen HTML. Misal, jika suatu tombol diklik maka tampilan

hilang atau tampil. Semua ini dimungkinkan karena javascript dapat

melakukan modifikasi style CSS pada elemen secara langsung.

Untuk lebih memahaminya sebaiknya kita langsung saja mencobanya lewat

contoh.

1. Buka Notepad++

2. Ketik kode berikut:

Page 37: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

34

3. Simpan dengan nama dom.html

4. Buka file menggunakan browser untuk melihat hasilnya.

Gambar 1.14. Manipulasi DOM

Penjalasan Singkat File dom.html

Banyak hal baru menyangkut penggunaan javascript, seperti penggunaan

keyword function dan metode getElementById. Jika tidak mengerti untuk

sementara, ikuti aja karena modul ini memang tidak mengharuskan anda

menguasai javascript.

Page 38: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

35

Fungsi pada javascript ditandai dengan keyword function. Fungsi

merupakan pengemlompokkan sejumlah perintah untuk dieksekusi pada

satu waktu ketika fungsi itu dipanggil. Pada contoh kita membuat dua

fungsi yaitu beriWarna() dan hideShow(). Object yang akan kita modifikasi

stylenya adalah object dengan elemen id bernama “kotak” dalam hal ini

elemen tersebut adalah sebuah div.

<div id="kotak" style="display:block">

Agar object div tersebut dapat kita manipulasi maka kita perlu membuatkan

sebuah wadah untuk menampung object tersebut dalam javascript. Untuk

itu digunakanlah salah satu fungsi DOM yaitu getElementById. Setelah

kita mendapatkan object tersebut maka kita bebas untuk memodifikasinya.

Contoh sederhana adalah mengubah stylesheet dari object tersebut. Setiap

tag yang dapat dimanipulasi dengan CSS memiliki atribut style. Bedanya

jika pada CSS format penulisannya: jika terdiri dari dua kata maka

dipisah dengan tanda “-” contoh: background-color, font-family, font-size,

dan sebagainya. Tapi pada javascript digunakan model Capitalis, contoh:

backgroundColor, fontFamily, fontSize dan sebagainya.

Warna yang digunakan pada contoh adalah menggunakan hexadecimal.

Contoh-contoh warna yang dapat anda gunakan sebagai bahan ujicoba

adalah: 90EE90, FFFF00, FFC0CB, 99FFCC, dan masih banyak lagi.

Page 39: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

36

Bab IIPengenalan PHP

2.1 Apa Itu PHP?

PHP (akronim dari PHP: Hypertext Preprocessor) adalah bahasa server-side

scripting yang didesain khusus untuk web. Pada halaman HTML anda dapat

menempelkan(embed) kode PHP. Kode PHP dieksekusi di sisi server bukan di

komputer klien. Dan hasil yang ditampilkan adalah kode HTML murni.

PHP merupakan hasil kerja seorang bernama Rasmus Lerdorf pada awal 1995.

Namun kemudian PHP berkembang dan tidak hanya merupakan proyek pribadi

Rasmus. PHP ditulis ulang dan dengan banyak menambahkan fungsi-fungsi baru

oleh Zeev Suraski dan Andi Gutmants (disingkat Zend) dan lahirlah PHP 3 pada

1998.

PHP masih terus dikembangkan, pada tahun 2002 PHP hadir dengan versi ke 4.

PHP 4 dilengkapi dengan Zend Engine dan mengalami banyak peningkatan

performa. Dan yang paling akhir pada tahun 2005 PHP 5 hadir dengan dukungan

Zend Engine 2. Banyak fitur baru khususnya pada OOP (Object Oriented

Programming) dan XML

Berbeda dengan dengan PHP 4, adopsi PHP 5 dikalangan industri sangat lambat.

Bahkan hingga sekarang masih cukup banyak hosting yang belum menyediakan

PHP 5. Hal ini dikarenakan beberapa faktor, diantanranya kompatibilitas dengan

versi PHP 4. Pada saat buku ini ditulis versi terakhir dari PHP adalah versi 6.0.

2.2 Cara Kerja PHP

Cara kerja PHP yang akan kita bahas pada buku ini adalah PHP sebagai bahasa

pemrograman untuk mengembangan aplikasi berbasis web. Karena selain untuk

Untuk instalasi PHP silahkan baca halaman pendahuluan.

Page 40: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

37

web-programming PHP juga dapat digunakan untuk mengembangan aplikasi

berbasis desktop dan CLI (Command Line Interface).

Gambar 2.1: Cara kerja PHP

Secara sederhana cara kerja PHP dapat dilihat pada gambar 2.1 diatas. Jika diurut

maka proses tersebut terdiri dari:

1. User meminta sebuah halaman PHP

2. Browser mengirim HTTP Request kepada WebServer, misal Apache

3. WebServer mengirim permintaan file PHP tersebut ke PHP processor. PHP

processor dapat berupa modul(bagian dari web-server) atau terpisah (sebagai

CGI/Fast-CGI)

4. Permintaan diproses oleh PHP processor kemudian hasilnya dikirim kembali ke

web-server

5. Web server memaket kembali hasil tersebut dengan menambahkan HTTP

header dan dikirim kembali ke browser.

6. Browser memproses HTTP packet dan menampilkannya sebagai HTML kepada

user.

2.3 Variabel pada PHP

Variabel merupakan elemen yang sangat penting dalam bahasa pemrograman.

Hampir setiap bahasa pemrograman mengenal apa itu yang namanya variabel.

Variabel sendiri merupakan suatu bentuk penyimpanan data sementara pada

memori komputer yang akan diolah lebih lanjut. Contoh variabel pada PHP

antaran lain:

$nama = 'Edi Ismanto;

$angka_1 = 1;

$angka_2 = 2;

$hasil = $angka_1 + $angka_2;

Page 41: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

38

Ketentuan-ketentuan dalam membuat variabel:

• Variabel dapat terdiri dari huruf, angka dan underscore ( _ ) dan tentu saja

tanda dollar $.

• Variabel tidak dapat diawali dengan angka.

• Variabel bersifat case sensitive artinya membedakan huruf kecil dan huruf

besar.

• Variabel $nama tidak sama dengan $NaMa. Untuk itu hati-hati dalam

penulisan nama variabel.

Pada variabel anda dapat mengubah nilainya, contoh $angka_1 = 1 dapat anda

ubah menjadi $angka_1 = 2 saat suatu script dijalankan. Ini berbeda dengan

konstanta (akan dibahas berikutnya).

2.3.1 Tipe Variabel

Pada PHP kita tidak perlu mendeklarasikan tipe variabel secara eksplisit, istilah

kerennya dynamic typing. Karena PHP secara otomatis dapat menentukan tipe

variabel berdasarkan nilai yang ada pada variabel tersebut. Berikut ini adalah

beberapa tipe data yang didukung oleh PHP.

Tabel 2.1: Macam-macam Tipe Data

TipeData KeteranganInteger Digunakan untuk semua angkaString Digunakan untuk semua huruf, angka, spasi, dan simbolDouble Digunakan untuk bilangan realBoolean Digunakan untuk nilai True atau FalseArray Digunakan untuk menampung beberapa data sekaligusObject Digunakan untuk class

2.3.2 Konstanta

Hampir sama dengan variabel, konstanta juga digunakan untuk penyimpanan

nilai sementara. Namun perbedaan konstanta dengan variabel adalah pada

konstanta anda tidak dapat mengubah

Page 42: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

39

nilainya jika sudah dideklarasikan. Cara pendeklarasiannya pun berbeda dengan

variabel. Pada konstanta digunakan keyword define untuk mendeklarasikan

variabel. Konstanta juga tidak diawali dengan tanda $ (dollar).

define('HARGA', 1500);

define('NAMA', 'Edi Ismanto ');

Dapat dilihat pada kode diatas bahwa kita selalu gunakan huruf KAPITAL

untuk konstanta. Hal ini tidak harus dilakukan namun semacam peraturan tidak

tertulis jika konstanta maka sebaiknya gunakan huruf kapital.

2.3.3 Penerapan Teori Variabel dan Konstanta

1. Jika belum silahkan buat folder bab2 didalam folder htdocs/webpro.

2. Pastikan Apache sudah berjalan.

3. Buka Notepad++

4. Ketik kode berikut:

5. Simpan dengan nama variabel.php pada folder bab2

6. Arahkan browser anda ke alamat

http://localhost/webpro/bab2/variabel.html

Page 43: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

40

7. Output dari file tersebut adalah

Klik kanan browser anda lalu klik View Source (untuk Firefox) untuk

melihat kode HTML dari halaman tersebut. Perhatikan bahwa tag <?php dan

?> yang ada hanyalah kode HTML murni.

Penjelasan Script variabel.php

Jika anda perhatikan, sama seperti pada bab sebelumnya kita hanya menulis

sebuah file html biasa.

Namun ada sedikit perbedaan, dimana pada file variabel.php terdapat sebuah

tag baru yaitu <?php dan ?>. Script dalam tag inilah yang akan diproses oleh

PHP processor. Semua tulisan diluar tag <? php dan ?> akan diabaikan oleh

PHP.

Cara seperti yang kita lakukan pada file variabel.php adalah menempelkan

PHP pada HTML. Jika kumpulan mp3 anda adalah western song mungkin

anda lebih suka mendengarnya dengan sebutan embedding PHP inside HTML

:).

Jika anda masih ingat teori sebelumnya tentang variabel, dapat dilihat bahwa

variabel $menu kita deklarasi ulang dan nilainya diubah menjadi 'Menu: Mie

Goreng' (Baris: 13). Namun hal tersebut tidak berlaku pada konstanta, pada

baris 14 kita deklarasikan ulang konstanta HARGA. Nilai dari konstanta

tersebut tidak berubah.

Hal itu ditunjukkan ketika kita mencetak nilai dari $menu dan HARGA.

$menu berubah menjadi ‘ M i e G o r e n g ’ dan konstanta tetap

15000.

Menu: Mie Goreng

15000

Page 44: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

41

Pada PHP untuk mencetak sesuatu dapat digunakan perintah echo. Contoh

penggunaan dapat dilihat pada baris 16 dan 17. Pada konstanta tidak perlu

diberi tanda $.

TIPS:Selain perintah echo anda juga dapat menggunakan perintah print untukmencetak output.

2.4 Komentar

Komentar pada script bertujuan untuk memberitahu pembacanya, baik orang lain

ataupun anda sendiri. Biasanya komentar digunakan untuk menjelaskan tujuan

dituliskannya script tersebut, siapa penulisnya, kapan ditulis dan sebagainya.

Komentar juga berguna bagi anda sendiri ketika suatu waktu anda lupa mengapa

anda menulis file ini, fungsi-fungsinya untuk apa dan banyak lainnya.

PHP akan mengabaikan semua text didalam komentar. Jadi tidak akan

berpengaruh pada jalannya suatu script.

PHP mengenal tiga jenis gaya komentar. Pertama model bahasa C (banyak

baris/multi line), biasanya dapat diletakkan pada bagian atas script. Lihatlah

script dibawah ini.

Yang kedua adalah model C++, seperti yang ditunjukkan dibawah ini.

echo $nama; // cetak nama

Page 45: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

42

Yang ketiga adalah model shell script.

echo HARGA; # cetak harga

Sekarang coba modifikasi file variabel.php tersebut dengan menambahkan

komentar lalu lihat hasilnya. Apakah masih sama atau tidak.

2.5 OperatorOperator merupakan simbol yang dapat digunakan untuk memanipulasi nilai dan

variabel. Pada bagian sebelumnya kita sudah menggunakan beberapa operator

diantaranya =, ==, <, ., +, * dan lainnya. Selanjutnya kita kan membahas operator-

operator ini dan operator lainnya lebih detil lagi .

2.5.1 Operator Aritmatik

Pasti anda sudah banyak mengenal berbagai macam operator aritmatik. Jika

anda pernhah mengenyam pendidikan yang bernama Sekolah Dasar atau SD

pasti anda sering menulis operator- operator ini pada buku anda :).

Tabel 2.2: Operator Aritmatik

Operator Nama Contoh+ Penambahan $a + $b

- Pengurangan $a - $b

* Perkalian $a * $b

/ Pembagian $a / $b

% Modulus $a % $b

Yang mungkin bapak atau Ibu guru SD kita lupa mengajarkan adalah tentang

modulus. Modulus merupakan sisa pembagian dari dua bilangan. Lihat contoh

berikut untuk lebih jelas.<?php.$bil1 = 10;$bil2 = 5;$bil3 = 3;

echo $bil1 % $bil2; // output 0echo $bil1 % $bil3; // output 1echo $bil2 % $bil3; // output 2?>

Page 46: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

43

2.5.2 Operator Kombinasi

Saya sendiri bingung menjelaskan operator ini, saya takut kata-kata saya

menyesatkan pikiran anda :). Jadi lebih baik kita langsung lihat contoh saja biar

lebih jelas.

Tabel 2.3: Operator Kombinasi

Operator Penggunaan Sama dengan+= $a += $b $a = $a + $b

-= $a -= $b $a = $a - $b

*= $a *= $b $a = $a * $b

/= $a /= $b $a = $a / $b

%= $a %= $b $a = $a % $b

Penggunaan operator kombinasi memang favorit karena mempermudah bagi

para programmer.

2.5.3 Operator Perbandingan

Operator perbandingan digunakan untuk membandingkan dua nilai.

Penggunaan ekspressi ini juga akan menghasilkan nilai true atau false

tergantung dari perbandingan.

Tabel 2.4: Operator perbandingan

Operator Nama Penggunaaan== sama dengan $a == $b

=== identik (harus bertipe sama) $a === $b

!= tidak sama dengan $a != $b

<> tidak sama dengan $a <> $b

< kurang dari $a < $b

> lebih dari $a > $b

<= kurang dari atau sama dengan $a <= $b

>= lebih dari atau sama dengan $a >= $b

Operator perbandingan biasanya digunakan pada struktur kontrol seperti

percabangan dan perulangan.

Page 47: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

44

2.5.4 Operator Logika

Operator logika digunakan untuk melakukan tes terhadap sebuah kondisi logika

dari dua atau lebih perbandingan. Sebagai contoh, kita mungkin menemukan

kasus nilai dari variabel $a berada diantara 0 sampai 10. Untuk mengetes

kondisi $a >= 0 dan $a <= 10, kita gunakan operator AND.

Tabel 2.5: Operator Logika

Operator Nama Penggunaaan Keterangan! NOT !$a TRUE jika $a adalah FALSE,

berlaku sebaliknya

|| OR $a || $b TRUE jika $a atau $b bernilai TRUEatau keduanya bernilai TRUE

&& AND $a && $b TRUE jika $a dan $b bernilai TRUE

xor XOR $a xor $b TRUE jika $a atau $b bernilaiTRUE, tapi tidak keduanya

2.5.5 Operator Increment/Decrement

Operator increment/decrement digunakan untuk menambah/mengurangi nilai

dari suatu variabel dengan satu. Increment memiliki simbol ++ (double plus)

sedangkan decrement -- (double minus).

Tabel 2.5: Operator Increment/Decrement

Nama Contoh KeteranganPre-Increment ++$a Tambah $a dengan satu, lalu kembalikan nilainya

Post-Increment $a++ Kembalikan nilai $a, lalu tambah $a dengan satu

Pre-Decrement --$a Kurangi $a dengan satu, lalu kembalikan nilainya

Post-Decrement $a-- Kembalikan nilai $a, lalu kurangi $a dengan satu

Mungkin akan lebih jelas jika anda melihat contoh dibawah ini.

Page 48: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

45

2.5.6 Operator String

Sebenarnya pada contoh-contoh sebelumnya operator string ini sudah sering

kita gunakan. Operator string yang dimaksud adalah tanda “.” (titik). Tanda

titik ini dapat digunakan untuk menggabung string.

<?php

$a = 'eddie';$b = 'UMRI';$c = $a . ' ' . $b; // hasil: eddie UMRI// atau dengan kombinasi$a .= ' UMRI'; // hasil: eddie UMRI

?>

2.6 Escape Character

Pada saat menulis kode anda akan sangat sering menjumpai suatu kondisi dimana

kita harus mencetak tanda petik baik petik satu maupun petik dua.

Permasalahannya tanda tersebut sudah digunakan sebagai penanda untuk

mencetak string. Lalu, bagaimana pemecahannya? Ada beberapa solusi untuk

mencetak petik didalam petik itu sendiri:

1. Gunakan petik satu (') sebagai penutup string jika ingin mencetak petik dua (“)

dan sebaliknya.

Page 49: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

46

2. Menggunakan Escape Character \ (backslash)

Berikut ini adalah contoh penyelesaian dari kedua solusi diatas.

2.7 Special Character

Pembahasan ini sebenarnya tidak begitu krusial jika dihubungkan dengan

pembuatan tampilan web. Namun akan sangat berguna dalam proses pencarian

kesalahan ketika kita mendesain suatu halaman website.

Pada intinya HTML mengabaikan semua karakter whitespace (spasi, tab, baris

baru) dan menggantinya hanya dengan satu spasi ketika ditampilkan. Special

character disni mencakup

• Baris baru (\n)

• Tab (\t)

Sebenarnya masih banyak karakter spesial lainnya seperti \r, \0, \b dan lain-lain.

Untuk lebih jelasnya cobalah contoh berikut.

Page 50: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

47

Output dari kode diatas kurang lebih seperti berikut:

Jika dilihat dari browser tidak ada yang berbeda dari group 1 dan group 2 yang

ada pada kode diatas. Tapi jika anda melihat source HTML dengan cara klik

kanan → View Source (Firefox) akan terlihat perbedaannya.

TIPS:Untuk mencetak special character seperti \n, \t, \r dan sebagainya harusmenggunakan petik dua sebagai penutup string.

Page 51: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

48

Bab IIIStruktur Kontrol

Struktur Kontrol merupakan sebuah struktur dalam bahasa pemrograman yang

membolehkan kita untuk mengontrol alur dari eksekusi suatu program atau script.

Struktur kontrol mencakup struktur kondisi dan struktur pengulangan atau looping.

Struktur kondisi terdiri dari beberapa statement yaitu:

• if...• if...else...• if...elseif...else...• switch...case...break...

Sedangkan struktur perulangan terdiri dari:

• for...• while...• do...while...• foreach...

3.1 Struktur Kondisi

3.1.1 Statement if...

Kita dapat menggunakan statemen if untuk membuat sebuah keputusan. Anda

harus memberi if sebuah kondisi untuk membuat keputusan. Jika kondisi

bernilai true maka blok if akan dieksekusi. Statemen if dikelilingi oleh tanda { }

(kurung kurawal). Syntax dasar penulisan statemen if adalah:

if (kondisi) {

// kode yang dieksekusi

}

Jika kondisi bernilai TRUE maka perintah yang ada blok pada { } akan

dieksekusi. Perhatikan contoh dibawah.<?php

$nama = eddie;

if ($nama == 'eddie) {

echo 'OK, anda boleh masuk.';

} ?>

Pada contoh diatas kita menggunakan variabel nama sebagai kondisi, dimana jika

Page 52: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

49

nilai variabel $nama sama dengan eddie maka blok perintah akan dieksekusi.

Ingat, bahwa operator perbandingan untuk sama dengan adalah == bukan =.

Contoh lain jika kita menggunakan angka untuk perbandingan adalah:

Pada contoh ke dua ini, blok if hanya akan dieksekusi jika nilai dari usia lebih dari

atau sama dengan 21 DAN nilai dari black_list sama dengan false.

TIPS:Anda dapat meletakkan if di dalam if (if bersarang). Ini juga berlakuterhadap semua struktur kontrol lain.

3.1.2 Statement if...else...

Statement ini hampir sama dengan if hanya saja pada if else kita diberikan opsi

alternatif untuk menentukan aksi yang dilakukan jika kondisi bernilai false.

Statement ini akan sangat sering anda gunakan dibanding penggunakan if saja.

Syntax penulisan statement if...else... adalah sebagai berikut:

if (kondisi) {// kode yang dieksekusi jika kondisi true} else {// kode yang dieksekusi jika kondisi false}

Contoh statement if...else... sederhana dapat anda lihat berikut ini.

Page 53: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

50

Alur dari script diatas sudah jelas, dimana jika nilai dari $penghasilan lebih dari

3.000.000 maka john diperbolehkan nikah dengan putrinya Pak Toyib :). Namun

jika kurang dari 3.000.000 alamat kena marah Pak Toyib :(.

3.1.3 Statemen if...elseif...else...

Jika statemen if...else... hanya dapat menggunakan satu alternatif jika kondisi awal

bernilai false. Statemen if...elseif... memberi lebih dari satu aksi alternatif. Hal ini

memungkinkan kita untuk memilih aksi dari banyak kemungkinan kondisi.

Syntax dasar penulisan if...elseif... adalah sebagai berikut:

if (kondisi_1) {

// kode yang dieksekusi} elseif (kondisi_2) {

// kode yang dieksekusi} elseif (kondisi_3) {

// kode yang dieksekusi} else if (kondisi_4) {

// kode yang dieksekusi} else {

// kode yang dieksekusi}

Anda dapat menulis statement elseif dengan spasi, yaitu else if. Keduanya sama-

sama dianggap valid oleh PHP.

3.1.4 Penerapan Teori if...elseif...else...

Hal yang paling sering dilakukan oleh PHP sebagai bahasa server-side scripting

adalah memproses HTML Form. Pada contoh ini adalah inti awal anda

memahami tugas PHP sebagai pemroses HTML Form. Kita akan membuat dua

file yang pertama adalah file HTML murni sebagai input data bagi user (HTML

Form). Dan file yang kedua adalah file PHP yang bertugas memproses data yang

dikirim oleh file HTML .

Page 54: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

51

1. Jika belum silahkan buat folder bab3 pada folder htdocs/webpro

2. Pastikan Apache sudah berjalan

3. Buka Notepad++

4. Ketik kode berikut:

5. Simpan file tersebut dengan nama form-toko.html

6. Sekarang buat file baru

7. Ketik kode berikut:

Page 55: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

52

Page 56: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

53

8. Simpan dengan nama form-proses.php masih difolder yang sama.

9. Buka browser anda dan arahkan ke http://localhost/webpro/bab3/form-toko.html

10. Hasilnya terlihat seperti gambar 3.1 dan 3.2

Gambar 3.1. Form Toko

Gambar 3.2. Form Pemroses

Page 57: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

54

Penjelasan singkat form-toko.html dan form-proses.php

Kita mulai dari file form-toko.html terlebih dulu. Pada file ini yang perlu

diperhatikan adalah data yang terletak pada <form> dan </form>. Perhatikan

cuplikan script form berikut:

<form action="form-proses.php" method="post">

Perhatikan nilai dari action, file yang diberi “kehormatan” untuk menjalankan

tugas memproses data yang dikirim oleh form adalah file form-proses.php. Letak

file tersebut satu folder dengan form-toko.html. Metode yang digunakan adalah

POST bukan GET.

<input type="text" name="sticker" value="0" size="4" />

Arti dari kode diatas adalah data yang akan kita kirimkan ke file form-proses.php

bernama sticker.

Jadi pada file form-proses.php kita mengambilnya dengan cara:

$sticker = $_POST['sticker']; // data sticker

Kode diatas berarti kita menangkap data yang dikirim dengan metode post dan

data tersebut bernama sticker. Isi dari $_POST harus sama dengan isi dari name

pada form. Nama variabel penampung tidak harus sama akan tetapi lebih mudah

jika sama dengan data yang di-post.

TIPS:PHP tidak memperdulikan tata letak kode anda. Jadi desainlah kode andasenyaman mungkin untuk dibaca.

3.1.5 Statement switch...case...breakSebenarnya statement switch...case...break sama dengan if...elseif... dimana kita

dapat memilih lebih dari dua kondisi atau lebih. Selain itu pada switch kita dapat

memilih kondisi tidak hanya pada nilai true atau false saja tetapi kita juga dapat

memilih dari berbagai tipe lain seperti integer, boolean, string dan lain-lain.

Syntax penulisan statement switch adalah sebagai berikut.

Page 58: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

55

switch ($kondisi) {case kondisi_1:

// kode yang dieksekusibreak;case kondisi_2:

// kode yang dieksekusibreak;case kondisi_3:

// kode yang dieksekusibreak;default:

// kode yang dieksekusi jika tidak ada yang memenuhibreak;

}

Block default pada switch sama dengan else pada statement if...elseif...else....

Yaitu blok yang akan dieksekusi jika semua kondisi tidak terpenuhi. Sebagai

contoh anda dapat mengganti kode pada form-proses.php baris 20 – 29 dengan

kode berikut:

3.2 Struktur Perulangan (Looping)

Salah satu kelebihan komputer adalah melakukan pekerjaan selama berulang-ulang

tanpa rasa bosan sedikit pun. Berbeda dengan manusia, tidak dapat dibayangkan

jika komputer tiba-tiba bosan ketika menjalankan perintah :D. Dalam pemrograman

perulangan atau looping adalah eksekusi suatu blok kode selama suatu kondisi

looping masih terpenuhi. Ini berbeda dengan struktur kontrol yang hanya

mengeksekusi blok kode satu kali saja.

Page 59: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

56

Agar pengertian looping mudah di mengerti, kita akan membuat sebuah file HTML

static yang kemudian akan kita buat duplikatnya tetapi menggunakan loop.

1. Buka Notepad++

2. Buat file baru

3. Ketik kode berikut:

4. Simpan dengan nama bensin.html letakkan pada folder htdocs/webpro/bab3

5. Buka file tersebut pada browser, http://localhost/webpro/bab3/bensin.html

6. Hasilnya akan terlihat seperti gambar 3.3

Page 60: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

57

Gambar 3.3. Eksekusi blok

3.2.1 Statement for...

Bentuk perulangan pertama yang akan kita bahas adalah perulangan dengan for.

Bentuk penulisan looping for adalah sebagai berikut.

for (ekspresi1; kondisi; ekspresi2) {

// kode yang akan dieksekusi

}

Keterangan:

ekspresi1: dieksekusi satu kali saat loop mulai dieksekusi, biasanya untuk

inisialisasi variabel counter

kondisi: dicek setiap loop apakah kondisi masih true, jika ya maka blok

kode tetap dieksekusi, berlaku sebaliknya jika false

ekspresi2: dieksekusi setiap akhir loop, disini biasanya digunakan untuk

mengubah nilai variabel counter

3.2.2 Penerapan Teori for...Seperti yang pernah disinggung sebelumnya, bahwa kita akan kan menduplikasi

file bensin.html tetapi dengan menggunakan perulangan, dalam hal ini kita

gunakan for.

1. Buka Notepad++

2. Buat file baru

3. Ketik kode berikut:

Page 61: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

58

4. Simpan dengan nama bensin_for.php pada folder htdocs/webpro/bab3

5. Hasilnya akan sama persis seperti gambar 3.3

Penjelasan Singkat File bensin_for.php

Nilai variabel $liter awal kita set 5, kondisi yang ingin cek adalah jika $liter <= 25.

Selama masih terpenuhi(kondisi true) maka blok kode akan tetap dieksekusi. Setiap

selesai eksekusi nilai dari variabel counter yaitu $liter kita tambah dengan 5.

Looping akan berhenti jika sudah mencapai step 6. Karena pada saat itu nilai $liter

sudah mencapai 30 dan itu tidak memenuhi syarat kondisi dimana $liter <= 25.

3.2.3 Statement while...Berbeda dengan for pada while kita tidak bisa meletakkan inisialisasi variabel,

kondisi, dan counter pada satu baris saja. Syntax penulisan while adalah sebagai

berikut.

while (kondisi) {

// blok kode yang dieksekusi

}

Page 62: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

59

Jadi selama kondisi masih true maka blok kode akan terus dieksekusi. While biasa

digunakan jika kita tidak tahu batas akhir kapan suatu perulangan harus

dihentikan.

3.2.4 Penerapan Teori while...Kita masih tetap menggunakan file bensin.html sebagai acuan output yang akan

diselesaikan menggunakan while.

1. Buka Notepad++

2. Buat file baru

3. Ketik kode berikut:

4. Simpan dengan nama bensin_while.php pada folder htdocs/webpro/bab3

5. Hasilnya akan terlihat seperti gambar 3.3 sebelumnya

3.2.5 Statement do...whileBerbede dengan dua loop sebelumnya, dimana pada for dan while pengecekan

kondisi dilakukan pada awal sebelum blok kode dieksekusi. Pada do...while

pengecekan dilakukan diakhir eksekusi kode. Jadi setidak-tidaknya blok kode

Page 63: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

60

do...while pasti dieksekusi minimal satu kali. Syntax dasar dari do...while adalah

sebagai berikut.

do {

// kode yang dieksekusi

} while (kondisi)

Blok kode do akan dieksekusi selama kondisi while masih bernilai true.

3.2.6 Penerapan Teori do...while

1. Buka Notepad++

2. Buat file baru

3. Ketik kode berikut:

4. Simpan dengan nama bensin_do_while.php pada folder htdocs/webpro/bab3

Page 64: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

61

Jika anda masih penasaran dengan kata-kata “minimal dieksekusi satu kali” coba ganti

nilai $liter dari 5 menjadi 30 saat inisialisasi. Kode pasti akan dieksekusi satu kali

kemudian selesai. Hal ini

tidak berlaku untuk for dan while.

Jika ditanya kapan kita menggunakan do...while, susah juga jawabnya. Yang jelas

secara naluri nanti anda akan menggunakannya tanpa disuruh-suruh orang lain :p.

TIPS:Looping for biasa digunakan jika kita telah mengetahui batas awal dan akhirdari suatu perulangan.

Untuk sementara kita tidak menbahas dulu foreach karena loop ini didesain khusus

untuk penggunaan didalam array. Jadi pembahasan foreach akan kita lakukan saat

membahas tentang array.

Page 65: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

62

Bab IVFile dan Array

4.1 1 Berinteraksi dengan File

File merupakan salah satu aspek penting dalam sebuah aplikasi. Seringkali

sebuah file dibuat untuk berbagai tujuan misalnya, menyimpan konfigurasi,

temporary file, cache dan masih banyak lagi.

Interaksi PHP dengan file sangat mirip dengan bahasa C. Proses umum yang

dilakukan adalah:

• Membuat resource dengan perintah fopen()

• Menulis(fwrite())/membaca file

• Menutup file fclose()

4.1.1 Menyimpan File

Dibanding dengan penyimpanan pada database penyimpanan pada file

relatif sederhana. Namun memiliki banyak kekurangan terutama jika

menyangkut masalah keamanan dan kecepatan akses data. Pada PHP

langkah-langkah untuk menyimpan sebuah file adalah:

• Membuka file dengan fopen()

• Menulis file dengan fwrite()

• Menutup file dengan fclose()

fopen() minimal memerlukan dua parameter yaitu 1) string nama file dan 2)

string mode. Yang perlu diperhatikan disini adalah mode dari file. Syntax

yang digunakan adalah:

fopen( “string_nama_file”, “string_mode” );

Parameter 2

Parameter 1

Page 66: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

63

Mode yang dapat digunakan pada fopen adalah:

Mode Deskripsi'r' Buka file hanya untuk baca saja; pointer file diletakkan diawal

file.'r+' Buka file untuk baca dan tulis; ponter file diletakkan diawalfile.'w' Buka file untuk tulis saja; pointer diletakkan diawal file lalutruncate(overwrite); jika file tidak ada, buat file tersebut.

'w+' Buka file untuk baca dan tulis; pointer diletakkan diawal filelalu truncate(overwrite); jika file tidak ada, buat file tersebut.

'a' Buka file untuk tulis saja; pointer diletakkan diakhirfile(append); jika file tidak ada, buat file tersebut.

'a+' Buka file untuk baca dan tulis; pointer diletakkan diakhirfile(append); jika file tidak ada, buat file tersebut.

TIPS:Agar kompatibel antar sistem operasi yang memiliki “ending line” yangberbeda Linux (\n), MacOS(\r), dan Windows(\r\n) tambahkan opsi 'b',misal 'wb'. (b = binary mode)

Kita akan menggunakan contoh form-toko.html yang terdapat pada bab 3.

Format penyimpanan yang kita gunakan adalah:

jml_kaos Sticker -#- harga_kaos -#- jml_kaos Kaos-#- harga_kaos -#-

jml_jacket Jacket -#- harga_jacket -#- total -#- diskon -#- sub-total

OK, langsung aja kita coba untuk menulis file.

4.1.3 Penerapan Teori Penyimpanan File

Sebelum memulai pastikan anda sudah membuat folder baru di direktori

htdocs/webpro anda dengan nama bab4. Kita akan menyimpan file tersebut

didalam folder bab4 dengan nama faktur.txt. Ikuti langkah-langkah berikut:

1. Copy file form-toko.html dan form-proses dari folder bab3 ke bab4

2. Modifikasi file form-proses.php (pada bab4) agar menampilkan link ke

halaman faktur.

Page 67: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

64

Page 68: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

65

3. Simpan kembali file form-proses.php

4. Buat sebuah dokumen baru

5. Tulis source code dibawah ini

6. Simpan dengan nama file faktur.php

7. Buka alamat http://localhost/webpro/bab4/form-toko.html untuk melihat

proses penyimpanan file.

Page 69: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

66

Gambar 4.1: Tambahan link Lihat Faktur

Gambar 4.2: Data beberapa faktur transaksi yang tercatat

4.1.4 Penjelasan Singkat Penerapan Teori Penyimpanan File

Pada file form-proses.php modifikasi yang dilakukan dapat dilihat mulai dari

baris 34 – 42 dan juga baris ke-88. Pada baris 34 – 42 yang kita lakukan adalah

melakukan penulisan sebuah file dengan nama faktur.txt. Karena kita tidak

menyertakan path untuk direktori file maka diasumsikan file faktur.txt akan

ditulis pada direktori yang sama.

Mode file yang kita gunakan adalah 'a', agar data faktur-faktur sebelumnya yang

sudah tertulis tidak tertimpa/overwrite melainkan kita tambahkan diakhir

(append). Separator yang digunakan untuk setiap item adalah “-#-”. Format ini

akan tetap kita gunakan, karena pada pembahasan array kita akan mengextract

Page 70: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

67

setiap item berdasarkan separator tersebut.

Pada file faktur.php pembacaan file dilakukan dengan memanggil fungsi

readfile(). Fungsi readfile akan membaca sebuah file dan langsung

menampilkannya ke output. Karena setiap baris dipasahkan dengan karakter

“\n” maka kita perlu tag preformatted text <pre> agar file ditampilkan apa

adanya.

4.1.5 Fungsi-fungsi Lain

Beberapa fungsi lain yang dapat digunakan untuk manajemen file diantarnya

baca dan hapus antara lain fungsi file_get_contents(), fread(), dan unlink().

a. file_get_contents()

Fungsi file_get_contents() digunakan untuk membaca sebuah file dan

menyimpannya sebagai string. Sebagai contoh kita dapat mengganti fungsi

dari readfile() pada file faktur.php dengan perintah berikut:

$data = file_get_contents('faktur.txt');

echo $data;

b. fread()

Pada fungsi fread() terdapat dua parameter yang harus disertakan yaitu

pointer/resource yang dibuka dengan fopen dan panjang bytes dari data

yang akan dibaca. Contoh pengganti readfile() pada file faktur.php adalah

sebagai berikut:

$fp = fopen('faktur.txt', 'r');

$ukuran = filesize('faktur.txt');

$data = fread($fp, $ukuran);

echo $data;

fclose($fp);

atau

Page 71: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

68

$fp = fopen('faktur.txt', 'r');

$data = '';

while (!feof($fp)) {

$data .= fread($fp, 2048);

}

fclose($fp);

echo $data;

Fungsi filesize() digunakan untuk mengetahui ukuran sebuah file dalam

bytes. Sedangkan fungsi feof() digunakan untuk megecek apakah akhir

sebuah file sudah tercapai EOF(End of File). Pada contoh diatas kita

membaca sebanyak 2048 bytes atau 2kb setiap loop.

c. fgets()

Penggunaan fungsi fgets() hampir sama dengan fread() pada metode yang

kedua.

$fp = fopen('faktur.txt', 'r');

$data = '';

while (!feof($fp)) {

$data .= fgets($fp, 2048);

}

fclose($fp);

echo $data;

d. unlink()

Berbeda dengan beberapa fungsi sebelumnya, fungsi unlink() digunakan

untuk menghapus sebuah file. Contoh penggunaan unlink adalah sebagai

berikut:

if (unlink('faktur.txt'))

echo “File faktur.txt berhasil dihapus”;

else

echo “File faktur.txt gagal dihapus”;

Fungsi unlink() akan mengembalikan nilai boolean mengenai status

penghapusan dari sebuah file. TRUE jika file berhasil dihapus dan FALSE

jika gagal dihapus.

Page 72: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

69

TIPS:Masalah yang sering muncul jika menyangkut pembuatan dan penghapusanfile adalah masalah permission(hak akses). Hal ini umum terjadi pada sistemoperasi berbasis UNIX. Jadi perhatikan permission dari direktori/file yangmenjadi objek.

4.2 Array pada PHP

Array merupakan salah satu aspek terpenting dalam bahasa pemrograman.

Sebenarnya apa sih array itu? Secara sederhana array merupakan suatu variabel

yang dapat menyimpan beberapa nilai sekaligus. Berbeda dengan variabel biasa

yang hanya dapat menampung sebuah nilai saja. Array juga dapat berisi array

lainnya (array didalam array), array seperti ini sering disebut array multi-

dimensi.

Pada PHP dikenal dua tipe array berdasarkan cara pengaksesannya yaitu array

index numerik dan array index string (associative array). Bingung? Yes

akhirnya saya bisa membuat anda bingung :p. OK, biar anda tidak stress

langsung saja kita bahas yang pertama dulu yaitu arrai index numerik.

4.2.1 Array dengan Index Numerik

Kita akan tetap menggunakan contoh produk pada baba sebelumnya yaitu

sticker, kaos, dan jacket dalam pembahasan contoh. Sebuah array dengan index

numerik diberi index mulai dari 0,1,2,3,... dan seterusnya. Untuk membuat

sebuah array dengan index numeric terdapat beberapa cara diantaranya:

→ Cara 1

$produk = array('sticker', 'kaos', 'jacket');

Perintah diatas berarti kita membuat sebuah array dengan nama $produk

dengan tiga buah elemen didalamnya. Index akan diberikan otomatis dimulai

dari 0 yaitu sticker, 1 adalah kaos dan 2 adalah jacket.

Page 73: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

70

→ Cara 2

$produk[0] = 'sticker';

$produk[1] = 'kaos';

$produk[2] = 'jacket';

Cara diatas adalah sebuah cara manual yaitu dengan memberi index langsung

pada array.

→ Cara 3

$produk[] = 'sticker';

$produk[] = 'kaos';

$produk[] = 'jacket';

Cara ketiga hampir sama dengan yang pertama, hanya berbeda cara penulisan

saja. Cara ini sangat berguna saat kita akan memberi sebuah nilai pada array

saat looping dimana index akan bertambah secara otomatis.

4.2.3 Mengakses Isi Array

Untuk mengakses sebuah array hal yang diperlukan adalah nama array tersebut

dan index-nya. Dimana penulisan index diapit oleh tanda kurung siku [ ].Perhatikan contoh berikut:

echo $produk[0] . ' ' . $produk[1] . ' ' . $produk[2];

Output dari perintah diatas adalah:

Output 1

Untuk array dengan jumlah yang “bisa” dihitung dengan jari pengaksesan

secara manual mungkin tidak masalah. Namun jika jumlah array mencapai

puluhan bahkan ratusan? Solusinya ya pakai looping.

4.2.4 Looping Array Index Numerik

Pada bab-bab awal kita sudah membahas penggunaan looping. Looping sangat

berguna untuk mengakses array dalam jumlah besar. Pada bagian ini kita juga

sticker kaos jacket

Page 74: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

71

akan membahas foreach() satu- satunya perintah looping yang belum dibahas.

Output dari perintah-perintah looping berikut akan mengacu pada output 1.

Hal ini ditujukan agar memudahkan anda memahami cara kerja array dan

looping itu sendiri.

a. Looping Array dengan for()

// set variabel index ke 0

for ($i=0; $i<3; $i++) {

echo “$produk[$i] ”;}

Hasil yang ditampilkan akan sama dengan output 1.

b. Looping Array dengan while()

// set variabel index ke 0

$i = 0;

while ($i < 3) {

echo “$produk[$i] “;

$i++; // increment $i

}

c. Looping Array dengan foreach()

Nah, inilah saat yang tepat kita berkenalan dengan si foreach(). Looping ini

memang khusus dirancang untuk digunakan dengan array. Jadi jika

memungkinkan sebaiknya gunakan loop tipe ini dibanding yang lain jika

mengakses array.

Syntax dasar dari foreach adalah:

foreach (ekspresi1 as [eskpresi2 => ] ekspresi3) {

// kode yang akan dieksekusi

}

dimana:

• ekspresi1: variabel array yang akan dimanipulasi

• ekpsresi2(opsional): variabel baru tempat menyimpan index array

• ekspresi3: variabel baru penampung nilai dari elemen array

Page 75: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

72

Untuk menghasilkan output seperti output 1, maka penulisan foreach yang

digunakan adalah:

foreach ($produk as $prd) {

echo “$prd “;

}

Pada contoh diatas kita hanya menuliskan ekspresi1 dan ekspresi3.

Penggunaan ekspresi2 dapat anda lihat pada contoh berikut:

foreach ($produk as $index => $prd) {

echo “$index : $prd<br />”;

}

Output yang ditampilkan adalah:

4.2.5 Penerapan Teori Array Index Numerik

Untuk contoh kali ini kita akan coba menampilkan isi dari faktur.txt tapi dengan

tampilan yang lebih baik. Tidak hanya sekedar isinya secara langsung. Ikuti

langkah-langkag berikut:

1. Buka Notepad++

2. Buat file baru didalam direktori htdocs/bab4

3. Ketik kode berikut:

0 : sticker1 : kaos2 : jacket

Page 76: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

73

4. Simpan kembali dengan nama file faktur2.php

5. Arahkan browser anda pada alamat http://localhost/webpro/bab4/faktur2.php

6. Hasilnya akan terlihat seperti gambar 4.3.

TIPS:Anda dapat bereksperimen dengan perintah explode(), misalnya tidakmenggunakan fungsi file untuk memecah baris melainkan dengan explode()dengan separator \n.

Page 77: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

74

Gambar 4.3: Tampilan data faktur lebih baik dari sebelumnya

4.2.6 Array dengan Index String (Associative Array)

Pada kasus tertentu penggunaan associative array lebih baik dibandingkan

dengan array index numerik. Pada associative array, pengaksesan bukan

dengan index angka melainkan string sesuai dengan keinginan kita. Sebagai

contoh kita akan membuat sebuah array $produk seperti sebelumnya namun

dengan associative array.

→ Cara 1

$produk = array( 'stc' => 'sticker', 'ks' => 'kaos', 'jkt' =>

'jacket');

Pada contoh diatas kita memberi index pada sticker dengan stc, kaos dengan ks

dan jacket dengan jkt.

→ Cara 2

$produk = array('stc' => 'sticker');

$produk = array('ks' => 'kaos');

$produk = array('jkt' => 'jacket');

→ Cara 3

$produk['stc'] = 'sticker';

$produk['ks'] = 'kaos';

$produk['jkt'] = 'jacket';

Page 78: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

75

4.2.7 Mengakses Associative Array

Sebenarnya pengaksesan associative array sama dengan array index numerik.

Hal yang diperlukan tentu nama dari array dan nama index yang akan

diakses. Perhatikan contoh berikut, output tampilan dibawah akan sama

dengan output 1 pada bahasan sebelumnya.

echo $produk['stc'] . ' ' . $produk['ks'] . ' ' .$produk['jkt'];

atau

echo “{$produk['stc']} {$produk['ks'} {$produk['jkt']}”;

Jika akan mencetak associative array dalam suatu string maka gunakan tanda {

} (kurung kurawal) sebagai pembungkus array.

4.2.8 Looping pada Associative Array

Karena pada associative array tidak menggunakan angka sebagai index, maka

kita tidak dapat menggunakan looping for pada array tipe ini.

a. Looping dengan foreach()

Associative array memang sangat cocok digunakan dengan loop foreach.

Kesederhanaan syntax foreach membuat lebih mudah dibaca.

foreach ($produk as $index => $prd) {

echo “$index :: $prd <br/>”;

}

Output dari script diatas adalah sebagai berikut:

Setelah keyword “as” index dari array bersifat optional artinya tidak perlu

diikutkan juga tidak apa- apa. Lihat contoh berikut.

foreach ($produk as $prd) {

echo “$prd<br />”;

}

stc :: stickerks :: kaosjkt :: jacket

Page 79: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

76

Output dari potongan script kedua adalah:

4.3 Array Multidimensi

Secara sederhana array multidimensi dapat dianggap sebagai sebuah matriks yang

memiliki baris dan kolom. Oleh karena itu kita dapat membuat array dengan

ukuran 2-dimensi, 3-dimensi, sampai n-dimensi.

4.3.1 Array 2-Dimensi

Bentuk array dua dimensi mirip dengan matriks atau pun suatu koordinat

karena diperlukan dua inputan dalam mengakses isi array yaitu baris dan

kolomnya. Kita akan tetap menggunakan contoh array sebelumnya dalam

ilustrasi berikut ini.

Kode Nama Barang HargaSTC Sticker 7500KOS Kaos 35000JKT Jaket 55000

ATRIBUT PRODUK

Jika kita konversi dalam bentuk array dua dimensi maka salah satu bentuk array

tersebut akan seperti ini:

$produk = array(

array('STC', 'Sticker', 7500),

array('KOS', 'Kaos', 35000),

array('JKT', 'Jaket', 55000)

);

PROD

UK

stickerkaosjacket

Page 80: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

77

Untuk mengakses array 2-dimensi juga tidak berbeda dengan array berdimensi

satu. Hanya saja kita perlu mensupai tambahan yaitu kolom mana yang ingin

diakses. Baris paling awal indexnya adalah 0 dan kolom paling kiri indexnya

adalah 0. Untuk mengakses array tersebut secara manual dapat dilakukan

seperti berikut.

echo $produk[0][0].'#'.$produk[0][1].'#'.$produk[0][2].'#<br/>';

echo $produk[1][0].'#'.$produk[1][1].'#'.$produk[1][2].'#<br/>';

echo $produk[2][0].'#'.$produk[2][1].'#'.$produk[2][2].'#<br/>';

Output dari kode diatas adalah:

Atau menggunakan looping seperti berikut:

for ($i=0; $i<3;$i++) {

for ($j=0; $j<3;$j++) {

echo $produk[$i][$j] . '#';

}

echo '<br/>';

}

Pada contoh diatas kita berasumsi bahwa banyak array dari $produk bersifat

statik yaiu 3. Jadi kita melakukan loop sebanyak 3 kali dimulai dengan index 0,

1, dan 2. Alternatif yang menurut penulis lebih baik adalah penggunaan

associative array pada array $produk diatas. Lihat contoh dibawah.

$produk = array(array('kode'=> 'STC',

'nama_barang' => 'Sticker',

'harga' => 7500),

array('kode' => 'KOS',

'nama_barang' => 'Kaos',

'harga' => 35000),

array('kode' => 'JKT',

'nama_barang' => 'Jaket',

'harga' => 55000),

);

STC#Sticker#7500#KOS#Kaos#35000#JKT#Jaket#55000#

Page 81: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

78

Stiker 7500Kaos

Kaos

35000

55000

Stiker 7500

KaosKaos

3500055000

Untuk mengakses array diatas sama dengan cara mengakses array pada index

numerik. Contoh, untuk menampilkan harga dari Sticker maka penulisannya

$produk[0]['harga']. Berikut ini contoh pengaksesan menggunakan

foreach untuk mendapatkan output yang sama seperti sebelumnya.

foreach ($produk as $p) {

echo $produk['kode'].'#'.$produk['nama_barang'].$produk['harga'].

'#<br/>';

}

TIPS:Penggunaan tipe array index numerik atau string (associative array)sangat bergantung pada situasi. Namun associative relatif lebih mudahdigunakan dibanding index numerik.

4.3.2 Array 3-Dimensi

Jika pada contoh array 2-dimensi diatas array $produk terdiri dari produk dan

attributnya pada array 3-dimensi kita dapat tambahkan sebuah layer

tambahan. Untuk memperjelas lihat ilustrasi di bawah ini.

LARGEMEDIUMSMALL

KODE Nama Barang HargaSTC01 Stiker 7500KOS01 Kaos 35000JKT01 Kaos 55000

Bentuk array dari ilustrasi diatas dapat kita tulis sebagai berikut:

$produk=array( 'small' =>array(array('kode' => 'STC01',

'nama_barang' =>'Sticker','harga' => 7500),

array('kode' => 'KOS01','nama_barang' => 'Kaos','harga' => 35000),

array('kode' => 'JKT01','nama_barang' => 'Jaket','harga' => 55000)

Page 82: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

79

),

'medium' => array(array('kode' => 'STC02','nama_barang' => 'Sticker','harga' => 8000),

array('kode' => 'KOS02','nama_barang' => 'Kaos','harga' => 40000),

array('kode' => 'JKT02','nama_barang' => 'Jaket','harga' => 60000)

),'large' =>array(array('kode' => 'STC03',

'nama_barang' => 'Sticker','harga' => 8500),

array('kode' => 'KOS03','nama_barang' => 'Kaos','harga' => 45000),

array('kode' => 'JKT03','nama_barang' => 'Jaket','harga' => 65000)

));

foreach ($produk as $kategori => $prod) {

echo "Kategori: $kategori";

echo "<br/>===============================<br/>";

foreach ($prod as $item) {

echo $item['kode'].'#'.$item['nama_barang'].'#'.$item['harga'].

'<br/>';

echo '-----------------------------------<br/>';

}

echo '<br/>';

}

Output dari kode diatas adalah sebag.ai berikut:

Kategori: small

===============================STC01#Sticker#7500-----------------------------------KOS01#Kaos#35000-----------------------------------JKT01#Jaket#55000-----------------------------------

Kategori: medium===============================STC02#Sticker#8000-----------------------------------KOS02#Kaos#40000-----------------------------------JKT02#Jaket#60000

Page 83: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

80

-----------------------------------

Kategori: large===============================STC03#Sticker#8500-----------------------------------KOS03#Kaos#45000-----------------------------------JKT03#Jaket#65000-----------------------------------

Dari ilustrasi diatas dapat dilihat bahwa sesungguhnya pembuatan array tidak

terbatas pada 3- dimensi saja melainkan sampai n-dimensi. Namun pada

banyak kasus jumlah dimensi 3 sudah cukup menyelesaikan permasalahan

yang dihadapi.

Page 84: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

81

Bab VKoneksi ke Database MySQL

Di sini kita akan mencoba untuk membuat aplikasi web dengan menggunakan media

penyimpanan database MySQL, langkah pertama silahkan anda aktifkan xamppnya

kemudian silahkan dibuka broser anda, lalu silahkan anda ketik alamat url sebagai

berikut http://localhost/phpmyadmin/

Ikuti langkah-langkah pengerjaan dibawah ini ;

1. Buat nama Database baru di MySQl (Nama Database : dbcrud)

2. Buat nama Tabel baru pada database tersebut (Nama Tabel : siswa )

Tuliskan perintah dibawah ini ;

CREATE TABLE ‘siswa’ (‘siswa_id’ int(11) NOT NULL auto_increment,‘siswa_nis’ int(20) NOT NULL,‘siswa_nama’ varchar(50) NOT NULL,‘siswa_kelas’ varchar(10) NOT NULL,‘siswa_jurusan’ varchar(30) NOT NULL,PRIMARY KEY (‘siswa_id’)) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;3. Buat folder baru di htdocks dengan nama latihan-crud.

4. Buat halaman php dengan disimpan nama file koneksi.php silahkan anda tulis

script dibawah ini lalu disimpan dalam folder latihan-crud,

5. Buat halaman php dengan disimpan nama file index.php silahkan anda tulis scriptdibawah ini.

Page 85: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

82

Page 86: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

83

6. Buat halaman php dengan disimpan nama file tambah.php silahkan anda tulisscript dibawah ini.

Page 87: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

84

7. Buat halaman php dengan disimpan nama file tambah-proses.php silahkan andatulis script dibawah ini.

Page 88: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

85

8. Buat halaman php dengan disimpan nama file edit.php silahkan anda tulis scriptdibawah ini.

Page 89: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

86

9. Buat halaman php dengan disimpan nama file edit-proses.php silahkan anda tulisscript dibawah ini.

Page 90: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

87

10. Buat halaman php dengan disimpan nama file hapus.php silahkan anda tulis scriptdibawah ini.

Page 91: Modul Web Programming dengan PHP dan MySQL

Pemrograman Web PHP Dasar - Edi Ismanto 2015

88

Tampilan perintah CRUD diatas akan terlihat seperti dibawah ini.

Gambar 5.1, tampilan index utama

Gambar 5.2, tampilan menu edit

Gambar 5.2, tampilan menu hapus jika diklik