Rabu, 18 Mei 2016

Stuktur Pengulangan (looping)

Pengertian Struktur Perulangan For dalam PHP

 

Struktur perulangan (atau dalam bahasa inggris disebut dengan loop) adalah instruksi program yang bertujuan untuk mengulang beberapa baris perintah. Dalam merancang perulangan kode program, kita setidaknya harus mengetahui 3 komponen, yaitu kondisi awal dari perulangan,perintah program yang akan diulang, serta kondisi akhir dimana perulangan akan berhenti.
Di dalam bahasa pemograman, terdapat beberapa jenis instruksi perulangan, salah satunya:struktur perulangan FOR.
Sebagai contoh sederhana untuk perulangan for, saya akan membuat program PHP untuk menampilkan 10 baris kalimat “Saya sedang belajar PHP”. Berikut adalah kode program yang digunakan:

1
2
3
4
5
6
7
<?php
for ($i= 1; $i <= 10; $i++)
{
   echo "Saya sedang belajar PHP";
   echo "<br />";
}
?>
Tutorial Belajar PHP - Contoh Hasil Perulangan ForJika anda menjalankan perintah tersebut, maka di web browser akan tampil sebanyak 10 kalimat. Kemampuan bahasa pemograman untuk melakukan perulangan ini sangat praktis jika yang kita inginkan adalah mengulang beberapa perintah yang sama sebanyak beberapa kali.

Cara Penulisan Struktur Perulangan For dalam PHP

Seperti yang telah saya singgung sebelumnya, untuk kondisi perulangan for, kita setidaknya membutuhkan 3 kondisi, yaitu di kondisi awal perulangan, kondisi pada saat perulangan, dan kondisi yang harus dipenuhi agar perulangan berhenti.
Penulisan dasar format perulangan for PHP adalah sebagai berikut:
for (start; condition; increment)
{
   statement;
}
  • Start adalah kondisi pada saat awal perulangan. Biasanya kondisi awal ini digunakan untuk membuat dan memberikan nilai kepada variabel counter yang digunakan untuk mengontrol perulangan. Misalkan, kita akan membuat variabel counter $i, maka untuk kondisi start ini, kita juga harus memberikan nilai awal untuk variabel $i, misalnya dengan 1, maka $i=1.
  • Condition adalah kondisi yang harus dipenuhi agar perulangan dijalankan. Selama kondisi ini terpenuhi, maka PHP akan terus melakukan perulangan. Biasanya variabel counter digunakan untuk mengatur akhir perulangan. Misalkan kita ingin menghentikan perulangan jika variabel $i telah mencapai nilai 20, maka pada bagian condition ini kita membuat perintah $i<=20, yang berarti selama nilai $i kurang atau sama dengan 20, terus lakukan perulangan.
  • Increment adalah bagian yang digunakan untuk memproses variabel counter agar bisa memenuhi kondisi akhir perulangan. Biasanya, pada bagian inilah kita akan membuat kondisi dari variabel counter.
  • Statement adalah bagian kode program yang akan diproses secara terus-menerus selama proses perulangan berlangsung. Untuk statement ini, kita membuat blok program di antara tanda kurung kurawal (dan }) sebagai penanda bahwa bagian di dalam kurung kurawal inilah yang akan dikenai proses perulangan.
Sebagai contoh, kita akan membuat perulangan untuk menampilkan angka 1-15 kedalam web browser, berikut kode PHP yang digunakan:
1
2
3
4
5
6
7
<?php
for ($i= 1; $i <= 15; $i++)
{
   echo $i;
   echo "<br />";
}
?>
Tutorial Belajar PHP - Contoh Hasil Perulangan For 2Jika anda menjalankan kode tersebut, maka di dalam web browser akan tampil urutan angka dari 1 sampai dengan 15.
Sebagai kondisi awal dari perulangan tersebut adalah $i= 1, dimana saya memberikan nilai 1 kepada variabel $i. Variabel $i inilah yang akan menjadi counter atau penghitung dari perulangan for.
Untuk kondisi akhir, saya membuat $i <= 15, jadi selama variabel $i bernilai kurang atau sama dengan 15, maka perulangan akan terus dijalankan.
Sebagai increment, saya membuat $i++, dimana instruksi ini sama dengan $i=$i+1. instruksi ini akan dijalankan pada setiap perulangan, sehingga dengan kata lain, setiap proses perulangan, $iakan bertambah 1 angka.
Selain berfungsi sebagai counter, variabel $i juga dapat digunakan dalam proses perulangan, sehingga dengan membuat perintah echo $i, maka dalam setiap perulangan, kita bisa menampilkan nilai $i pada saat itu.
Sebagai contoh lain, saya ingin membuat perulangan untuk menampilkan angka 0-100, namun untuk kelipatan 5, seperti: 0.5.10..dst, sampai dengan 100.

Berikut adalah contoh kode PHPnya:
1
2
3
4
5
6
<?php
for ($i= 0; $i <= 100; $i=$i+5)
{
   echo $i;
   echo "<br />";
}
Tutorial Belajar PHP - Contoh Hasil Perulangan For 3Perbedaan penulisanstruktur for diatas dibandingkan contoh sebelumnya adalah pada bagian increment, dimana saya membuat kondisi increment yang menaik sebanyak 5 angka setiap perulangannya ($i=$i+5).Sehingga variabel counter$i akan bertambah sebanyak 5 pada setiap perulangan.
Kita juga bisa membuat perluangan dengan kondisi mundur, seperti contoh kode PHP berikut ini:

1
2
3
4
5
6
<?php
for ($i= 20; $i >= 1; $i--)
{
   echo $i;
   echo "<br />";
}
Di dalam kode tersebut, saya memulai nilai awal dari angka $i= 20, membuat perulangan selama $i >= 1, dan pada setiap perulangan, nilai $i akan dikurangi 1 angka ($i–). Dengan kondisi tersebut, maka variabel counter $i akan dikurangi 1 pada setiap perulangan.

Pengertian Infinity Loop

Ketika membuat kondisi akhir dari perluangan for, kita harus memperhatikan kapan kondisi akhir tersebut dipenuhi. Jika kondisi akhir tidak pernah terpenuhi, maka perulangan akan berjalan selamanya. Hal ini dikenal dengan infinity loop.
Seperti yang terjadi untuk kode seperti berikut ini:

1
2
3
4
5
6
<?php
for ($i= 20; $i >= 1; $i++)
{
   echo $i;
   echo "<br />";
}
Jika anda menjalankan kode tersebut, proses perulangan akan berjalan terus menerus, sehingga untuk menghentikannya kita harus menutup paksa web browser.
Kesalahan dari struktur for tersebut adalah pada kondisi akhir dari perulangan, dimana saya membuat $i >= 1, sehingga ketika nilai awal variabel counter $1 adalah 20, dan dalam tiap perulangan $i ditambah 1, maka nilai $i akan selalu lebih besar dari 1, sehingga kondisi akhir tidak akan pernah terpenuhi, dan $i >= 1 akan selalu benar.
Infinity loop ini kadang diperlukan untuk kasus-kasus tertentu. Namun kebanyakan kita akan menghindari perulangan jenis ini.


Pengertian Nested Loop (Perulangan Bersarang)

Selain infinity loop, terdapat istilah lainnya yang sering digunakan dalam proses perulangan, yakninested loop, atau terjemahan bebasnya: perulangan bersarang.
Nested loop adalah istilah pemograman yang berarti membuat perulangan di dalam perulangan. Perhatikan contoh program berikut:

1
2
3
4
5
6
7
8
9
<?php
for ($i=0; $i <10; $i++)
{
   for ($j=0; $j <10; $j++)
   {
      echo $i;
   }
   echo "<br />";
}
Tutorial Belajar PHP - Contoh Hasil Perulangan For Bersarang - Nested LoopDalam contoh program diatas, saya membuat perulangan di dalam perulangan. Counter $j digunakan untuk perulangan dalam (inner loop), dan counter $i digunakan di dalam perulangan luar (outer loop).
Nested loop ini biasanya digunakan dalam program yang membutuhkan pengaksesan kompleks, seperti array 2 atau 3 dimensi.


Cara Alternatif Penulisan Perulangan For dalam PHP

Sama seperti struktur if, PHP juga memiliki alternatif perulangan tanpa menggunakan tandakurung kurawal sebagai penanda blok program, dan menggantinya dengan endfor.
Berikut adalah contoh perulangan for dengan endfor:

1
2
3
4
5
6
<?php
for ($i= 1; $i <= 15; $i++) :
   echo $i;
   echo "<br />";
endfor;
?>
Perbedaan dengan penulisan for dengan kurung kurawal adalah penanda awal blok yang menggunakan tanda titik dua (:) dan pada akhir blok dengan perintah endfor.

Instruksi for yang telah kita pelajari dalam tutorial PHP ini membutuhkan syarat yaitu kita telah mengetahui berapa kali perulangan akan dilakukan pada saat penulisan program. Untuk kondisi dimana kita tidak bisa menentukan berapa banyak proses perulangan yang terjadi, maka PHP menyediakan struktur perulangan while.
Untuk lebih lanjut akan kita bahas pada tutorial belajar PHP berikutnya: Pengertian dan Cara Penulisan Perulangan While dalam PHP.

Struktur Pengendalian2

Switch Case

 

Switch adalah operator kondisi yang memiliki fungsi yang sama dengan if elseif. Operator ini juga dipakai untuk kondisi percabangan lebih dari satu. Bedanya if elseif mengerjakan tugasya dengan cara memeriksa statement kondisi yang ada satu persatu, maka switch tidak. Switch akan memeriksa nilai statement kondisi bersamaan lalu menjalankan yag nilai kondisinya sesuai. Perhatikan contoh berikut.
<?php

$nilai = $_POST['nilai_huruf'];

if($nilai=="A"){

 echo "Nilai Anda memuaskan";

}

elseif($nilai=="B"){

 echo "Nilai Anda bagus";

}

elseif($nilai=="C"){

 echo "Nilai Anda cukup";

}

elseif($nilai=="D"){

 echo "Nilai Anda masih kurang";

}

else{

 echo "Nilai Anda JELEK!";

}

?>
Adapun bila menggunakan switch adalah
<?php

$nilai = $_POST['nilai_huruf'];

swicth($nilai){

 case "A":

  echo "Nilai Anda memuaskan";

  break;

 case "B":

  echo "Nilai Anda bagus";

  break;

 case "C":

  echo "Nilai Anda cukup";

  break;

 case "D":

  echo "Nilai Anda masih kurang";

  break;

 case "E":

  echo "Nilai Anda JELEK!";

  break;

}

?>
Sebagai bahan contoh akan saya sertakan contoh script yang memanfatkan if else if ini atau bisa juga dengan versi switch case. Yuk simak contohnya pada source code di bawah ini
<h1>Cek Nilai (Lulus atau Tidak)</h1>

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

Nilai: <input type="text" name="nilai" /> <input type="submit" name="cek" value="Lihat Hasil" />

</form>



<?php

$nilai_lulus = 70; // nilai batas minimum

if(isset($_POST['cek'])){ // cek bahwa tombol cek ditekan

if($_POST['nilai']>=$nilai_lulus){

 echo "Selamat, Anda LULUS...";

}else{

 echo "Maaf, nilai Anda masuh kurang. Batas kelulusan $nilai_lulus...";

}

}

?>

Struktur Pengendalian1


If, If Else, If Elseif dan Switch di PHP



If adalah kontrol struktur logika yang memungkinkan Anda mengeksekusi blok program (code) berdasarkan kondisi tertentu. If adalah salah satu komponen yang membangun perilaku dinamis PHP. If dalam PHP sendiri pada dasarnya memiliki fungsi yang sama dengan pemrograman lain yang berbasis desktop maupun mobile, hanya beda cara implementasi saja. Sebagai gambaran, apa pernah ada seseorang mengatakan kepada Anda, "jika Anda bekerja keras, maka Anda akan berhasil"? Begitulah kurang lebih gambaran mengenai pernyataan kondisi if.
Sedikit berbagi info, Penggunaan if dalam PHP memerlukan tanda kurawal sebagai pembatas antara deklarasi kondisi dan statemen. tapiiii kalo baris statement hanya satu perintah atau satu baris program (satu baris program ditandai dengan semicolon atau titik koma) maka tidak diberi kurawal pun tidak masalah, beda halnya dengan statemen lebih dari satu baris program. Dalam PHP sendiri expresi logika if terdiri dari beberapa cara, dan akan saya bahas di bawah

If ...

Kondisi if ini adalah kondisi if yang paling sederhana (if tunggal). Pada blok kondisi sedehana if ini baris program atau statemen hanya akan dijalankan jika memenuhi kondisi. Adapun syntaxnya dapat dilihat seperti berikut:
if(kondisi){
    ... code atau statemen yang akan dijalankan
}
Di bawah ini adalah contoh sederhana blok program yang menggunakan logika if
<?php

$nilai = $_POST['nilai'];

if($nilai>60){

 echo "Selamat Anda lulus";

}

?>

If ... else

Penggunaan if else ini tidak jauh berbeda dari if tunggal. Karena ini merupakan pola kembangan dari sebelumnya dimana sebelumnya hanya akan mengeksekusi coding yang memenuhi kondisi saja, tapi dengan if else akan mengeksekusi coding alternatif jika tidak memenuhi kondisi atau perbandingan.
Berhatikan baris program di bawah
<?php

$nilai = $_POST['nilai'];

if($nilai>60){

 echo "Selamat Anda lulus";

}else{

 echo "Maaf Anda belum lulus, nilai Anda kurang ",(60-$nilai);

}

?>
Terlihat jelas kan dari contoh di atas, bahwasanya dengan if else script akan terasa lebih hidup atau interaktif. Dan memang inilah yang membuah program jadi dinamis, khususnya PHP.

If ... elseif ... else

Selanjutnya adalah formula kompleks untuk logika pemilihan if, yakni if elseif else. Kondisi ini adalah berguna ketika memasuki pilihan lebih dari satu opsi hasil. Yuk kita lihat contoh berikut
<?php

$nilai = $_POST['nilai'];

if($nilai>=90){

 echo "Nilai Anda memuaskan";

}

elseif($nilai>=80){

 echo "Nilai Anda bagus";

}

elseif($nilai>=65){

 echo "Nilai Anda cukup";

}

elseif($nilai>=50){

 echo "Nilai Anda masih kurang";

}

else{

 echo "Nilai Anda JELEK!";

}

?>
Dari contoh di atas dapat disimpulkan bahwa ifelse ini dapat kita ulang sebanyak kondisi yang memungkinkan untuk dipenuhi. Adapun else dalam if elseif ini ini boleh dihilangkan jika memang tidak ada statemen yang ingin dieksekusi ketika kondisi tidak memenuhi semuanya.
Perlu DIPERHATIKAN!
Ketika menguji sebuah nilai dalam logika if ini, input yang diberikan user bersifat sensitif case atau peka terhadap huruf besar dan kecil! begitu juga dengan nama variabelnya!

Form dan Modulasi

Form dan Modulasi

 Pengertian Form
Form merupakan salah satu elemen dalam HTML yang digunakan untuk menerima input dari pengunjung. Melalui form pengunjung sebuah halaman web dapat melakukan interaksi dengan web. Pengunjung dapat memasukan data melalui elemen-elemen input seperti textfield, checkbox, radio button, textarea, submit button, dropdown dan lain-lain. Selain itu pengunjung  juga dapat melakukan pemilihan data mengunakan elemen select list atau dengan istilah lain combo box atau drop-down list. Form membuat sebuah halaman web menjadi web interaktif dan dinamis, karena form merupakan satu-satunya sarana bagi pengembang website untuk mendapatkan informasi dari pengguna.
Berikut perintah dasar Form :
<form>
Input elements
</form>
Ada dua atribut yang digunakan pada elemen form yaitu method dan action.
Method yang berfungsi sebagai pengiriman data pada server dengan cara ke tujuan yaitu :
- Get: mengirim data pada server dengan cara meletakan data pada bagian akhir URL yang ditunjuk.
- Post : mengirim datanya secara terpisah.
Perbedaannya, jika kita mengisi atribut method dengan get (dimana ini adalah nilai default seandainya kita tidak menuliskannya) maka isian form akan terlihat pada url browser. Method get ini biasanya digunakan untuk query pencarian. Method post biasanya digunakan untuk data yang lebih sensitif seperti yang berisi password, atau registrasi user. Data hasil form tidak akan terlihat pada browser.
Action yang berfungsi menentukan lokasi dari script yang akan memproses data dari form.
Struktur dasar form akan terlihat sebagai berikut:
<form action="logindata.php" method="post">
...isi form...
</form>
Elemen yang paling penting dalam form adalah elemen input. Elemen ini memungkinkan pengunjung memasukan data melalui halaman form yang datanya kemudian akan dikirimkan keserver. Ada banyak elemen-elemen input pada form, yang dapat digunakan oleh pengguna untuk mengisikan data dengan yang berbeda-beda jenisnya. Berikut ini saya akan membahas tiap-tiap elemen input  form, beserta dengan cara pembuatannya.
1.      Text Field
Elemen yang digunakan untuk memasukan text dalam satu baris. Lebar karakter defaultnya adalah 20 karakter.
Penulisan :< input type=”text” />
Berikut contohnya :
<form>
First name : <input type=”text” name=”first name” /><br/>
Last name :< input type=”text” name=”last name” />
</form>
2.      Password Field
Untuk memasukan datu baris teks dengan format chiphertext/password. Dengan karakter yang disamarkan dengan bulatan atau tanda “*”.
Penulisan :< input type=”password” />
Berikut contohnya :
<form>
Password : <input type=”password” name=”password”/>
</form>
3.      Radio Button
Radio button digunakan agar dapat memilih salah satu pilihan. Contoh jenis kelamin (male or female).
Penulisannya :  Radio Button<input type="radio">
Berikut contohnya :
<form>
Jenis kelamin <input type =”radio” name=”sex value=”male”/> Male<br/>
<input type =”radio” name=”sex value=”female”/> Female
</form>
4.      Text Area
Digunakan sebagai input kontrol form untuk memasukan teks lebih dari satu baris. Elemen ini mempunyai atribut yaitu name, cols, dan rows.
Seperti dijelaskan berikut :
Nama                    = nama dari veriabel yang dikirim ke suatu aplikasi
Rows                     = panjang baris dalam karakter
Cols                       = tinggi kotak
Penulisannya : <text area>
                  Name=”name”
Cols=”number”
Row=”number”
...........
</text area>
Berikut contohnya:
Alamat : <textarea name="Alamat" cols="25" rows="4"></textarea>
5.      Check Box
Check Box digunakan untuk dapat memilih lebih dari satu pilihan.
Penulisannya: Check Box<input type="checkbox">
Berikut contohnya :
Hobi :
<form>
                        <input type=checkbox name=hobi value=Membaca>Baca Buku
                        <input type=checkbox name=hobi value=Kesenian>kesenian
                        <input type=checkbox name=hobi value=olahraga>Olahraga
                        <input type=checkbox name=hobi value=Traveling>Jalan Jalan
</form>
6.      Select List
Digunakan untuk menampilkan daftar pilihan dalam bentuk drop-down list.
Penulisannya :
<select>
......
</select>
Berikut contohnya:
Pekerjaan :
                        <select name=Pekerjaan>
                                    <option value=Pelajar>Pelajar/Mahasiswa
                                    <option value=PNS>Pegawai Negeri Sipil
                                    <option value=Karyawan>Karyawan
                                    <option value=Wiraswasta>Wiraswasta
                        </select>
7.      Submit Button
Digunakan untuk mengirimkan data dari halaman web ke server. Setiap elemen form membutuhkan tombol submit untuk mengirimkan nama dan nilinya ke suatu aplikasi yang di tentukan dalam  atribut ACTION dlam elemen FORM.
Penulisannya : Submit<input type="submit">
Berikut contohnya :
<form name=”input” action=”proses input.php” method=”get’>
....................
..................
<input type=submit value=kirim data/>
</form>
8.      Reset Button
Digunakan untuk membatalkan semua proses ata mereset proses pengisian data yang dilakukan di elemen input form.
Penulisannya : Reset<input type="reset">
Berikut contohnya :
<form name=”input” action=”proses input.php” method=”get’>
....................
..................
<input type=submit value=kirim data/>
<input type=reset value=reset data/>
</form>
Jadi beberapa contoh elemen tadi digabungkan akan menjadi seperti berikut :
<html>
<head>
<title bgcolor="Black">Contoh pembuatan Form</title>
</head>
<body>
<form action="prosesinput.php" method="get">
     <p> First name : <input type=”text” name=”first name” /><br/>
 Last name :< input type=”text” name=”last name” />
<p> Password : <input type=”password” name=”password”/>
<p> Jenis kelamin : <input type =radio name=”sex value=”male”/> Male
       <input type =radio name=”sex value=”female”/> Female
<p> Alamat : <textarea name="Alamat" cols="25" rows="4"></textarea>
            <p> Hobi :       <input type=checkbox name=hobi value=Membaca>Baca Buku
                                    <input type=checkbox name=hobi value=Kesenian>kesenian
                                    <input type=checkbox name=hobi value=olahraga>Olahraga
                                    <input type=checkbox name=hobi value=Traveling>Jalan Jalan
<p> Pekerjaan :
                                    <select name=Pekerjaan>
                                    <option value=Pelajar>Pelajar/Mahasiswa
                                    <option value=PNS>Pegawai Negeri Sipil
                                    <option value=Karyawan>Karyawan
                                    <option value=Wiraswasta>Wiraswasta
                                    </select>
            <p>Komentar : <textarea name="komentar" cols="25" rows="4"></textarea>
            <p><input type=submit value=kirim data/><input type=reset value=ulang>
</form>
</body>
</html>


Berikut picturenya :