Pengantar HTML dan PHP
Halaman Web Transisional
XHTML 1.0
PHP merupakan bahasa
skrip yang ditanam dalam HTML. Ini berarti bahwa Anda dapat menggabungkan kode
PHP dan HTML dalam file yang sama. Berikut merupakan skrip dasar dari halaman
web transisional XHTML 1.0. Simpan file berikut dengan nama pertama.php.
<!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/1999/xhtml"
xml:lang="en" lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Halaman
Dasar PHP</title>
</head>
<body>
<p>Ini merupakan
HTML standar.</p>
<?php
?>
</body>
</html>
Mengirim Data Ke Web Browser
Untuk menciptakan
situs web dinamis dengan PHP, Anda harus mengetahui bagaimana mengirimkan data
ke web browser. PHP memiliki sejumlah fungsi untuk tujuan ini. Dua fungsi yang
umum dipakai adalah echo() dan print(). Penulis merekomendasikan penggunaan
echo(). Simpan file berikut dengan nama kirim_data.php.
<!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/1999/xhtml"
xml:lang="en" lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html;
charset=iso-8859-1" />
<title>Halaman
Dasar PHP</title>
</head>
<body>
<p>Ini merupakan
HTML standar.</p>
<?php
echo 'Ini dihasilkan menggunakan PHP!';
?>
</body>
</html>
Variabel Pra-Definisi PHP
Berikut merupakan
skrip untuk menggunakan beberapa variabel pra-definisi PHP. Simpan file
tersebut dengan nama variabel_pradefinisi.php.
<!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/1999/xhtml"
xml:lang="en" lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html;
charset=iso-8859-1" />
<title>Halaman
Dasar PHP</title>
</head>
<body>
<?php # variabel_pradefinisi.php
$file = $_SERVER['SCRIPT_FILENAME'];
$user = $_SERVER['HTTP_USER_AGENT'];
$server = $_SERVER['SERVER_SOFTWARE'];
// Menampilkan nama skrip ini:
echo "<p>Anda sedang menjalankan
file:<br/><b>$file</b>.</p>\n";
// Menampilkan informasi user:
echo "<p>Anda sedang
melihat halaman ini menggunakan:<br /><b>$user</b></p>\n";
// Menampilkan informasi server:
echo "<p>Server ini:<br
/><b>$server</b>.</p>\n";
?>
</body>
</html>
Dasar String
File dengan nama
dasar_string.php berikut ditulis untuk mengilustrasikan penggunaan string
dasar.
<!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/1999/xhtml"
xml:lang="en" lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html;
charset=iso-8859-1" />
<title>Dasar
Penggunaan String</title>
</head>
<body>
<?php # dasar_string.php
$nama_depan = 'Haruki';
$nama_belakang = 'Murakami';
$buku = 'Kafka on the Shore';
echo "<p>Buku dengan judul <em>$buku</em>
ditulis
oleh $nama_depan $nama_belakang.</p>";
?>
</body>
</html>
Menyambung String
Operasi penyambungan
string dilakukan dengan menggunakan operator titik (.). Simpan file berikut
dengan nama dasar_sambung_string.php.
<!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/1999/xhtml"
xml:lang="en" lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html;
charset=iso-8859-1" />
<title>Dasar
Penggunaan String</title>
</head>
<body>
<?php # dasar_sambung_string.php
// Menciptakan variabel-variabel:
$nama_depan = 'Melissa';
$nama_belakang = 'Bank';
$pengarang = $nama_depan . ' ' . $nama_belakang;
$buku = 'The Girls\' Guide to Hunting and Fishing';
//Menampilkan nilai-nilai:
echo "<p>Buku dengan judul <em>$buku</em>
ditulis
oleh $pengarang.</p>";
?>
</body>
</html>
Dasar Angka
Angka dalam PHP bisa
dalam bentuk angka bulat maupun angka pecahan. Berikut didemonstrasikan
penggunaan angka dalam PHP. Simpan file tersebut dengan nama dasar_angka.php.
<!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/1999/xhtml"
xml:lang="en" lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html;
charset=iso-8859-1" />
<title>Dasar
Angka</title>
</head>
<body>
<?php # dasar_angka.php
// Menetapkan variabel-variabel:
$kuantitas = 30;
$harga = 119.95;
$pajak = .05; // 5% pajak
// Menghitung total:
$total = $kuantitas * $harga;
$total = $total + ($total * $pajak); // Menambahkan pajak
// Memformat total:
$total = number_format ($total, 2);
// Menampilkan hasil:
echo '<p>Anda membeli
<b>' . $kuantitas . '</b> pisang goreng dengan masing-masing
seharga
<b>Rp.' . $harga . '</b>. Termasuk pajak, total
menjadi <b>Rp.' . $total .'</b>.</p>';
?>
</body>
</html>
Dasar Konstanta
Berikut merupakan
contoh penggunaan konstanta. Simpan file tersebut dengan nama dasar_konstanta.php.
<!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/1999/xhtml"
xml:lang="en" lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html;
charset=iso-8859-1" />
<title>Dasar
Konstanta</title>
</head>
<body>
<?php # dasar_konstanta.php
// Menetapkan tanggal hari ini sebagai konstanta:
define ('HARI_INI', 'August 17, 2014');
// Menampilkan pesan menggunakan konstanta HARI_INI:
echo '<p>Hari ini ' .
HARI_INI . '.<br />Server ini memiliki versi <b>' .
PHP_VERSION . '</b> PHP pada sistem
operasi <b>' . PHP_OS . '</b>.</p>';
?>
</body>
</html>
Memproses Data Form
Setelah pengguna
mengisi tiap bidang pada form web beasiswa.html dan mengkli tombol submit
menggunakan metode post, nama-nama (dNama, bNama, dan Submit) yang telah
ditugaskan kepada kontrol-kontrol pada form beasiswa secara otomatis menjadi
kunci-kunci pada array autoglobal $_POST.
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
lang="en">
<head>
<title> Form Beasiswa </title>
</head>
<body>
<h2
style="text-align:center">Formulir Beasiswa</h2>
<form name="beasiswa"
action="proses_beasiswa.php" method="post">
<p>Nama Depan: <input
type="text" name="dNama" /></p>
<p>Nama Belakang: <input
type="text" name="bNama" /></p>
<p><input type="reset"
value="Bersihkan Form" />
<input
type="submit" name="Submit" value="Kirim Form"
/>
</form>
</body>
</html>
Berikut adalah kode untuk file
proses_beasiswa.php:
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
lang="en">
<head>
<title> Memproses Formulir Beasiswa
</title>
</head>
<body>
<h2> Memproses Formulir Beasiswa
</h2>
<?php
$namaDepan
= $_POST['dNama'];
$namaBelakang
= $_POST['bNama'];
echo
"Terimakasih telah mengisi formulir beasiswa,
".$namaDepan."
".$namaBelakang . ".";
?>
</body>
</html>
Memproses Data Form Dengan
Validasi Masukan
Berikut adalah kode untuk file beasiswaA.html:
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
lang="en">
<head>
<title> Form Beasiswa </title>
</head>
<body>
<h2
style="text-align:center">Formulir Beasiswa</h2>
<form name="beasiswa"
action="proses_beasiswaA.php" method="post">
<p>Nama Depan: <input
type="text" name="dNama" /></p>
<p>Nama Belakang: <input
type="text" name="bNama" /></p>
<p><input type="reset"
value="Bersihkan Form" />
<input
type="submit" name="Submit" value="Kirim Form"
/>
</form>
</body>
</html>
Berikut adalah kode untuk file
proses_beasiswaA.php:
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
lang="en">
<head>
<title> Memproses Formulir Beasiswa
</title>
</head>
<body>
<h2> Memproses Formulir Beasiswa
</h2>
<?php
function
tampilDiperlukan($bidangNama) {
echo "Bidang \"$bidangNama\"
perlu diisi.<br />\n";
}
function
validasiMasukan($data, $bidangNama) {
global $hitungError;
if (empty($data)) {
tampilDiperlukan($bidangNama);
++$hitungError;
$nilaiBalik = "";
} else { // hanya membersihkan masukan jika
tak kosong
$nilaiBalik = trim($data);
$nilaiBalik =
stripslashes($nilaiBalik);
}
return($nilaiBalik);
}
$hitungError
= 0;
$namaDepan
= validasiMasukan($_POST['dNama'], "Nama depan");
$namaBelakang
= validasiMasukan($_POST['bNama'], "Nama belakang");
if
($hitungError>0)
echo "Silahkan gunakan tombol
\"Back\" untuk
mengisi-ulang data.<br
/>\n";
else
echo "Terimakasih telah mengisi
formulir beasiswa,
".$namaDepan."
".$namaBelakang . ".";
?>
</body>
</html>
Memproses Data Form Dengan
Sticky Form
Berikut adalah kode untuk file beasiswaB.html:
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
lang="en">
<head>
<title> Form Beasiswa </title>
</head>
<body>
<h2
style="text-align:center">Formulir Beasiswa</h2>
<form name="beasiswa"
action="proses_beasiswaB.php" method="post">
<p>Nama Depan: <input
type="text" name="dNama" /></p>
<p>Nama Belakang: <input
type="text" name="bNama" /></p>
<p><input type="reset"
value="Bersihkan Form" />
<input
type="submit" name="Submit" value="Kirim Form"
/>
</form>
</body>
</html>
Berikut adalah kode untuk file
proses_beasiswaB.php:
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
lang="en">
<head>
<title> Memproses Formulir Beasiswa
</title>
</head>
<body>
<h2> Memproses Formulir Beasiswa
</h2>
<?php
function
tampilUlangForm($namaDepan, $namaBelakang) {
?>
<h2 style =
"text-align:center">Formulir Beasiswa</h2>
<form name="beasiswa"
action="proses_beasiswaB.php"method="post">
<p>Nama Depan: <input
type="text" name="dNama"
value="<?php echo $namaDepan;
?>" /></p>
<p>Nama Belakang: <input type="text"
name="bNama"
value="<?php echo
$namaBelakang; ?>" /></p>
<p><input type="reset"
value="Bersihkan Form" />
<input
type="submit" name="Submit" value="Kirim Form"
/>
</form>
<?php
}
function
tampilDiperlukan($bidangNama) {
echo "Bidang \"$bidangNama\"
perlu diisi.<br />\n";
}
function
validasiMasukan($data, $bidangNama) {
global $hitungError;
if (empty($data)) {
tampilDiperlukan($bidangNama);
++$hitungError;
$nilaiBalik = "";
} else { // hanya membersihkan masukan jika
tak kosong
$nilaiBalik = trim($data);
$nilaiBalik =
stripslashes($nilaiBalik);
}
return($nilaiBalik);
}
$hitungError
= 0;
$namaDepan
= validasiMasukan($_POST['dNama'], "Nama depan");
$namaBelakang
= validasiMasukan($_POST['bNama'], "Nama belakang");
if
($hitungError>0) {
echo "Silahkan isi kembali informasi
berikut.<br />\n";
tampilUlangForm($namaDepan, $namaBelakang);
}
else
echo "Terimakasih telah mengisi
formulir beasiswa,
".$namaDepan."
".$namaBelakang . ".";
?>
</body>
</html>
Menciptakan Form HTML
Sebuah
form HTML diciptakan menggunakan tag form dan beberapa elemen untuk membaca
masukan. Tag form memiliki format seperti berikut:
<form action=”skrip.php”
method=”post”>
</form>
Berikut
merupakan contoh form HTML. Simpan kode berikut dengan nama form.html.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Form HTML
Sederhana</title>
</head>
<body>
<!--
form.html -->
<form
action="tangani_form.php" method="post">
<fieldset><legend>Masukan
informasi Anda pada form berikut:</legend>
<p><b>Nama:</b>
<input type="text" name="nama" size="20"
maxlength="40"/></p>
<p><b>Alamat Email:</b>
<input type="text" name="email" size="40"
maxlength="60" /></p>
<p><b>Gender:</b>
<input type="radio"
name="gender" value="P" /> Pria
<input
type="radio" name="gender" value="W"
/>Wanita</p>
<p><b>Usia:</b><select
name="usia">
<option value="0-29">Di
bawah 30 </option>
<option value="30-60">Antara
30 dan 60 </option>
<option value="60+">Di atas
60</option>
</select></p>
<p><b>Komentar:</b>
<textarea name="komentar" rows="3"
cols="40"></textarea></p>
</fieldset>
<div align="center"><input
type="submit" name="submit" value=
"Submit Informasi Saya"
/></div>
</form>
</body>
</html>
Menangani Form HTML
Setelah
form HTML diciptakan, sekarang waktunya untuk menuliskan skrip PHP untuk
menanganinya. Simpan file berikut dengan nama tangani_form.php.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Menangani Form
HTML</title>
</head>
<body>
<?php
# tangani_form.php
//
Menciptakan singkatan untuk data form:
$nama
= $_REQUEST['nama'];
$email
= $_REQUEST['email'];
$komentar
= $_REQUEST['komentar'];
/*
Tidak digunakan:
$_REQUEST['usia']
$_REQUEST['gender']
$_REQUEST['submit']
*/
//
Menampilkan informasi yang disubmit:
echo
"<p>Terimakasih, <b>$nama</b>, untuk memberikan
komentar:<br />
<tt>$komentar</tt></p>
<p>Kami
akan mengirimkan balasan ke <i>$email</i>.</p>\n";
?>
</body>
</html>
Menggunakan Kondisional
Pada
kasus ini, Anda akan menggunakan kondisional if-else. Simpan file berikut
dengan kondisional.php.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Form HTML Sederhana</title>
</head>
<body>
<!--
form.html -->
<form
action="kondisional.php" method="post">
<fieldset><legend>Masukan
informasi Anda pada form berikut:</legend>
<p><b>Nama:</b> <input
type="text" name="nama" size="20"
maxlength="40"/></p>
<p><b>Alamat Email:</b>
<input type="text" name="email" size="40"
maxlength="60" /></p>
<p><b>Gender:</b>
<input type="radio"
name="gender" value="P" /> Pria
<input
type="radio" name="gender" value="W"
/>Wanita</p>
<p><b>Usia:</b><select
name="usia">
<option value="0-29">Di
bawah 30 </option>
<option
value="30-60">Antara 30 dan 60 </option>
<option value="60+">Di atas
60</option>
</select></p>
<p><b>Komentar:</b>
<textarea name="komentar" rows="3"
cols="40"></textarea></p>
</fieldset>
<div align="center"><input
type="submit" name="submit" value=
"Submit Informasi Saya"
/></div>
</form>
</body>
</html>
Simpan
file berikut dengan nama form_kondisional.html.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Form HTML
Sederhana</title>
</head>
<body>
<!--
form.html -->
<form
action="kondisional.php" method="post">
<fieldset><legend>Masukan
informasi Anda pada form berikut:</legend>
<p><b>Nama:</b> <input
type="text" name="nama" size="20"
maxlength="40"/></p>
<p><b>Alamat Email:</b>
<input type="text" name="email" size="40"
maxlength="60" /></p>
<p><b>Gender:</b>
<input type="radio"
name="gender" value="P" /> Pria
<input
type="radio" name="gender" value="W"
/>Wanita</p>
<p><b>Usia:</b><select
name="usia">
<option value="0-29">Di
bawah 30 </option>
<option
value="30-60">Antara 30 dan 60 </option>
<option value="60+">Di atas
60</option>
</select></p>
<p><b>Komentar:</b>
<textarea name="komentar" rows="3"
cols="40"></textarea></p>
</fieldset>
<div align="center"><input
type="submit" name="submit" value=
"Submit Informasi Saya"
/></div>
</form>
</body>
</html>
Memvalidasi Data Form
Validasi
atas data form memerlukan penggunaan kondisional, fungsi, operator, dan
ekspresi. Salah satu fungsi standar yang dipakai adalah isset(), yang menguji
apakah sebuah variabel memiliki sebuah nilai atau tidak.
Salah
satu masalah dengan fungsi isset() adalah bahwa string kosong dipandang sebagai
TRUE, yang berarti bahwa isset() bukanlah cara yang efektif untuk memvalidasi
masukan teks dan kotak teks dari sebuah form HTML. Untuk memeriksa bahwa
pengguna mengetikkan sesuatu pada elemen tekstual, Anda dapat menggunakan
fungsi empty(). Fungsi ini memeriksa apakah sebuah variabel memiliki nilai
kosong atau tidak. String kosong akan dipandang sebagai 0, NULL, atau FALSE.
Simpan
file tersebut dengan nama validasi_form.php.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta http-equiv="content-type" content=
"text/html; charset=iso-8859-1" />
<title>Validasi
Form HTML</title>
<style
type="text/css" title="text/ css" media="all">
.error {
font-weight: bold;
color: #C00
}
</style>
</head>
<body>
<?php # validasi_form.php
// Memvalidasi nama:
if (!empty($_REQUEST['nama'])) {
$nama = $_REQUEST['nama'];
} else {
$nama = NULL;
echo '<p class="error">Anda lupa memasukkan nama
Anda!</p>';
}
// Memvalidasi email:
if (!empty($_REQUEST['email'])) {
$email = $_REQUEST['email'];
} else {
$email = NULL;
echo '<p class="error">Anda lupa
memasukkan alamat email Anda!</p>';
}
// Memvalidasi komentar:
if (!empty($_REQUEST['komentar'])) {
$komentar = $_REQUEST['komentar'];
} else {
$komentar = NULL;
echo '<p class="error">Anda lupa memasukkan komentar
Anda!</p>';
}
// Memvalidasi gender:
if (isset($_REQUEST['gender'])) {
$gender = $_REQUEST['gender'];
if
($gender == 'P') {
echo '<p><b>Selamat siang,
Pak!</b></p>';
} elseif ($gender == 'W') {
echo '<p><b>Selamat siang,
Bu!</b></p>';
} else { // Nilai tak bisa diterima.
$gender = NULL;
echo '<p
class="error">Gender tidak berupa "P" atau
"W"!</p>';
}
} else { // $_REQUEST['gender'] tidak
ditetapkan
$gender = NULL;
echo '<p class="error">Anda lupa memilih gender
Anda!</p>';
}
// Jika semuanya OK, tampilkan pesan:
if ($nama && $email
&& $gender && $komentar) {
echo "<p>Terimakasih, <b>$nama</b>, untuk
komentar:<br />
<tt>$komentar</tt></p>
<p>Kami akan mengirim balasan ke
<i>$email</i>.</p>\n";
} else { // Nilai form tidak ada
echo '<p class="error">Silahkan isi form
kembali.</p>';
}
?>
</body>
</html>
Simpan
file berikut dengan nama form_validasi.html.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Form HTML Sederhana</title>
</head>
<body>
<!--
form.html -->
<form
action="validasi_form.php" method="post">
<fieldset><legend>Masukan
informasi Anda pada form berikut:</legend>
<p><b>Nama:</b> <input
type="text" name="nama" size="20"
maxlength="40"/></p>
<p><b>Alamat Email:</b>
<input type="text" name="email" size="40"
maxlength="60" /></p>
<p><b>Gender:</b>
<input type="radio"
name="gender" value="P" /> Pria
<input
type="radio" name="gender" value="W"
/>Wanita</p>
<p><b>Usia:</b><select
name="usia">
<option value="0-29">Di
bawah 30 </option>
<option
value="30-60">Antara 30 dan 60 </option>
<option value="60+">Di atas
60</option>
</select></p>
<p><b>Komentar:</b>
<textarea name="komentar" rows="3"
cols="40"></textarea></p>
</fieldset>
<div align="center"><input
type="submit" name="submit" value=
"Submit Informasi Saya"
/></div>
</form>
</body>
</html>
Mengenalkan Array
Tipe variabel terakhir yang akan dicakup pada
buku ini adalah array. Tidak seperti string dan angka, sebuah array dapat
menampung beberapa informasi sekaligus. Array seperti layaknya sebuah daftar
nilai, dimana setiap nilai dapat berupa sebuah string atau sebuah angka atau
bahkan sebuah array.
PHP
memiliki beberapa array pra-definisi yang dikenal dengan variabel superglobal,
yaitu $_GET, $_POST, $_REQUEST, $_SERVER, $_ENV, $_SESSION, dan $_COOKIE.
Variabel $_GET adalah tempat dimana PHP
menyimpan semua nilai yang dikirimkan ke sebuah skrip PHP melalui metode get.
Variabel $_POST menyimpan semua data yang dikirimkan ke sebuah skrip PHP dari
suatu form HTML yang menggunakan metode post. Kedua variabel ini, bersama
dengan $_COOKIE, merupakan subhimpunan dari $_REQUEST, yang telah digunakan.
Variabel $_SERVER menyimpan informasi tentang
server PHP yang sedang digunakan, sama seperti variabel $_ENV. Variabel
$_SESSION dan $_COOKIE akan didiskusikan pada beberapa bab ke depan.
Berikut diberikan contoh yang
mengilustrasikan penggunaan array $_POST. Simpan file berikut dengan nama dasar_array.php.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Validasi Form
HTML</title>
<style type="text/css"
title="text/ css" media="all">
.error {
font-weight: bold;
color: #C00
}
</style>
</head>
<body>
<?php
# dasar_array.php
//
Menampilkan informasi yang disubmit:
if
( !empty($_POST['nama']) &&
!empty($_POST['komentar']) && !empty($_POST['email']) ) {
echo "<p>Terimakasih,
<b>{$_POST['nama']}</b>, untuk komentar berikut:<br />
<tt>{$_POST['komentar']}</tt></p>
<p>Kami akan
mengirimkan balasan ke <i> {$_POST
['email']}</i>.</p>\n";
}
else { // Missing form value.
echo '<p
class="error">Silahkan isi form kembali.</p>';
}
?>
</body>
</html>
Simpan
file berikut dengan nama form_array.html.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Form HTML
Sederhana</title>
</head>
<body>
<!--
form.html -->
<form
action="dasar_array.php" method="post">
<fieldset><legend>Masukan
informasi Anda pada form berikut:</legend>
<p><b>Nama:</b> <input
type="text" name="nama" size="20"
maxlength="40"/></p>
<p><b>Alamat Email:</b>
<input type="text" name="email" size="40"
maxlength="60" /></p>
<p><b>Gender:</b>
<input type="radio"
name="gender" value="P" /> Pria
<input
type="radio" name="gender" value="W" />Wanita</p>
<p><b>Usia:</b><select
name="usia">
<option value="0-29">Di
bawah 30 </option>
<option
value="30-60">Antara 30 dan 60 </option>
<option value="60+">Di atas
60</option>
</select></p>
<p><b>Komentar:</b>
<textarea name="komentar" rows="3"
cols="40"></textarea></p>
</fieldset>
<div align="center"><input
type="submit" name="submit" value=
"Submit Informasi Saya"
/></div>
</form>
</body>
</html>
Menciptakan Array
Pada kasus sebelumnya, Anda menggunakan array
yang dihasilkan oleh PHP. Sekarang saatnya Anda menciptakan array sendiri.
Simpan file berikut dengan nama kalender.php.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Kalender</title>
</head>
<body>
<form
action="kalender.php" method="post">
<?php
# kalender.php
//
Skrip ini menciptakan tiga menu pull-down
//
untuk sebuah form HTML: bulan, hari, tahun.
//
menciptakan array bulan:
$bulan
= array (1 => 'Januari', 'Februari', 'Maret', 'April',
'Mei',
'Juni',
'Juli', 'Agustus', 'September', 'Oktober', 'Nopember', 'Desember');
//
membuat array hari dan tahun
$hari
= range (1, 31);
$tahun
= range (2008, 2018);
//
Membuat menu pull-down bulan
echo
'<select name="bulan">';
foreach
($bulan as $kunci => $nilai) {
echo "<option
value=\"$kunci\">$nilai</option>\n";
}
echo
'</select>';
//
Membuat menu pull-down hari
echo
'<select name="hari">';
foreach
($hari as $nilai) {
echo "<option
value=\"$nilai\">$nilai</option>\n";
}
echo
'</select>';
//
Membuat menu pull-down tahun
echo
'<select name="tahun">';
foreach
($tahun as $nilai) {
echo "<option
value=\"$nilai\">$nilai</option>\n";
}
echo
'</select>';
?>
</form>
</body>
</html>
Menciptakan Array
Multidimensi
Sekarang saatnya Anda belajar bagaimana
menciptakan array multidimensi. Simpan file berikut dengan nama
array_multidimensi.php.
<!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/1999/xhtml"
xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content=
"text/html; charset=iso-8859-1" />
<title>Array
Multidimensi</title>
</head>
<body>
<p>Beberapa Propinsi di Tiga
Negara:</p>
<?php # array_multidimensi.php
// Menciptakan sebuah array
$indonesia = array(
'JATENG' => 'Jawa Tengah',
'SUMUT' => 'Sumatera Utara',
'JABAR' => 'Jawa Barat'
);
// Menciptakan array lain
$us = array (
'MD' => 'Maryland',
'IL' => 'Illinois',
'PA' => 'Pennsylvania',
'IA' => 'Iowa'
);
// Menciptakan array ketiga
$kanada = array (
'QC' => 'Quebec',
'AB' => 'Alberta',
'NT' => 'Northwest Territories',
'YT' => 'Yukon',
);
// menggabungkan array
$n_amerika = array(
'Indonesia' => $indonesia,
'United States' => $us,
'Kanada' => $kanada
);
// Menjelajah negara-negara
foreach ($n_amerika as $negara =>
$list)
{
// Mencetak kepala
echo "<h2>$negara</h2><ul>";
// Menampilkan tiap propinsi
foreach ($list as $k => $v) {
echo "<li>$k -
$v</li>\n";
}
// Menutup daftar
echo '</ul>';
} // akhir dari FOREACH.
?>
</body>
</html>
Mengurutkan Array
Ada tiga jenis pengurutan. Pertama, Anda
dapat mengurutkan sebuah nilai berdasarkan nilai dan membuang kunci awal,
menggunakan sort(). Sangat penting untuk dipahami bahwa kunci-kunci array akan
direset setelah proses pengurutan, jadi jika relasi kunci-nilai penting bagi
Anda, maka sebaiknya Anda tidak menggunakan sort().
Kedua, Anda dapat mengurutkan sebuah array
berdasarkan nilai dan tetap mempertahankan relasi kunci-nilai, menggunakan
fungsi asort(). Ketiga, Anda dapat mengurutkan sebuah array berdasarkan kunci
dan tetap mempertahankan relasi kunci-nilai, menggunakan fungsi ksort().
Ketiga fungsi pengurutan tersebut dapat
menghasilkan urutan terbalik jika Anda menggantinya dengan rsort(), asort(),
dan krsort(0.
Simpan file berikut dengan nama
dasar_urut_array.php.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta http-equiv="content-type" content=
"text/html; charset=iso-8859-1" />
<title>Dasar
Pengurutan Array</title>
</head>
<body>
<table border="0"
cellspacing="3" cellpadding="3"
align="center">
<tr>
<td><h2>Rating</h2></td>
<td><h2>Judul</h2></td>
</tr>
<?php # dasar_urut_array.php
// Menciptakan array:
$arrayFilm = array (
10 => 'Casablanca',
9 => 'To Kill a Mockingbird',
2 => 'The English Patient',
8 => 'Stranger Than Fiction',
5 => 'Story of the Weeping Camel',
7 => 'Donnie Darko'
);
// Menampilkan array film dengan
urutan asli
echo '<tr><td
colspan="2"><b>Urutan asli:</b></td></tr>';
foreach ($arrayFilm as $kunci =>
$nilai) {
echo "<tr><td>$kunci</td>
<td>$nilai</td></tr>\n";
}
// Menampilkan array film diurutkan
berdasarkan judul:
asort($arrayFilm);
echo '<tr><td
colspan="2"><b>Diurutkan berdasarkan judul:</b></td></tr>';
foreach ($arrayFilm as $kunci =>
$nilai) {
echo "<tr><td>$kunci</td>
<td>$nilai</td></tr>\n";
}
// Menampilkan array film diurutkan
berdasarkan rating:
krsort($arrayFilm);
echo '<tr><td
colspan="2"><b>Diurutkan berdasarkan rating:</b></td></tr>';
foreach ($arrayFilm as $kunci =>
$nilai) {
echo "<tr><td>$kunci</td>
<td>$nilai</td></tr>\n";
}
?>
</table>
</body>
</html>
Menggunakan Loop
Di sini, Anda akan memperbarui file
kalender.php sehingga ia menggunakan loop. Simpan file berikut dengan nama
kalender_loop.php.
<!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/1999/xhtml" xml:lang="en"
lang="en">
<head>
<meta
http-equiv="content-type" content=
"text/html; charset=iso-8859-1"
/>
<title>Kalender Menggunakan
Loop</title>
</head>
<body>
<form
action="kalender_loop.php" method="post">
<?php
# kalender_loop.php
//
Skrip ini menciptakan tiga menu pull-down
//
untuk sebuah form HTML: bulan, hari, tahun.
//
menciptakan array bulan:
$bulan
= array (1 => 'Januari', 'Februari', 'Maret', 'April',
'Mei',
'Juni',
'Juli', 'Agustus', 'September', 'Oktober', 'Nopember', 'Desember');
//
membuat array hari dan tahun
$hari
= range (1, 31);
$tahun
= range (2008, 2018);
//
Membuat menu pull-down bulan
echo
'<select name="bulan">';
foreach
($bulan as $kunci => $nilai) {
echo "<option
value=\"$kunci\">$nilai</option>\n";
}
echo
'</select>';
//
Membuat menu pull-down hari
echo
'<select name="hari">';
for
($hari = 1; $hari <= 31; $hari++) {
echo "<option
value=\"$hari\">$hari</option>\n";
}
echo
'</select>';
//
Membuat menu pull-down tahun
echo
'<select name="tahun">';
for
($tahun = 2008; $tahun <= 2018; $tahun++) {
echo "<option
value=\"$tahun\">$tahun</option>\n";
}
echo
'</select>';
?>
</form>
</body>
</html>
Situs Dinamis: Membuat Header
HTML
Untuk menciptakan sebuah template untuk situs
web, Anda sebaiknya mendesain tata-letak seperti halaman HTML standar, yang
terbebas dari sembarang kode PHP.
Hampir semua situs web memiliki beberapa
elemen bersama pada tiap halamannya, seperti header, navigasi, iklan, footer,
dan lainnya.
Berikut adalah skrip untuk header dari situs
web yang akan dirancang. Simpan file tersebut dengan nama header.html.
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/
xhtml1-strict.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Halaman Judul</title>
<link rel="stylesheet"
href="includes/style.css" type="text/css"
media="screen" />
<meta http-equiv="content-type"
content="text/html; charset=utf-8"
/>
</head>
<body>
<div id="header">
<h1>Situs Web Anda</h1>
<h2>Slogan hidup...</h2>
</div>
<div id="navigasi">
<ul>
<li><a
href="indeks.php">Halaman Rumah</a></li>
<li><a
href="kalkulator.php">Kalkulator</a></li>
<li><a
href="formtanggal.php">Form Tanggal</a></li>
<li><a href="#">link
empat</a></li>
<li><a href="#">link
lima</a></li>
</ul>
</div>
<div
id="isi"><!-- Awal dari isi halaman spesifik. -->
<h1>Isi Header</h1>
<p>Ini merupakan
isi dari halaman spesifik. Bagian ini, dan header terkait
akan berubah dari satu halaman ke
halaman lainnya.</p>
<p>Volutpat at
varius sed sollicitudin et, arcu. Vivamus viverra. Nullam turpis. Vestibulum
sed etiam.
Lorem ipsum sit amet dolore. Nulla facilisi. Sed tortor. Aenean felis.
Quisque eros. Cras lobortis commodo
metus. Vestibulum vel purus. In eget odio in sapien
adipiscing blandit. Quisque augue
tortor, facilisis sit amet, aliquam, suscipit vitae,
cursus sed, arcu lorem ipsum dolor sit
amet.</p>
<!--
Akhir dari isi halaman spesifik. --></div>
<div
id="footer">
<p>Copyright
© <a href="#">Plain and Simple</a> 2007 |
Didesain oleh <a href="http://
www.edg3.co.uk/">edg3.co.uk</a>
| Disponsori oleh <a href="http://www.opendesigns.org/">Desain
terbuka</a> |
Valid <a
href="http://jigsaw.w3.org/css-validator/">CSS</a> &
<a
href="http://validator.w3.org/">XHTML</a></p>
</div>
</body>
</html>
Situs Dinamis: Membuat
Footer dan Indeks dari HTML
File header.html pada kasus sebelumnya dibagi
menjadi header.html, footer.html, dan indeks.php berikut.
<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/
xhtml1-strict.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Halaman Judul</title>
<link rel="stylesheet"
href="includes/style.css" type="text/css"
media="screen" />
<meta http-equiv="content-type"
content="text/html; charset=utf-8"
/>
</head>
<body>
<div id="header">
<h1>Situs Web Anda</h1>
<h2>Slogan hidup...</h2>
</div>
<div id="navigasi">
<ul>
<li><a
href="indeks.php">Halaman Rumah</a></li>
<li><a
href="kalkulator.php">Kalkulator</a></li>
<li><a
href="formtanggal.php">Form Tanggal</a></li>
<li><a href="#">link
empat</a></li>
<li><a href="#">link
lima</a></li>
</ul>
</div>
<div
id="isi"><!-- Awal dari isi halaman spesifik. -->
<!--
footer.html -->
<!--
Akhir dari isi halaman spesifik. --></div>
<div
id="footer">
<p>Copyright
© <a href="#">Plain and Simple</a> 2007 |
Didesain oleh <a href="http://
www.edg3.co.uk/">edg3.co.uk</a>
| Disponsori oleh <a href="http://www.opendesigns.org/">Desain
terbuka</a>
| Valid <a
href="http://jigsaw.w3.org/css-validator/">CSS</a> &
<a
href="http://validator.w3.org/">XHTML</a></p>
</div>
</body>
</html>
<?php
# indeks.php
$halaman_judul
= 'Selamat Datang ke Situs ini!';
include
('C:\wamp\www\header.html');
?>
<h1>Isi
Header</h1>
<p>Ini merupakan
isi dari halaman spesifik. Bagian ini, dan header terkait
akan berubah dari satu halaman ke
halaman lainnya.</p>
<p>Volutpat at
varius sed sollicitudin et, arcu. Vivamus viverra. Nullam turpis. Vestibulum
sed etiam. Lorem
ipsum sit amet dolore. Nulla facilisi. Sed tortor. Aenean felis.
Quisque eros. Cras
lobortis commodo metus. Vestibulum vel purus. In eget odio in sapien
adipiscing blandit.
Quisque augue tortor, facilisis sit amet, aliquam, suscipit vitae,
cursus sed, arcu lorem ipsum dolor sit
amet.</p>
<?php
include
('C:\wamp\www\footer.html');
?>
Situs Dinamis: Menangani
Form HTML
Berikut adalah contoh untuk mendemonstrasikan
penanganan form HTML dimana di dalamnya dicantumkan header.html dan
footer.html.
<?php # kalkulator.php
$halaman_judul = 'Kalkulator Biaya
Belanja';
include ('C:\wamp\www\header.html');
// Memeriksa submisi form
if (isset($_POST['submitted'])) {
// Validasi form minimal
if ( is_numeric($_POST['kuantitas'])
&& is_numeric($_POST['harga']) &&
is_numeric($_POST['pajak']) ) {
// Menghitung hasil:
$total = ($_POST['kuantitas'] * $_POST['harga']);
$besar_pajak = ($_POST['pajak'] / 100);
$total += ($total * $besar_pajak);
// Menampilkan hasil:
echo '<h1>Biaya Total</h1>
<p>Biaya total belanja sebanyak ' .
$_POST['kuantitas'] . ' barang dengan masing-masing seharga Rp.' .
number_format ($_POST['harga'], 2) . ', termasuk pajak sebesar ' .
$_POST['pajak'] . '%, adalah Rp.' . number_format
($total, 2) . '.</p>';
} else { // nilai yang disubmit
tak-valid
echo '<h1>Error!</h1>
<p
class="error">Silahkan masukkan kuantias, harga, dan pajak
yang valid.</p>';
}
} // Akhir dari IF
// Tinggalkan bagian PHP dan ciptakan
form HTML
?>
<h1>Kalkulator Biaya Belanja</h1>
<form
action="kalkulator.php" method="post">
<p>Kuantitas: <input type="text" name=
"kuantitas" size="5" maxlength="5"
/></p>
<p>Harga: <input type="text" name=
"harga" size="5" maxlength="10"
/></p>
<p>Pajak (%): <input type="text" name=
"pajak" size="5" maxlength="5"
/></p>
<p><input type="submit" name="submit"
value="Hitung!" /></p>
<input type="hidden" name="submitted"
value="1" />
</form>
<?php // mencantumkan footer:
include ('C:\wamp\www\footer.html');
?>
Situs Dinamis: Membuat
Sticky Form
Sticky form merupakan form HTML standar yang
mengingat bagaimana Anda mengisi form. Ini merupakan fitur menarik bagi
pengguna, khususnya ketika Anda perlu mensubmit-ulang sebuah form karena Anda
sebelumnya mengisi form secara salah.
<?php # kalkulator_sticky_form.php
$halaman_judul = 'Kalkulator Biaya
Belanja';
include ('C:\wamp\www\header.html');
// Memeriksa submisi form
if (isset($_POST['submitted'])) {
// Validasi form minimal
if ( is_numeric($_POST['kuantitas'])
&& is_numeric($_POST['harga']) &&
is_numeric($_POST['pajak']) ) {
// Menghitung hasil:
$total = ($_POST['kuantitas'] * $_POST['harga']);
$besar_pajak = ($_POST['pajak'] / 100);
$total += ($total * $besar_pajak);
// Menampilkan hasil:
echo '<h1>Biaya Total</h1>
<p>Biaya total belanja sebanyak ' .
$_POST['kuantitas'] . ' barang dengan masing-masing seharga Rp.' .
number_format ($_POST['harga'], 2) . ', termasuk pajak sebesar ' .
$_POST['pajak'] . '%, adalah Rp.' . number_format ($total, 2) .
'.</p>';
} else { // nilai yang disubmit tak-valid
echo '<h1>Error!</h1>
<p
class="error">Silahkan masukkan kuantias, harga, dan pajak
yang valid.</p>';
}
} // Akhir dari IF
// Tinggalkan bagian PHP dan ciptakan
form HTML
?>
<h1>Kalkulator Biaya
Belanja</h1>
<form
action="kalkulator_sticky_form.php" method="post">
<p>Kuantitas: <input type="text" name=
"kuantitas" size="5" maxlength="5"
value="<?php if (isset($_POST['kuantitas']
)) echo $_POST['kuantitas']; ?>" /></p>
<p>Harga: <input type="text" name=
"harga" size="5" maxlength="10"
value="<?php if (isset($_POST['harga']))
echo $_POST ['harga']; ?>" /></p>
<p>Pajak (%): <input type="text" name=
"pajak" size="5" maxlength="5"
value="<?php if (isset($_POST['pajak']))
echo $_POST['pajak']; ?>" /></p>
<p><input type="submit" name="submit"
value="Hitung!" /></p>
<input type="hidden" name="submitted"
value="1" />
</form>
<?php // mencantumkan footer:
include ('C:\wamp\www\footer.html');
?>
Situs Dinamis: Membuat
Fungsi Sendiri
PHP memiliki banyak fungsi built-in atau
fungsi pustaka. PHP juga dapat Anda pakai untuk menciptakan fungsi sendiri. Di
sini, Anda akan menuliskan fungsi sendiri. Simpan file tersebut dengan nama
formtanggal.php.
<?php
# formtanggal.php
$halaman_judul
= 'Form Kalender';
include
('C:\wamp\www\header.html');
//
Fungsi ini membuat tiga menu pull-down
//
untuk memilih bulan, hari, dan tahun.
function
buat_kalender_pulldown() {
// membuat array bulan
$arrayBulan = array (1 => 'Januari',
'Februari', 'Maret', 'April', 'Mei',
'Juni', 'Juli', 'Agustus', 'September',
'Oktober', 'Nopember', 'Desember');
// membuat menu pull-down bulan
echo '<select
name="bulan">';
foreach ($arrayBulan as $kunci =>
$nilai) {
echo "<option
value=\"$kunci\">
$nilai</option>\n";
}
echo '</select>';
// membuat menu pull-down hari
echo '<select
name="hari">';
for ($hari = 1; $hari <= 31; $hari++) {
echo "<option
value=\"$hari\">$hari
</option>\n";
}
echo '</select>';
// membuat menu pull-down tahun
echo '<select
name="tahun">';
for ($tahun = 2008; $tahun <= 2018;
$tahun++) {
echo "<option
value=\"$tahun\">
$tahun</option>\n";
}
echo '</select>';
}
// Akhir dari definisi fungsi
//
Menciptakan tag-tag form
echo
'<h1>Select a Date:</h1>
<form
action="formtanggal.php" method="post">';
//
Memanggil fungsi
buat_kalender_pulldown();
echo
'</form>';
include
('C:\wamp\www\footer.html');
?>
Situs Dinamis: Membuat
Fungsi Yang Memerlukan Argumen
Sebuah fungsi dapat mengambil sembarang
banyak argumen, dengan urutan argumen merupakan hal yang penting untuk
diperhatikan.
Di sini, Anda akan memperbarui file
kalkulator.php untuk mencantumkan sebuah fungsi hitung_total yang memerlukan
tiga argumen.
<?php # kalkulator.php
$halaman_judul = 'Kalkulator Biaya
Belanja';
include ('C:\wamp\www\header.html');
/* Fungsi ini menghitung total dan
kemudian
menampilkan hasil. */
function hitung_total ($kts, $biaya,
$pjk){
$total = ($kts * $biaya);
$besarPajak = ($pjk / 100);
$total += ($total * $besarPajak);
//
Menampilkan hasil:
echo '<p>Biaya total belanja sebanyak ' . $kts .
'
barang dengan masing-masing seharga Rp.' .
number_format ($biaya, 2) . ', termasuk pajak sebesar ' .
$pjk . '%, adalah Rp.' . number_format ($total, 2) . '.</p>';
}
// Memeriksa submisi form
if (isset($_POST['submitted'])) {
// Validasi form minimal
if ( is_numeric($_POST['kuantitas']) &&
is_numeric($_POST['harga']) &&
is_numeric($_POST['pajak']) ) {
echo '<h1>Biaya
Total</h1>';
//
Memanggil fungsi
hitung_total ($_POST['kuantitas'],
$_POST['harga'], $_POST['pajak']);
} else { // nilai yang disubmit tak-valid
echo '<h1>Error!</h1>
<p
class="error">Silahkan masukkan kuantias, harga, dan pajak
yang valid.</p>';
}
} // Akhir dari IF
// Tinggalkan bagian PHP dan ciptakan
form HTML
?>
<h1>Kalkulator Biaya
Belanja</h1>
<form
action="kalkulator.php" method="post">
<p>Kuantitas: <input type="text" name=
"kuantitas" size="5" maxlength="5"
/></p>
<p>Harga: <input type="text" name=
"harga" size="5" maxlength="10"
/></p>
<p>Pajak (%): <input type="text" name=
"pajak" size="5" maxlength="5"
/></p>
<p><input type="submit" name="submit"
value="Hitung!" /></p>
<input type="hidden" name="submitted"
value="1" />
</form>
<?php // mencantumkan footer:
include ('C:\wamp\www\footer.html');
?>
Situs Dinamis: Menetapkan
Nilai-Nilai Default
Varian lain dalam mendefinisikan fungsi
sendiri adalah dengan memberikan nilai argumen. Untuk melakukannya, Anda
menugaskan sebuah nilai kepada argumen pada definisi fungsi.
Di sini, Anda akan memperbarui file
kalkulator.php untuk memberikan sebuah nilai kepada salah satu argumen pada
definisi fungsi hitung_total.
<?php # kalkulator.php
$halaman_judul = 'Kalkulator Biaya
Belanja';
include ('C:\wamp\www\header.html');
/* Fungsi ini menghitung total dan
kemudian
menampilkan hasil. */
function hitung_total ($kts, $biaya,
$pjk = 5){
$total = ($kts * $biaya);
$besarPajak = ($pjk / 100);
$total += ($total * $besarPajak);
// Menampilkan hasil:
echo '<p>Biaya total belanja sebanyak ' . $kts .
' barang dengan masing-masing seharga Rp.' .
number_format ($biaya, 2) . ', termasuk pajak sebesar ' .
$pjk . '%, adalah Rp.' . number_format ($total, 2) . '.</p>';
}
// Memeriksa submisi form
if (isset($_POST['submitted'])) {
// Validasi form minimal
if ( is_numeric($_POST['kuantitas']) &&
is_numeric($_POST['harga'])) {
echo '<h1>Biaya
Total</h1>';
//
Memanggil fungsi dengan atau tanpa pajak
if (is_numeric($_POST['pajak'])) {
hitung_total ($_POST['kuantitas'],
$_POST['harga'], $_POST['pajak']);
} else {
hitung_total ($_POST['kuantitas'],
$_POST['harga']);
}
} else { // nilai yang disubmit tak-valid
echo '<h1>Error!</h1>
<p
class="error">Silahkan masukkan kuantias, harga, dan pajak
yang valid.</p>';
}
} // Akhir dari IF
// Tinggalkan bagian PHP dan ciptakan
form HTML
?>
<h1>Kalkulator Biaya
Belanja</h1>
<form
action="kalkulator.php" method="post">
<p>Kuantitas: <input type="text" name=
"kuantitas" size="5" maxlength="5"
value="<?php if (isset($_POST['kuantitas']
)) echo $_POST['kuantitas']; ?>" /></p>
<p>Harga: <input type="text" name=
"harga" size="5" maxlength="10"
value="<?php if (isset($_POST['harga']))
echo $_POST ['harga']; ?>" /></p>
<p>Pajak (%): <input type="text" name=
"pajak" size="5" maxlength="5"
value="<?php if (isset($_POST['pajak']))
echo $_POST['pajak']; ?>" />(optional)</p>
<p><input type="submit" name="submit"
value="Hitung!" /></p>
<input type="hidden" name="submitted"
value="1" />
</form>
<?php // mencantumkan footer:
include ('C:\wamp\www\footer.html');
?>
Situs Dinamis: Membuat Fungsi
Penghasil Nilai
Atribut terakhir pada sebuah fungsi sendiri
adalah fungsi penghasil nilai. Berikut didemonstrasikan sebuah fungsi,
hitung_total, yang menghasilkan suatu nilai.
Di sini, Anda akan memperbarui file
kalkulator.php dan sedikit memodifikasi fungsi hitung_total.
<?php # kalkulator.php
$halaman_judul = 'Kalkulator Biaya
Belanja';
include ('C:\wamp\www\header.html');
/* Fungsi ini menghitung total dan
kemudian
menampilkan hasil. */
function hitung_total ($kts, $biaya,
$pjk = 5){
$total = ($kts * $biaya);
$besarPajak = ($pjk / 100);
$total += ($total * $besarPajak);
return
number_format($total, 2);
}
// Memeriksa submisi form
if (isset($_POST['submitted'])) {
// Validasi form minimal
if ( is_numeric($_POST['kuantitas']) &&
is_numeric($_POST['harga'])) {
echo '<h1>Biaya
Total</h1>';
//
Memanggil fungsi dengan atau tanpa pajak
if (is_numeric($_POST['pajak'])) {
$jum = hitung_total
($_POST['kuantitas'], $_POST['harga'], $_POST['pajak']);
} else {
$jum = hitung_total
($_POST['kuantitas'], $_POST['harga']);
}
//
Menampilkan hasil
echo '<p>Biaya total belanja
sebanyak ' .
$_POST['kuantitas'] . ' barang
dengan masing-masing seharga Rp.' .
number_format ($_POST['harga'],
2) . ', termasuk pajak sebesar ' .
$_POST['pajak'] . '%, adalah Rp.' .
$jum . '.</p>';
} else { // nilai yang disubmit tak-valid
echo '<h1>Error!</h1>
<p
class="error">Silahkan masukkan kuantias, harga, dan pajak
yang valid.</p>';
}
} // Akhir dari IF
// Tinggalkan bagian PHP dan ciptakan
form HTML
?>
<h1>Kalkulator Biaya
Belanja</h1>
<form
action="kalkulator.php" method="post">
<p>Kuantitas: <input type="text" name=
"kuantitas" size="5" maxlength="5"
value="<?php if (isset($_POST['kuantitas']
)) echo $_POST['kuantitas']; ?>" /></p>
<p>Harga: <input type="text" name=
"harga" size="5" maxlength="10"
value="<?php if (isset($_POST['harga']))
echo $_POST ['harga']; ?>" /></p>
<p>Pajak (%): <input type="text" name=
"pajak" size="5" maxlength="5"
value="<?php if (isset($_POST['pajak']))
echo $_POST['pajak']; ?>" />(optional)</p>
<p><input type="submit" name="submit"
value="Hitung!" /></p>
<input type="hidden" name="submitted"
value="1" />
</form>
<?php // mencantumkan footer:
include ('C:\wamp\www\footer.html');
?>
No comments:
Post a Comment