(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:
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
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.
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>";
?>
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";
?>
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>";
}
}
?>
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";
?>
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:
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
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>";
}
?>
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)
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);
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;
}
?>
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>";
?>
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 : 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 :
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.
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:
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.