Anda di halaman 1dari 24

MATA KULIAH PEMROGRAMAN WEB II

(SKB-219)
Silabus : siswa mampu memahami teknik perancangan dan implementasi aplikasi
internet kompleks yang terdiri dari kombinasi HTML, script client side dan program
server side yang digunakan untuk membangun sebuah sistem informasi berbasis WEB.
Materi : HTML, PHP, JavaScript, MySQL, Upload Webserver
Tatap Muka : 1 semester x pertemuan @ 80 menit (2 SKS). Total jam tatap muka.
Aturan :
 Absensi minimal 75%. Jika tidak tercapai, nilai maksimum C
 Berpakaian sopan, tidak menggunakan celana sobek, sendal, kaos oblong, kaos
tanpa kerah, celana pendek, merokok
 Keterlambatan ditoleransi maks. 10 menit. Jika lebih tidak diperkenankan mengisi
absensi
Penilaian:
 Tugas : 25%
 UTS : 25%
 UAS : 50%
Cth : Tugas1 nilai 80, Tugas2 nilai 60, UTS nilai 75, UAS nilai 80
Nilai Rerata Tugas (NRT) : 70
Nilai Akhir : (0.25*NRT) + (0.5*UTS) + (0.5*UAS) = 17.5 + 18.75 + 40 = 76.25 􀃎 B
Note :
Jika nilai rata-rata seluruh peserta D, maka digunakan sistem Penilaian Acuan
Norma/PAN (Cara perhitungan mengacu pada Buku Panduan Akademik STMIK El-
Rahma hal.12)
Referensi :
a. Abdul Kadir, Pemrograman Web Dinamis Menggunakan PHP, 2001
b. Peter Naughton, Java Handbook, 2000
c. Internet
Pendahuluan
Daftar Topik
1. Memahami Konsep Website Dinamis
2. Sejarah singkat PHP
3. Instalasi & spesifikasi PHP
4. Menjalankan Apache dan MySQL server
5. Struktur dasar program PHP
6. Mengenal perintah untuk menampilkan output ke browser
7. Variabel,tipe data,operator-operator dasar dan cara konversi variabel
Website Dinamis
 Perpaduan antara HTML, client-side script (JavaScript), server-side script
(PHP), web server (Apache), database server (MySQL)
 Ilustrasi website dinamis:

Sejarah Singkat PHP


 Dibuat oleh Rasmus Lerdorf pada tahun 1995
 Awalnya merupakan skrip-skrip Perl yang dibuat untuk membuat web dinamis
pada homepage pribadinya. Skrip-skrip tersebut diberi nama Personal Home
Page (PHP)
 Ditulis ulang menggunakan bahasa C dan lahir PHP/F1 tahun 1996
 Saat tulisan ini dibuat, versi terakhir adalah PHP 5 yang dengan kemampuan
OOP yang lebih baik

Instalasi & Spesifikasi PHP


 Software yang dibutuhkan : Apache,PHP,MySQL,PHPEitor/PHPCoder
 Download versi terakhir Apache, MySQL, PHP (www.php.net) dan instal
ketiganya, atau
 Download PHPTriad (searc di google) dan instal (pada PHPTriad terdapat
Apache Server, MySQL dan PHP dalam satu paket instalasi)
 Intalasi PHPTriad akan membuat folder berikut di drive C

 Untuk mengetik program PHP, gunakan editor PHPEd atau PHPCoder. Bisa
juga menggunakan Macromedia Dreamwaver
 PHP adalah bahasa pemrograman berbasis server
 Dapat menggunakan web server Apache, PWS (Personal Web Server) maupun
IIS (Internet Information server) dan Xitami
 Bersifat open-source 􀃆 LAMP (LinuxApacheMySQLPhp), Multi-platform, library
yang lengkap,mendukung banyak jenis database

Menjalankan Apache dan MySQL server


 Apache harus dijalankan agar script PHP dapat dieksekusi. Klik menu Start >
Programs > PHP Triad > Start Apache
 Jika mengakses database MySQL, jalankan server MySQL dari menu Start >
Programs > PHP Triad > Start MySQL
Untuk mencoba apakah PHP sudah terinstal dengan benar, ketik htpp://localhost dari
browser.
Struktur dasar program PHP
Script PHP dapat disisipkan kedalam HTML. Untuk membedakan script PHP dengan
tag-tag HTML,
digunakan dengan tag-tag PHP sbb :
 <? …. ?>
 <% … %>
 <?php … ?>
Diantara ketiga ini tag ketiga merupakan tag yang paling aman karena memberikan
tanda yang lebih jelas dan pada umumnya dimengerti oleh web server
Contoh script PHP yang disisipkan kedalam HTML:
File : tes.php
<HTML>
<HEAD>
<TITLE>PHP Mania</TITLE>
</HEAD>
<BODY> <?php echo "<B>PHP untuk halaman web yang dinamis</B>"; ?>
</BODY>
</HTML>
Simpan ke folder C:\apache\htdocs. Untuk menjalankannya ketik
http://localhost/tes.php

Perintah echo, print dan printf


Untuk menampilkan sesuatu ke browser bisa menggunakan perintah echo atau
printf. Contoh:

File : tampil.php
<?
echo "Teks ini ditampilkan menggunakan perintah echo<BR>";
print "Teks ini ditampilkan menggunakan perintah print<BR>";
printf("Teks ini ditampilkan menggunakan perintah printf()<BR>");
echo("Teks ini ditampilkan menggunakan perintah echo()<BR>");
print("Teks ini ditampilkan menggunakan perintah print()<BR>");
echo "\" (petik ganda) ditampilkan dgn karakter khusus \\\"<BR>";
echo "\\ (backslash) ditampilkan dgn karakter khusus \\\\<BR>";
echo "\$ (dollar) ditampilkan dgn karakter khusus \\\$<BR>";
echo "Menampilkan karakter hexa, gunakan \\x00 s/d \\xFF.Mis ini : \
xF5";
?>
<HTML>
<BODY>
<H1>
<?="Teks ini ditampilkan dengan menyisipkan tanda = di tag HTML"?>
</H1>
</BODY>
</HTML>
Perintah echo,print dan printf bisa menggunakan kurung (), misal : echo(“Hallo”)
akan sama outputnya
dengan echo “Hallo”. Namun perintah echo tidak bisa disisipkan ke tag HTML
bersama dengan tanda = (sama dengan).
Perintah echo,print dan printf bisa menggunakan petik tunggal ‘ maupun petik ganda
“. Perbedannya, jika menggunakan petik ganda, jika ada nama variabel didalam
petik ganda tersebut maka nilai variabel tersebut akan ditampilkan.

Variabel, Konstanta,Tipe Data, Operator Dasar


Tipe data dasar PHP adalah integer, double dan string. Untuk memberi nilai variabel
menggunakan tanda = (sama dengan). Variabel dan konstanta bersifat case-
sensitive (PHP membedakan huruf besar & kecil). Variabel tidak perlu dideklarasikan,
tetapi konstanta harus dideklarasikan. Ketentuan penamaan variabel PHP :
• Dimulai dengan tanda $
• Tidak boleh dimulai dengan angka
• Tidak boleh ada spasi dan tanda baca (koma,titik,tanda seru,dst)
• Tidak boleh menggunakan perintah yg sudah digunakan PHP;
Beberapa operator dasar a.l:
• Operator aritmatika : +,-,*, /, % (sisa pembagian), ++ (increment), --
(decrement)
• Operator penugasan : +=, -=, /=, %=, .=
• Operator pembandingan : == (sama dengan), <, >, <=, >=, != atau <>
• Operator logika : and atau &&, or atau ||, ! (not), xor
• Untuk menggabungkan variabel/konstanta gunakan operator . (titik)
Contoh :

File : var.php
<H1>Contoh Variabel,Konstanta dan Operator</H1>
<?
echo "<B>Variabel dan operator</B><BR>";
$a = 5.25;
$b = 10;
$c = $a+$b;
// Ini adalah komenter per baris
print "\$a = $a, \$b = $b, \$c = $c<BR>";
$a++;
print "\$a++ ekivalen dgn \$a = \$a+1, \$a menjadi $a<BR>";
$a += 10;
print "\$a += 10 ekivalen dgn \$a = \$a+10, \$a menjadi $a<BR>";
$a = "SEPULUH";
print "Sekarang \$a nilainya $a<BR>";
echo "<B>Penggunaan petik ganda dan petik tunggal pada
variabel</B><BR>";
$var = "string";
$ket1 = "Contoh $var dengan tanda petik ganda";
$ket2 = 'Contoh $var dengan tanda petik tunggal';
echo "$ket1<BR>";
echo "$ket2<BR>";
/* Ini komentar per blok
yg diawali dengan /* dan diakhiri
dengan */
echo "<B>Penggunaan konstanta</B><BR>";
define("Judul", "WebProg2");
define("PHI", 3.1425);
print "Isi konstanta Judul = " . Judul . "<BR>";
printf("Isi konstanta PHI = %f<BR>", PHI);
$r = 10;
$kel = 2*PHI*$r*$r;
echo "Jari-jari r = $r, keliling = $kel<BR>";
?>

Konversi Tipe Data Variabel


Untuk mengkonversi tipe data sebuah variabel dapat menggunakan perintah settype,
intval, doubleval, strval, ataupun dengan cara casting : (integer), (double) atau
(string). Perintah intval, doubleval, strval serta casting tidak merubah tipe data
variabel ybs, tetapi hanya mengkonversi nilainya saja.
Contoh :

File : konversi.php
<H1>Contoh Konversi Variabel</H1>
<?
echo "<B>Konversi dengan settype</B><BR>";
$ipk = 3.75;
echo "Isi varibel \$ipk = $ipk<BR>";
settype($ipk,"double");
echo "Sekarang bertipe " . gettype($ipk) . " Nilainya = $ipk<BR>";
settype($ipk,"integer");
echo "Sekarang bertipe " . gettype($ipk) . " Nilainya = $ipk<BR>";
$ipk ++;
echo "\$ipk++ menjadi $ipk<BR>";
settype($ipk,"string");
echo "Sekarang bertipe " . gettype($ipk) . " Nilainya = $ipk<BR>";
echo "<B>Konversi dengan intval,doubleval,strval</B><BR>";
$ipk = "3.75 (Tiga koma Nol Tujuh Lima)";
printf("Tipe string : $ipk<BR>");
echo "Sekarang bertipe " . gettype($ipk) . " Nilainya = " .
doubleval($ipk) ."<BR>";
echo "Sekarang bertipe " . gettype($ipk) . " Nilainya = " . intval($ipk)
."<BR>";
$ipk ++;
echo "\$ipk++ menjadi $ipk<BR>";
echo "<B>Konversi dengan casting (integer),(double),(string)</B><BR>";
$ipk = "3.75 (Tiga koma Nol Tujuh Lima)";
printf("Tipe string : $ipk<BR>");
echo "Sekarang bertipe " . gettype($ipk) . " Nilainya = " . (double)
($ipk) ."<BR>";
echo "Sekarang bertipe " . gettype($ipk) . " Nilainya = " . (integer)
($ipk) ."<BR>";
$ipk ++;
echo "\$ipk++ menjadi $ipk";
?>

Tipe Data Array


Array adalah sebuah tipe variabel yang dapat menyimpan lebih dari satu buah nilai
dan setiap nilai yang dikandungnya dapat diakses dengan indeks. Berbeda dengan
array pada bahasa pemrograman lainnya, nilai yang disimpan dalam array pada PHP
tidak harus bertipe data yang sama. Sebuah array PHP dapat menyimpan tipe data
campuran.
Contoh :

File : array.php
<H1>Contoh Array</H1>
<?
$nil_huruf = array("A","B","C","D","E");
echo "$nil_huruf[0] $nil_huruf[1] $nil_huruf[2]<BR>";
$ket_nil[] = "Memuaskan";
$ket_nil[] = "Baik";
echo "$ket_nil[0] $ket_nil[1]<BR>";
echo "<h3>Indeks array tidak harus urut dan tidak harus dimulai dari
nol</h3>";
$nil[10] = 60;
$nil[5] = 70;
echo "$nil[10] $nil[5]<BR>";
echo "<h3>Array dgn indeks string</h3>";
$nilai = array("Memuaskan" => "A",
"Baik" => "B");
echo "$nilai[Memuaskan] $nilai[Baik]<BR>";
echo "<h3>String juga dpt diperlakukan seperti array</h3>";
$ket = "Baik";
echo "$ket[0]$ket[1]$ket[2]$ket[3]<BR>";
echo "<h3>Array dengan isi yang berbeda tipe</h3>";
$campur = array("IPK", "=", 2.5);
echo "$campur[0]$campur[1]$campur[2]<BR>";
?>
Array Multidimensi, Loop dan Kondisi, QueryString
Daftar Topik
1. Memahami cara pembuatan array mutidimensi dan cara bekerjanya
2. Memahami cara penggunaan loop dan kondisi
3. Memahami konsep query string dan penggunaannya

Array Multidimensi
Array pada PHP dapat memuat tipe data array juga. Dengan sifat ini dapat dibuat
sebuah array yang berdimensi dua,tiga,dst. Misalkan anda hendak menyimpan data
peserta kursus sbb:
Nama Kursus Peserta
PHP Anto, Edi, Sita
Delphi Anto, Rina
MySQL Nana, Dito
Maka dapat dibuat skrip sbb:

File : kursus.php
<?
$kursus = array("PHP" => array("Anto","Edi","Sita"),
"Delphi" => array("Anto","Rina"),
"MySQL" => array("Nana","Dito"));
echo "<h1>Daftar Peserta Kursus</h1><BR>";
while (list($idx1,$nilai1) = each($kursus))
{
echo "<b>Peserta Kursus $idx1</b><BR>";
$no = 0;
while (list($idx1,$nilai2) = each($nilai1))
{
$no++;
echo "$no.$nilai2<BR>";
}
}
?>

Perintah list dan each


Perintah each(var_array) akan menghasilkan sebuah array yg berisi indeks dan nilai
array saat ini.
Setiap kali terjadi pemanggilan each, indeks akan dimajukan. Sedangkan perintah
list digunakan untuk menampung variable yang dihasilkan dari sebuah array.
Contoh:

File : list_each.php
<?
echo "<h1>Contoh penggunaan list dan each untuk array</h1>";
$kursus = array("PHP" => array("Anto","Edi","Sita"),
"Delphi" => array("Anto","Rina"),
"MySQL" => array("Nana","Dito"));
echo "<h2>Daftar Peserta Kursus</h2><BR>";
// menampilkan nama kursus PHP dan pesertanya
list($idx,$val) = each($kursus);
echo "<b>Peserta Kursus $idx</b><BR>";
list($idx1,$val1) = each($val);
echo "$val1<BR>";
list($idx1,$val1) = each($val);
echo "$val1<BR>";
list($idx1,$val1) = each($val);
echo "$val1<BR>";
// menampilkan nama kursus Delphi dan pesertanya
list($idx,$val) = each($kursus);
echo "<b>Peserta Kursus $idx</b><BR>";
list($idx1,$val1) = each($val);
echo "$val1<BR>";
list($idx1,$val1) = each($val);
echo "$val1<BR>";
// menampilkan nama kursus MySQL dan pesertanya
list($idx,$val) = each($kursus);
echo "<b>Peserta Kursus $idx</b><BR>";
list($idx1,$val1) = each($val);
echo "$val1<BR>";
list($idx1,$val1) = each($val);
echo "$val1<BR>";
?>

Loop
Perintah for
Digunakan untuk melakukan perulangan dengan jumlah perulangan yang telah pasti.
Bentuknya :
for (nil_awal; kondisi_stop; step)
{
perintah;

}
Ket:
• nil_awal : adalah sebuah variable yang menentukan nilai awal loop.
• kondisi_stop : sebuah kondisi yang menentukan berhentinya loop
• step : untuk menentukan increment atau decrement variable pada nil_awal
Perintah while
Digunakan untuk melakukan perulangan dengan banyaknya jumlah perulangan
bergantung pada kondisi yang diberikan. Pengulangan akan terus terjadi selama
kondisi bernilai TRUE
Bentuknya :
while (kondisi)
{
perintah;
...
}
Perintah do-while
Mirip seperti while, perbedaannya kondisi dicek belakangan. Dengan demikian
jumlah pengulangan yang terjadi minimal 1 kali.
Bentuknya :
do
{
perintah;
...
} while (kondisi);
Perintah break dan continue
Perintah break digunakan untuk keluar dari sebuah loop meskipun loop tersebut
belum selesai.
Sedangkan perintah continue digunakan untuk melanjutkan loop ke iterasi
berikutnya.
Perintah foreach
Mulai PHP versi 4 disediakan perintah foreach yang digunakan untuk mempermudah
loop pada variable
array. Terdapat 2 bentuk :
Ket :
• var_array adalah variable bertipe array baik berdimensi satu atau lebih
• $key adalah variable yang berisi indeks array untuk setiap iterasi loop
• $value adalah variable yang berisi nilai array untuk setiap iterasi loop
Bentuk 1 :
foreach (var_array as $value)
{
perintah;
...
}
Bentuk 2 :
foreach (var_array as $key => $value)
{
perintah;
...
}
Contoh skrip penggunaan loop:
File : loop.php
<?
echo "<H1>Contoh Penggunaan Loop</H1><BR>";
echo "<b>Loop dari 1 s/d 5 dengan perintah for</b><BR>";
for($i=1;$i<=5;$i++)
echo "Isi variabel i = $i<BR>";
echo "<b>Loop dari 5 s/d 1 dengan perintah while</b><BR>";
$i = 5;
while ($i >= 1)
{
echo "Isi variabel i = $i<BR>";
$i--;
}
echo "<b>Loop dari 5 s/d 1 dengan perintah do-while</b><BR>";
$i = 5;
do
{
echo "Isi variabel i = $i<BR>";
$i--;
} while ($i >= 1);
$arr = array("A","B","C");
echo "<b>Loop dengan perintah foreach bentuk-1</b><BR>";
foreach($arr as $val)
echo "$val<BR>";
echo "<b>Loop dengan perintah foreach bentuk-2</b><BR>";
foreach($arr as $key => $val)
echo "\$key = $key, \$val = $val<BR>";
echo "<b>Loop foreach bertingkat bentuk-2 untuk array 2
dimensi</b><BR>";
$hobi = array("Antok" => array("makan","berenang"),
"Siska" => array("makan","tidur","membaca"),
"Joko" => array("ngeceng","komputer"));
foreach($hobi as $key => $val)
{
echo "Namanya <b>$key</b>.Hobinya:<BR>";
foreach($val as $key2 => $val2)
echo $key2+1 . ".$val2<BR>";
}
?>

Kondisi
Kondisi if
Ada beberapa bentuk if,yaitu
Bentuk-1 :
if (kondisi)
{
perintah_jika_ true;

}
Bentuk-2 :
if (kondisi)
{
perintah_jika_ true;

} else
{
perintah_jika_ false;

}
Bentuk-3 :
if (kondisi1)
{
perintah_jika_kondisi1_true;

} else if (kondisi2)
{
perintah_jika_kondisi2_true;

}
….
else if (kondisi_n)
{
perintah_jika_kondisi_n_true;

} else
{
perintah_jika_semua_kondisi_false;

}

Kondisi switch
Bentuk switch dalam kondisi tertentu bisa digunakan untuk menyederhakan bentuk if
yang bertingkat
(if..elseif..elseif..else).
Bentuknya:
switch (variabel)
{
case nilai1:
perintah_jika_variabel_bernilai_nilai1;
….
break;
case nilai2:
perintah_jika_variabel_bernilai_nilai2;
….
break;
case nilai_n:
perintah_jika_variabel_bernilai_nilai_n;
….
break;
default:
perintah_jika_nilai_variabel_tdk_ada_yg_cocok;
….
break;
}
Ket : Nilai variable akan dicocokkan pada masing-masing nilai pada case (nilai1,2…
nilai_n). Jika salah satu nilai cocok dengan nilai variable, maka perintah ybs akan
dikerjakan. Jika tidak ada nilai yg cocok, maka perintah pada blok default akan
dikerjakan. Perintah break wajib dituliskan.

Operator ? :
Operator ini disebut juga operator tertiary karena operator ini melibatkan tiga buah
operand.
Bentuknya :
kondisi ? nilai_1 : nilai_2
Ket : jika kondisi bernilai true, maka hasilnya adalah nilai_1, sebaliknya hasilnya
adalah nilai_2.
Catatan: operator ini tidak bisa mengembalikan lebih dari satu buah nilai.
Contoh skrip penggunaan kondisi

File : kond_if.php
<?
echo "<H2>Contoh Penggunaan Kondisi if..else</H2><BR>";
echo "Hari ini hari ";
$hari = date("l");
if ($hari == "Sunday") echo "Minggu";
else if ($hari == "Monday") echo "Senin";
else if ($hari == "Tuesday") echo "Selasa";
else if ($hari == "Wednesday") echo "Rabu";
else if ($hari == "Thursday") echo "Kamis";
else if ($hari == "Friday") echo "Jum'at";
else if ($hari == "Saturday") echo "Sabtu";
else echo "ga tau";
?>

File : kond_switch.php
<?
echo "<H2>Contoh Penggunaan Kondisi switch..case</H2><BR>";
echo "Hari ini hari ";
$hari = date("l");
switch ($hari)
{
case "Sunday":
echo "Minggu";
break;
case "Monday":
echo "Senin";
break;
case "Tuesday":
echo "Selasa";
break;
case "Wednesday":
echo "Rabu";
break;
case "Thursday":
echo "Kamis";
break;
case "Friday":
echo "Jum'at";
break;
case "Saturday":
echo "Sabtu";
break;
default:
echo "ga tau";
break;
}
?>

File : kond_tertiary.php
<?
echo "<H2>Contoh Penggunaan Kondisi tertiary</H2><BR>";
$bil1 = 10;
$bil2 = 20;
echo "Bil1 = $bil1<br>";
echo "Bil2 = $bil2<br>";
echo "Bilangan terbesar: " . ($bil1 > $bil2 ? $bil1 : $bil2);
// echo "Bilangan terbesar: " . ($bil1 > $bil2 ? echo($bil1) :
echo($bil2));
?>

Query String
Query string merupakan fasilitas pada standar HTTP. Dengan query string, pengguna
dapat memberikan input ke skrip PHP melalui URL address. Misalkan anda memiliki
skrip berikut:

File : cek_query.php
<?
echo "<H2>Cek Query String</H2><BR>";
if ($QUERY_STRING != null)
echo "Query String: <b>$QUERY_STRING</b>";
else echo "Tidak ada query string";
?>

Jika anda panggil skrip dengan URL : http://localhost/cek_query.php, maka output


pada browser :
Sekarang coba anda panggil dengan URL
http://localhost/cek_query.php?nama=Amir&kampus=ELRAHMA, maka output pada
browser menjad:

Catatan : Variabel $QUERY_STRING adalah variable bawaan PHP yang terisi secara
otomatis jika pengguna menyertakan query (parameter) pada URL.
Pada URL http://localhost/cek_query.php?nama=Amir&kampus=ELRAHMA,
?nama=Amir&kampus=ELRAHMA adalah query string (sering disebut juga
parameter) yang terdiri dari
dua buah parameter yaitu :
• nama bernilai Amir
• kampus bernilai ELRAHMA
PHP otomatis akan membuat variable untuk setiap parameter. Contoh:

File : print_query.php
<?
echo "<H2>Tampilkan Query String</H2><BR>";
if (isset($nama))
echo "Parameter \$nama nilainya <b>$nama</b><br>";
else echo "Parameter \$nama belum ditentukan<br>";
if (isset($kampus))
echo "Parameter \$kampus nilainya <b>$kampus</b><br>";
else echo "Parameter \$kampus belum ditentukan<br>";
?>
Catatan: perintah isset akan menghasilkan TRUE jika sebuah variable telah
didefenisikan.

Soal
1. Buat skrip PHP untuk menampilkan output berikut pada browser:

Tips : gunakan array dua dimensi dan loop foreach.


2. Buatlah sebuah skrip PHP yang menguji query string nil_ang dan mencari nilai
hurufnya dengan ketentuan sbb:
80 ≤ nil_ang ≤ 100, nil_hur = “A”
60 ≤ nil_ang ≤ 79, nil_hur = “B”
40 ≤ nil_ang ≤ 59, nil_hur = “C”
20 ≤ nil_ang ≤ 39, nil_hur = “D”
0 ≤ nil_ang ≤ 19, nil_hur = “E”
Output pada browser sbb (misalkan query string nil_ang adalah 80):
Nilai Angka : 80
Nilai Huruf : A

Fungsi, Include
Daftar Topik
1. Memahami konsep function pada PHP
2. Memahami konsep pemrograman modular dengan perintah include dan
include_once
Fungsi
 Sering disebut juga sub-program
 Bertujuan untuk melakukan suatu tugas tertentu
 Fungsi dapat dipanggil berkali-kali dibagian manapun dalam skrip
 Fungsi yang telah diuji dengan baik dapat digunakan untuk program aplikasi
lain
 Dengan memecah sebuah program besar dan panjang menjadi beberapa
fungsi, pelacakan
kesalahan lebih mudah dilakukan
Mendeklarasikan fungsi :
function nama_fungsi(parameter)
{

skrip2 program fungsi;

return nilai;
}
Keterangan:
• nama_fungsi tidak boleh ada spasi, tanda baca, titik, koma
• parameter tidak wajib disertakan
• perintah return digunakan jika function yang dibuat bertujuan untuk
mengembalikan sebuah
nilai

Contoh fungsi tanpa parameter dan return

File : say_hello.php
<?
function print_header()
{
echo "<B>Contoh penggunaan fungsi</B><BR>";
}
function print_footer()
{
echo "<B>Function made easy !</B><BR>";
}
print_header();
for($i=1;$i<=5;$i++)
{
say_hello();
}
print_footer();
function say_hello()
{
echo "Welcome to the Jungle !<BR>";
}
?>

Contoh fungsi dengan parameter dan return

File : konversi_rp.php
<?
define("rate",10500);
function konversi_rp($rp)
{
return $rp * rate;
}
echo "<h2>Tabel Konversi Rupiah</h2>";
echo "<h3>Rate Rp.". number_format(rate,"0",",",".") . "</h3>";
echo "<table border=1>
<tr>
<td align=center>No.</td>
<td align=center>Rupiah</td>
<td align=center>Dollar</td>
</tr>";
for($i=1000,$no=1;$i<=10000;$i+=1000,$no++)
{
$dol = konversi_rp($i);
$dol = number_format($dol,"0",",",".");
$rp = number_format($i,"0",",",".");
echo "<tr>
<td align=right>$no</td>
<td align=right>$rp</td>
<td align=right>$dol</td>
</tr>";
}
?>
Ket :
• perintah number_format adalah fungsi PHP utk memformat sebuah bilangan.
Sintaksnya:
number_format(var_numeric, num_decimal, decimal_sep, thousand_sep);
var_numeric : variable berisi data numeric (int atau float)
num_decimal : jumlah angka dibelakang decimal
decimal_sep : karakter pemisah angka decimal
thousand_sep : karakter pemisah angka ribuan
• perintah for($i=1000,$no=1;$i<=10000;$i+=1000,$no++) mendeklarasikan
dua buah variable yaitu $i dimulai dari 1000 s/d 10000 increment 1000 dan variable
$no dimulai dari 1 increment 1
Contoh fungsi dengan parameter default

File : print_teks.php
<?
function tulis_teks($teks, $jumlah = 1)
{
for($i=1;$i<=$jumlah;$i++)
echo "$teks<BR>";
}
tulis_teks("Teks ini muncul satu kali");
tulis_teks("Teks ini muncul lima kali", 5);
?>
Ket : jika parameter $jumlah tidak disebutkan pada program pemanggilnya, maka
nilainya dianggap 1
Memberi nilai parameter (parameter passing) By Value dan By Reference
Secara bawaan, nilai yang diberikan ke fungsi melalui parameter fungsi dilewatkan
berdasarkan nilai (passing by value), artinya perubahan nilai yang dilakukan didalam
fungsi tersebut tidak mempengaruhi nilai aslinya. Sedangkan jika di-passing by
reference, maka perubahan nilai akan mempengaruhi nilai aslinya sehingga nilai
parameter setelah selesai diproses didalam fungsi akan berubah.
Contoh fungsi dengan passing by value

File : pass_value.php
<?
function ganti($x)
{
$x = $x + 10;
echo "Nilai variabel \$x di function ganti = $x<BR>";
}
$x = 5;
echo "Nilai variabel \$x sebelum pemanggilan function ganti = $x<BR>";
ganti($x);
echo "Nilai variabel \$x sesudah pemanggilan function ganti = $x<BR>";
?>
Untuk membuat parameter $x di-passing by reference tambahkan symbol & didepan
parameter yg diinginkan, sehingga deklarasi fungsi menjadi function ganti(&$x)

Variabel Lokal dan Global


Variabel yang berada di dalam sebuah fungsi hanya dikenali oleh fungsi tersebut saja
dan tidak dikenali oleh fungsi lain. Variabel ini disebut variable local. Untuk
menjadikan sebuah variable menjadi variable global ada dua cara, yaitu
menambahkan perintah global atau menggunakan array bawaan PHP $GLOBALS.
Contoh fungsi dengan variable Lokal dan Global

File : local_global.php
<?
function luas()
{
global $lebar,$panjang;
$luas = $panjang * $lebar;
return $luas;
}
function keliling()
{
$kel = (2*$GLOBALS["panjang"]) + (2*$GLOBALS["lebar"]);
return $kel;
}
function rubah()
{
$GLOBALS["panjang"] = 20;
$GLOBALS["lebar"] = 50;
}
$lebar = 5;
$panjang = 10;
echo "Panjang = $panjang<BR>";
echo "Lebar = $lebar<BR>";
echo "Luas = " . luas() . "<BR>";
echo "Keliling = " . keliling() . "<BR><BR>";
rubah();
echo "Panjang = $panjang<BR>";
echo "Lebar = $lebar<BR>";
echo "Luas = " . luas() . "<BR>";
echo "Keliling = " . keliling() . "<BR>";
?>
Penggunaan Fungsi dalam perintah array_walk
PHP memiliki fungsi array_walk yang dapat digabungkan bersama-sama dengan
fungsi. Bentuknya:
array_walk(var_array, fungsi);
Ket :
• var_array : variable bertipe array
• fungsi : nama fungsi yang dipanggil
Contoh fungsi dengan variable Lokal dan Global

File : arr_walk.php
<?
function kuadrat($bil)
{
$n = $bil * $bil;
echo "$n,";
}
$bil = array(0,1,2,3,4,5);
echo "Isi variabel array \$bil sebelum pemanggilan array_walk :";
foreach($bil as $key => $val)
echo "$val,";
echo "<BR>";
echo "Isi variabel array \$bil pada saat pemanggilan array_walk :";
array_walk($bil,"kuadrat");
?>
Perintah array_walk($bil,”kuadrat”) sama saja dengan perintah sbb:
foreach($bil as $key => $val)
kuadrat($val);

Perintah include, include_once


Perintah include dan include_once digunakan untuk menyertakan skrip PHP yang
disimpan dalam file terpisah. Ini sangat berguna jika Anda membuat sekumpulan
fungsi atau defenisi konstanta yang sering digunakan dalam berbagai aplikasi PHP
Anda. Dalam hal ini Anda cukup menuliskan kode tersebut sekali saja dan
menyimpannya kedalam sebuah file, lalu untuk memanggil file tersebut bisa
menggunakan perintah include atau include_once.
Perintah include dan include_once mengasumsikan bahwa skrip yang terdapat pada
file yang dipanggil adalah HTML, dengan demikian jika ingin menuliskan skrip PHP
maka harus menuliskannya didalam tag PHP (<? dan ?>)
Perbedaan perintah include dan include_once adalah, perintah include bisa dituliskan
didalam loop dan pencabangan, sedangkan perintah include_once tidak bisa.
Perintah include_once digunakan untuk menghindari konflik akibat penamaan fungsi
dengan nama yang sama tapi dituliskan didalam dua file yang berbeda.
Contoh deklarasi fungsi pada file terpisah:

File : lib_luas_kel.php
<?
function luas($panjang,$lebar)
{
$luas = $panjang * $lebar;
return $luas;
}
function keliling($panjang,$lebar)
{
$kel = (2*$panjang) + (2*$lebar);
return $kel;
}
?>

Contoh pemanggilan fungsi yang ditulis didalam file terpisah

File : include1.php
<?
include("lib_luas_kel.php");
$lebar = 5;
$panjang = 10;
echo "Panjang = $panjang<BR>";
echo "Lebar = $lebar<BR>";
echo "Luas = " . luas($panjang,$lebar) . "<BR>";
echo "Keliling = " . keliling($panjang,$lebar) . "<BR><BR>";
?>

Contoh tiga buah file skrip PHP terpisah (teks1.php, teks2.php, teks3.php:

File : teks1.php
<?
echo "Ini file teks1.php<BR>";
?>

File : teks2.php
<?
echo "Ini file teks2.php<BR>";
?>

File : teks3.php
<?
echo "Ini file teks3.php<BR>";
?>

Contoh pemanggilan ketiga file PHP dengan perintah foreach


File : include2.php
<?
$nm_file = array("teks1.php","teks2.php","teks3.php");
foreach($nm_file as $key => $val)
include($val);
?>

Contoh penggunaan include_once untuk mencegah konflik nama fungsi

File : judul.php
<?
define("PERUSH","PT.NBC GROUP");
define("ALAMAT","Condong Catur");
function tulis_nama()
{
echo PERUSH . "<BR>";
}
?>

File : print_alamat.php
<?
include_once("judul.php");
//include(“judul.php”);
function tulis_alamat()
{
echo ALAMAT . "<BR>";
}
?>
File : tampil.php
<?
include("judul.php");
include("print_alamat.php");
tulis_nama();
tulis_alamat();
?>

Soal
Buat skrip nilai.php yang dan dijalankan dengan parameter dan output sbb:

Ketentuan :
80 ≤ nil_ang ≤ 100, nil_hur = “A”, kualitas = 4
60 ≤ nil_ang ≤ 79, nil_hur = “B”, kualitas = 3
40 ≤ nil_ang ≤ 59, nil_hur = “C”, kualitas = 2
20 ≤ nil_ang ≤ 39, nil_hur = “D”, kualitas = 1
0 ≤ nil_ang ≤ 19, nil_hur = “E”, kualitas = 0

Untuk mengkonversi nilai angka menjadi nilai huruf, buatlah sebuah function
bernama konversi_nh($nil_ang), dan untuk mencari kualitas nilai huruf buatlah
function bernama kualitas($nh). Kedua function ini disimpan ke dalam file bernama
lib_nilai.php dan dipanggil dari skrip nilai.php

Jika parameter tidak dituliskan pada address bar, output menjadi sbb:

File Teks dan Form


Daftar Topik
1. Memahami cara pemrograman file teks dengan PHP
2. Memahami konsep form dan hubungannya dengan PHP
File Teks
Berikut ini beberapa fungsi PHP yang penting diketahui untuk bekerja dengan file
teks.
Membuka file teks
$fid = fopen(nama_file, mode);
Ket :
• nama_file : variable atau string yang berisi nama file teks yang akan dibuka. Jika
lokasi folder tidak disertakan, maka file akan dicari pada lokasi folder tempat skrip
PHP yang memanggilnya berada
• mode : modus pembukaan file :
o “r” : readonly
o “r+” : read/write
o “w” : overwrite (jika file belum ada, file akan dibuat, jika sudah ada isi file
dihapus)
o “w+” : read/overwrite
o “a” : append (data baru akan direkam diakhir file)
o “a+” : mirip seperti “a”, jika file belum ada, file akan dibuat
Merekam data ke dalam file teks
fputs(fid, data);
Ket :
• fid : variable identifier file (didapatkan ketika membuka file dengan fopen)
• data : variabel atau sembarang data yang akan direkam
Note : file jangan dibuka dengan mode “r”
Membaca data dari dalam file teks
var = fgets(fid, panjang);
Ket :
• var : variabel bertipe string yang akan menampung data hasil pembacaan
• panjang : jumlah karakter yang akan dibaca
Note : file harus dibuka dengan mode “r” atau “r+” atau “w+”
Mendeteksi akhir file
Gunakan fungsi feof(fid); yang akan menghasilkan TRUE jika posisi pembacaan
sudah diakhir file dan
sebaliknya
Menutup file
Gunakan fungsi fclose(fid);
Implementasi fungsi-fungsi diatas dapat dilihat pada pembahasan berikut ini.
Form
Adalah salah satu fasilitas pada HTML yang memungkinkan client mengirimkan data
melalui HTML.
Bentuk tag form sbb:
<form name=nama_form method=metode action=aksi>
….
</form>
Ket :
• nama_form : nama form (tidak harus diisi)
• metode : POST atau GET (dijelaskan dibawah)
• aksi : nama file skrip PHP yang akan memproses data pada form
Sebagai contoh untuk membuat form yang meminta input dari user dua buah nilai
dan memeriksa nilai
terbesar dan menampilkan outputnya:

File : terbesar.htm
<html>
<body>
<h2>Input dua buah angka :</h2>
<form method=post action=terbesar.php>
Bilangan pertama :<input type=text size=3 name=bil1>
<BR>
Bilangan kedua :<input type=text size=3 name=bil2>
<BR>
<input type=submit name=submit value='Cek'>
<input type=reset>
</form>
</body>
</html>

File : terbesar.php
<?
if ($submit)
{
if ($bil1 > $bil2) echo "$bil1 lebih besar dari $bil2";
elseif ($bil1 < $bil2) echo "$bil1 lebih kecil dari $bil2";
else echo "$bil1 sama dengan $bil2";
}
?>
Pada file terbesar.htm yang penting untuk diperhatikan sbb:
<form method=post action=terbesar.php>
• method=post : metode yang digunakan adalah POST artinya data form yang dikirim
ke server
tidak akan tampil pada URL (address yg diketik di browser). Jika menggunakan GET
maka data
akan terlihat pada URL
• action = terbesar.php : data form akan diserahkan ke skrip terbesar.php
<input type=text size=3 name=bil1>
Membuat text box untuk input bilangan pertama. Text box diberi nama bil1. Dengan
demikian data
yang diinput akan tersimpan pada variable bil1
<input type=text size=3 name=bil2>
Membuat text box untuk input bilangan kedua. Text box diberi nama bil1. Dengan
demikian data yang
diinput akan tersimpan pada variable bil2
<input type=submit name=submit value='Cek Terbesar'>
Membuat tombol submit yang jika diklik akan memerintahkan browser untuk
menyerahkan data form
ke skrip terbesar.php
Jika text box pertama diisi dengan angka 3 dan text box kedua diisi dengan angka 1
dan tombol submit
ditekan,maka browser akan membuat URL sbb :
http://localhost/terbesar.php?bil1=2&bil2=1&submit=Cek
Maka skrip terbesar.php akan menerima query string diatas sehingga tercipta 3 buah
variable yaitu “
• $bil1 berisi angka 2
• $bil2 berisi angka 1
• $submit berisi string Cek
Sekarang perhatikan bagian skrip terbesar.php :
if ($submit)
perintah ini akan menghasilkan TRUE karena $submit berisi string Cek
if ($bil1 > $bil2) echo "$bil1 lebih besar dari $bil2";
elseif ($bil1 < $bil2) echo "$bil1 lebih kecil dari $bil2";
else echo "$bil1 sama dengan $bil2";
Karena $bil1 lebih besar dari $bil2 maka perintah echo pertama yang akan diproses,
sehingga pada
browser akan tampil :

Sekarang perhatikan file terbesar.htm, jika deklarasi method :


<form method=post action=terbesar.php>
diganti menjadi
<form method=get action=terbesar.php>

Maka data form akan ditampilkan pada URL


Menggabungkan Form dan PHP dalam satu file PHP
Dua buah file pada contoh sebelumnya, yaitu file terbesar.htm dan file terbesar.php
bisa digabung
menjadi satu buah file PHP berikut ini:

File : cekterbesar.php
<html>
<body>
<h2>Input dua buah angka :</h2>
<form method=get action=terbesar.php>
Bilangan pertama :<input type=text size=3 name=bil1>
<BR>
Bilangan kedua :<input type=text size=3 name=bil2>
<BR>
<input type=submit name=submit value='Cek'>
<input type=reset>
</form>
</body>
</html>
<?
if ($submit)
{
if ($bil1 > $bil2) echo "$bil1 lebih besar dari $bil2";
elseif ($bil1 < $bil2) echo "$bil1 lebih kecil dari $bil2";
else echo "$bil1 sama dengan $bil2";
}
?>
Pada kasus ini, skrip PHP bisa diletakkan pada awal maupun akhir skrip.

Aplikasi Buku Tamu dengan file teks


Pada bab ini akan dibuat sebuah contoh aplikasi penggunaan form dan file teks
dengan nama Buku
Tamu. Pada implementasi sebenarnya data tidak disimpan ke file teks tetapi ke table
database.
Skrip dan tampilan yang dibuat sbb :
• guestbook.php : untuk input data buku tamu

• view_gbook.php : untuk menampilkan data buku tamu


File : guestbook.php
<?
if ($submit)
{
$fname = "gbook.txt";
if (file_exists($fname))
$fid = fopen($fname,"a");
else $fid = fopen($fname,"w");
$data = "$nama;$email;$komentar\n";
fputs($fid,$data);
fclose($fid);
echo "Terimakasih atas partisipasi Anda.";
die;
}
?>
<HTML>
<BODY>
<H1>GUESTBOOK</H1>
<FORM METHOD=POST ACTION="guestbook.php">
<TABLE BORDER=1>
<TR>
<TD>Nama Anda</TD>
<TD><INPUT TYPE=TEXT SIZE=10 NAME=nama></TD>
</TR>
<TR>
<TD>Email</TD>
<TD><INPUT TYPE=TEXT SIZE=10 NAME=email></TD>
</TR>
<TR>
<TD>Komentar Anda</TD>
<TD><INPUT TYPE=TEXT SIZE=20 NAME=komentar></TD>
</TR>
</TABLE>
<INPUT TYPE=SUBMIT NAME=submit VALUE="Kirim">
<INPUT TYPE=RESET>
</FORM>
</BODY>
</HTML>

File : view_gbook.php
<?
$fname = "gbook.txt";
if (!file_exists($fname))
echo "File $fname tidak ditemukan";
else
{
echo "<h1>GUESTBOOK LIST</h1>";
echo "<table border=1>";
echo "<tr>
<td align=center><b>No.</b></td>
<td align=center><b>Nama</b></td>
<td align=center><b>Email</b></td>
<td align=center><b>Komentar</b></td>
</tr>";
$no = 0;
$fid = fopen($fname,"r");
while (!feof($fid))
{
$no++;
$data = fgets($fid,255);
if ($data != "")
{
$arr = explode(";",$data);
$nama = $arr[0];
$email = $arr[1];
$komentar = $arr[2];
echo "<tr>
<td align=center>$no</td>
<td>$nama</td>
<td><a href='mailto:$email'>$email</a></td>
<td>$komentar</td>";
}
}
fclose($fid);
echo "</table>";
}
?>

Soal
1. Buat tampilan berikut :

Jika Nilai Angka diisi 80 dan SKS diisi 3 dan diklik Hitung akan tampil sbb:

Buat dalam 2 versi :


o HTML dan skrip PHP terpisah
o HTML dan skrip PHP digabungkan
Lihat contoh soal terdahulu untuk konversi nilai angka ke nilai huruf dan
mencari kualitas
nilainya. Bobot Nilai = SKS x Kualitas Nilai
2. Buat aplikasi Konversi Mata Uang dengan tampilan sbb:

Jika diisi Nilai Rupiah = 10500 dan diklik Konversi maka tampilan menjadi :

Jika link Konversi Lagi diklik maka tampilan kembali ke tampilan pertama.

Ketentuan :
Buat sebuah file dengan nama rate.txt yang berisi rate konversi rupiah ke
dolar. Misalkan $1 =
Rp.10500 maka isi file tsb adalah angka 10500. Isi file ini dibaca oleh skrip
PHP dan digunakan
untuk mengkonversi rupiah ke dollar

Dasar MySQL
Daftar Topik
1. Memahami cara penggunaan console MySQL
2. Memahami perintah-perintah SQL sederhana untuk pembuatan database, table,
pengisian record

Penggunaan MySQL
Mengaktifkan MySQL
1. Klik menu Run pada menu Start
2. Ketik cmd
3. Pada command prompt ketik cd c:\apache\mysql\bin
4. Ketik mysql, tekan Enter, sehingga muncul prompt mysql
Melihat Daftar Database
Pada prompt MySQL ketik SHOW DATABASES;
Membuka Koneksi ke Suatu Database
Pada prompt MySQL ketik USE mysql;
Menampilkan Daftar Tabel Suatu Database
Pada prompt MySQL ketik SHOW TABLES;
Mengetahui Stuktur Suatu Tabel
Misalkan Anda ingin mengetahui struktur tabel user, pada prompt MySQL ketik
DESCRIBE user;
Melihat Isi Suatu Tabel
Misalkan Anda ingin mengetahui isi tabel user, pada prompt MySQL ketik SELECT *
FROM user;
Keluar dari MySQL
Pada prompt MySQL ketik salah satu perintah: EXIT, QUIT atau \q
Membuat Database dan Tabel
Database yang akan dibuat adalah database untuk aplikasi toko buku online berbasis
web.
Membuat Database bookshop
Pada prompt MySQL ketik CREATE DATABASE bookshop_NIM_Anda; misalkan NIM
Anda 1234, maka
perintahnya menjadi CREATE DATABASE bookshop_1234; lalu tekan Enter.
Jangan lupa tanda (;)
untuk mengakhiri perintah SQL.
Membuat Tabel guestbook
Pada prompt MySQL ketik USE bookshop_NIM_Anda;
Ketikkan script :
CREATE TABLE guestbook(idgbook int(5) NOT NULL auto_increment, nama
VARCHAR(20) NOT
NULL, email VARCHAR(50) NOT NULL, isi VARCHAR(100), primary
key(idgbook));
Penjelasan:
~ NOT NULL : field tersebut wajib diisi datanya
~ auto_increment : setiap penambahan record baru, MySQL otomatis akan memberi
no.urut terbaru
~ primary key : field sebagai kunci primer (nilainya unik dalam tabel tersebut).
Syaratnya adalah field
primer tersebut harus menggunakan NOT NULL
~ tiga tipe data dasar MySQL : int, varchar, char
~ tipe varchar dan char dapat menampung data angka maupun huruf
~ perbedaan tipe data varchar(10) dengan tipe data char(10):
1. Panjang data yang bisa diinput pada varchar(10) maksimal 10 karakter dan boleh
kurang
dari 10 karakter. Misalkan inputnya 5 karakter, maka 5 karakter yang tidak
digunakan tidak
dianggap sebagai data
2. Panjang data yang bisa diinput pada char(10) maksimal 10 karakter dan boleh
kurang dari
10 karakter. Misalkan inputnya 5 karakter, maka 5 karakter yang tidak digunakan
akan
dianggap sebagai data (yaitu spasi kosong)
~ panjang maksimal tipe data varchar dan char adalah 255 karakter
~ untuk jumlah karakter lebih dari 255 karakter, gunakan tipe data text
Tugas Latihan
Buatlah tabel-tabel berikut pada database toko buku online yang telah dibuat. Tabel-
tabel ini akan
digunakan untuk praktikum-praktikum selanjutnya.

Anda mungkin juga menyukai