Switch



Switch merupakan perintah yang digunakan untuk berpindah dari beberapa pernyataan dan juga termasuk statement yang dapat dipergunakan untuk menyatakan suatu pernyataan kondisional atau bersyarat seperti halnya IF. Dalam Switch terdiri dari beberapa case yang diikuti dengan break dan terdapat fungsi Default untuk mengembalikan ke tampilan default jika program tidak diberikan masukan apapun. Untuk penulisan dalam program adalah sebagai berikut :

switch(var)
 {
     case 1 : statement A;
     break;
     case 2 : statement B;
     break;
     . . . . .
     default : statement n;
}

Dalam Switch, persyaratan hanya diuji sekali saja. Diantara sekian pilihan case, secara otomatis PHP akan menjalankan blok dimana case yang sesuai. Proses pencarian case yang sesuai ini tidak dimulai dari pilihan case paling atas namun secara otomatis langsung menuju case yang sesuai. namun jika tidak diberikan masukan apapun akan kembali ke Default.

Contoh Program Switch

Berikut ini adalah contoh dari penggunaan Switch. (Jangan lupa untuk mengaktifkan XAMPPLITE sebelum menjalankan program di browser. . .)

<?php
$angkaBln = date("n");
switch($angkaBln)
{
    case 1 : $namaBln = "Januari";
    break;
    case 2 : $namaBln = "Pebruari";
    break;
    case 3 : $namaBln = "Maret";
    break;
    case 4 : $namaBln = "April";
    break;
    case 5 : $namaBln = "Mei";
    break;
    case 6 : $namaBln = "Juni";
    break;
    case 7 : $namaBln = "Juli";
    break;
    case 8 : $namaBln = "Agustus";
    break;
    case 9 : $namaBln = "September";
    break;
    case 10: $namaBln = "Oktober";
    break;
    case 11: $namaBln = "Nopember";
    break;
    case 12: $namaBln = "Desember";
    break;
}
echo "Nama bulan sekarang adalah : ".$namaBln."</br>";
?>

Tampilan Setelah Program Dijalankan











============================  Break  ==================================

Berikut ini adalah beberapa contoh penggunaan Switch. jangan lupa untuk mengaktifkan XAMMPLITE sebelum menjalankan program pada browser. ( Untuk tutorial penggunaan XAMMPLITE dapat dilihat di sini ).

1. Misalkan diberikan script berikut ini
<?php
$bil = 10;
switch ($bil)
{
case 5 : echo "Bilangan sama dengan 5 <br />";
break;
           : echo "Bilangan sama dengan 8 <br />";
break;
           : echo "Bilangan sama dengan 10 <br />";
           : echo  "Bilangan sama dengan 12 <br />";
           : echo "Bilangan tidak sama dengan 5, 8, 10 dan 12 <br />";
break;
default : case 8 case 10 case 12;
}
?>
Dengan tanpa menjalankan script di browser, coba tebak kira-kira apa outputnya hayoo??  Bila  sudah,  coba  bandingkan  hasilnya  bila  dijalankan  di  browser. Selanjutnya simpulkan!

Jawaban : Untuk output terdapat pesan error, dikarenakan terdapat fungsi case dan break yang kurang lengkap.

Listing program Setelah Diperbaiki



<html>

<head>

<title>Switch</title>

</head>

<body>

<h1>Tugas Switch 1</h1>

<?php

$bil = 0;

switch($bil)

{

    case 5 : echo "Bilangan sama dengan 5 <br />";

    break;

    case 8 : echo "Bilangan sama dengan 8 <br />";

    break;

    case 10 : echo "Bilangan sama dengan 10 <br />";

    break;

    case 12 : echo "Bilangan sama dengan 12 <br />";

    break;

    default : echo "Bilangan tidak sama dengan 5, 8, 10 dan 12 <br />";

    break;

}

?>

</body>

</html>



Saat Dijalankan Di Browser





2. Soal  analog  no.  2,  namun  dalam  hal  ini  terdapat  4  jenis  upah  perjam  nya dibedakan berdasarkan golongan:
Golongan      Upah perjam
A                   Rp. 4.000,-
B                   Rp. 5.000,-
C                   Rp. 6.000,-
D                   Rp. 7.500,-

Sedangkan upah  lemburnya  dihitung  sama  untuk  setiap  golongan,  yaitu  Rp. 3.000,- per jamnya.  Buatlah  form  untuk  mengisikan  jumlah  jam kerja selama  seminggu,  dan juga memilih  golongan  karyawannya  (gunakan  radiobutton). Apabila  form tersebut disubmit maka akan muncul jumlah upah yang diperoleh karyawan.


Listing Program



<html>

    <head>

    <title>Switch</title>

    </head>

<body>

<h1>Tugas Switch 2</h1>

<form method="post"action=" ">

    Jumlah Jam Kerja <input type="text" name="jam" /><br/>

    Golongan

    <input type="radio" name="gol" value="A"><A/>A

    <input type="radio" name="gol" value="B"><B/>B

    <input type="radio" name="gol" value="C"><C/>C

    <input type="radio" name="gol" value="D"><D/>D<br/>

    <input type="submit" name="submit" value="submit" />

    <input type="reset" name="reset" value="reset" /><br/>

<?php

    $gol = $_POST[gol];

    $jam = $_POST[jam];

    $upah1 = 4000;

    $upah2 = 5000;

    $upah3 = 6000;

    $upah4 = 7500;

    $gajiA = $jam*$upah1;

    $lembur1 = ($jam - 48) * $upah1;

    $glA = (48 * $upah1) + $lembur1;

    $gajiB = $jam*$upah2;

    $lembur2 = ($jam - 48) * $upah2;

    $glB = (48 * $upah2) + $lembur2;

    $gajiC = $jam*$upah3;

    $lembur3 = ($jam - 48) * $upah3;

    $glC = (48 * $upah3) + $lembur3;

    $gajiD = $jam*$upah4;

    $lembur4 = ($jam - 48) * $upah4;

    $glD = (48 * $upah4) + $lembur4;

    echo "Jumlah Jam Kerja ".$_POST[jam]. " jam/minggu <br/>";

    switch($jam)

    {

        case $jam <= 48 && $gol && $gol == 'A': echo "Gaji Golongan ".$gol." adalah Rp. ".$gajiA."<br />";

        break ;

        case $jam <= 48 && $gol && $gol == 'B': echo "Gaji Golongan ".$gol." adalah Rp. ".$gajiB."<br />";

        break ;

        case $jam <= 48 && $gol && $gol == 'C': echo "Gaji Golongan ".$gol." adalah Rp. ".$gajiC."<br />";

        break ;

        case $jam <= 48 && $gol && $gol == 'D': echo "Gaji Golongan ".$gol." adalah Rp. ".$gajiD."<br />";

        break ;



        case $jam > 48 && $gol && $gol == 'A': echo "Gaji Golongan ".$gol." adalah Rp. ".$glA."<br />";

        break ;

        case $jam > 48 && $gol && $gol == 'B': echo "Gaji Golongan ".$gol." adalah Rp. ".$glB."<br />";

        break ;

        case $jam > 48 && $gol && $gol == 'C': echo "Gaji Golongan ".$gol." adalah Rp. ".$glC."<br />";

        break ;

        case $jam > 48 && $gol && $gol == 'D': echo "Gaji Golongan ".$gol." adalah Rp. ".$glD."<br />";

        break ;

    }

?>

</form>

</body>

</html>


 Tampilan program setelah dijalankan






3. Karyawan  honorer  di  perusahan  XXX  digaji  berdasarkan  jumlah  jam  kerjanya selama satu minggu. Upah per jamnya adalah Rp.  2.000,-. Bila jumlah jam kerja selama  satu  minggunya  lebih  besar  dari  48  jam,  maka  sisanya  dianggap  jam lembur dengan upah per jam lemburnya adalah Rp. 3.000,-
Buatlah form untuk memasukkan jumlah jam kerja selama satu minggu seorang karyawan. Setelah form disubmit, maka akan tampil jumlah upah yang diterima karyawan tersebut. Gunakan script PHP untuk membuat hal ini. (Menggunakan konsep Switch)

Listing Program



<html>

    <head>

    <title>Switch</title>

    </head>

<body>

<h1>Tugas Switch No 3</h1>

<form method="get"action=" ">

    Jumlah Jam Kerja <input type="text" name="jam" /><br/>

    <input type="submit" name="submit" value="submit" />

    <input type="reset" name="reset" value="reset" /><br/>

<?php

$jam = $_GET[jam];

$upah1 = 2000;

$upah2 = 3000;

$gaji1 = $jam * $upah1;

$lembur = ($jam - 48) * $upah2;

$gaji2 = (48 * $upah1) + $lembur;

echo "Jumlah Jam Kerja ".$_GET[jam]. " jam/minggu <br>";

switch($jam)

{

    case $jam <= 48 : echo "Gaji = Rp. ".$gaji1."</br>";

    break;

    case $jam > 48 : echo "Gaji = Rp. ".$gaji2."</br>";

    break;

    default : "Belum Memasukan Jumlah Jam Kerja";

}

?>

</form>

</body>

</html>

 

Tampilan setelah program dijalankan





4. Dengan  menggunakan  konsep  SWITCH,  buatlah  script  untuk  membaca  bulan saat ini dan tampilkan jumlah hari dalam bulan tersebut.

Listing Program



<html>

<head>

<title>Switch</title>

</head>

<body>

<h1>Tugas Switch No 4</h1>

<?php

$bulan = date("n");

switch($bulan)

{

    case 1 : $bulan = "Januari"; $hari = 31;

    break;

    case 2 : $bulan = "Pebruari";  $hari = 28;

    break;

    case 3 : $bulan = "Maret";  $hari = 31;

    break;

    case 4 : $bulan = "April"; $hari = 30;

    break;

    case 5 : $bulan = "Mei"; $hari = 31;

    break;

    case 6 : $bulan = "Juni"; $hari = 30;

    break;

    case 7 : $bulan = "Juli"; $hari = 31;

    break;

    case 8 : $bulan = "Agustus"; $hari = 31;

    break;

    case 9 : $bulan = "September";$hari = 30;

    break;

    case 10: $bulan = "Oktober"; $hari = 31;

    break;

    case 11: $bulan = "Nopember";$hari = 30;

    break;

    case 12: $bulan = "Desember"; $hari = 31;

    break;

}

echo "Nama bulan sekarang adalah : ".$bulan."</br>";

echo "Jumlah hari adalah : ".$hari;

?>

</body>

</html>




Tampilan program setelah dijalankan




5. Buatlah  aplikasi  sederhana  untuk  menghitung  luas  beberapa  bangun  datar. Pertama   buat   halaman   index.php   yang   isinya   menu   pilihan   berbentuk radiobutton atau combobox yang itemnya sbb:
- - - -
Bujur sangkar Persegi panjang Lingkaran Segitiga 

Dan sebuah tombol submit di bawah pilihan menu tersebut. 

Misalkan  apabila  user  memilih  menu  Bujur  Sangkar  dan  ia  mengklik  submit, maka nantinya akan muncul form untuk mengisikan panjang sisi bujur sangkar dan sebuah tombol submit. Jika tombol submit ini diklik maka selanjutnya akan muncul hasil luasnya. Selanjutnya bila user memilih Persegi Panjang dalam menunya dan ia mengklik submit maka akan muncul form untuk mengisikan panjang dan lebar persegi panjang serta sebuah tombol submit. Bila tombol ini diklik maka akan memunculkan hasil luas persegi panjang. Begitu seterusnya…. 

Paham kan? Ya… sambil mengingat-ingat pelajaran di SD ☺ 

Catatan: Gunakan konsep SWITCH dalam menerapkan pemilihan menunya.

Listing Program


<html>
<head>
<title>Switch</title>
</head>
<h1>Tugas Switch No 5</h1>
<body>
<form method="POST" action="">
Bangun Datar<br>
<input type="radio" name="bangun"value="bujursangkar"><bujursangkar/>Bujur Sangkar<br/>
<input type="radio" name="bangun" value="persegipanjang"><persegipanjang/>Persegi Panjang<br/>
<input type="radio" name="bangun" value="lingkaran"><Lingkaran/>Lingkaran<br/>
<input type="radio" name="bangun" value="segitiga"><Segitiga/>Segitiga<br/>
<input type="submit" value="Submit">
<input type="reset" value="Reset">
</form>
<?php
$bangun = $_POST[bangun];
switch($bangun)
{
    case 'bujursangkar' :
    {
        echo "<a href=bs.php></br>Lanjutkan Disini</a>";
    }
    break;
    case 'persegipanjang' :
    {
        echo "<a href=pp.php></br>Lanjutkan Disini</a>";
    }
    break;
    case 'lingkaran' :
    {
        echo "<a href=ling.php></br>Lanjutkan Disini</a>";
    }
    break;
    case 'segitiga' :
    {
        echo "<a href=segi3.php></br>Lanjutkan Disini</a>";
    }
    break;
}
?>
</body>
</html>

Listing program untuk pengalihan (a href)






Tampilan program sebelum memilih bangun datar



Tampilan program setelah memilih bangun datar





Dari program yang telah dibuat, terdapat satu fungsi atu perintah baru yang digunakan. Yaitu Hyperlink yang digunakan untuk mengalihkan program ke program lain yang telah dibuat. Penulisan sintaks <a href=file.php>perintah</a>. Sebagai contoh, program awal yang dibuat adalah memilih bangun datar. Setelah disubmit, maka akan muncul pilihan pengalihan pada program lain yang telah dibuat. Sehingga secara otomatis akan masuk pada program lain yang telah dibuat dan disebutkan pada program pertama. Dari program pertama untuk memilih bangun datar, disebutkan pada fungsi Switch untuk mengalihkan ke program lain dengan nama program bs.php, pp.php, ling.php, segi3.php. Sehingga jika dipilih salah satu dari bangun datar, otomatis akan dialihkan ke program lain yang dipilih.

. . . SELAMAT MENCOBA . . .


Comments

Popular posts from this blog

Membuat Biodata Pada Visual Studio Code

Hapus Data dengan PHP - MySQL

Session