Saturday, January 7, 2017

Bab 1. PHP/MySQL Untuk Pemula


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" />&nbsp;
          &nbsp;<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" />&nbsp;
          &nbsp;<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" />&nbsp;
          &nbsp;<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" />&nbsp;
         &nbsp;<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 &copy; <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> &amp; <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 &copy; <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> &amp; <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