Pemrograman web dengan_php_my_sql

1,579 views

Published on

Published in: Education, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,579
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
306
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Pemrograman web dengan_php_my_sql

  1. 1. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)1Pemrograman Webdengan PHP dan MySQLAchmad Solichin, S.KomBuku ini disusun berdasarkan materi perkuliahan Pemrograman Web sesuaidengan kurikulum standar di perguruan tinggi komputer. Di dalam buku initidak terlalu dibahas mengenai teori dan algoritma pemrograman, namunbanyak berisi contoh‐contoh program yang dapat dipraktekkan secara langsungserta disertai dengan penjelasannya. Dengan demikian, buku ini sangat cocokbagi Anda yang baru belajar pemrograman web dan haus akan contoh‐contohprogram. Buku ini juga sesuai dijadikan sebagai referensi penyusunanpraktikum perkuliahan bagi mahasiswa maupun siswa.v1.0Achmad Solichin, S.KomUniversitas Budi Luhur, Jakartahttp://achmatim.net – achmatim@gmail.com
  2. 2. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)2…ku persembahkan untuk Indonesia tanah air tercinta, dan untuk ChotimatulMusyarofah istri tersayang serta Muhammad Lintang putra tercinta kami…
  3. 3. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)3Lisensi DokumenSeluruh isi dalam dokumen ini dapat digunakan, dimodifikasi dan disebarluaskan secarabebas untuk tujuan pendidikan, pembelajaran dan bukan komersial (non profit), dengansyarat tidak menghilangkan, menghapus atau mengubah atribut penulis dokumen ini danpernyataan dalam lisensi dokumen yang disertakan di setiap dokumen. Tidak diperbolehkanmelakukan penulisan ulang atau mengkomersialkan buku ini kecuali mendapatkan ijinterlebih dahulu dari penulis.
  4. 4. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)4Kata PengantarInternet merupakan salah satu fenomena paling berpengaruh dalam beberapa dekadeterakhir ini, baik bagi perkembangan teknologi itu sendiri maupun bagi perkembangandisiplin ilmu lain, seperti ekonomi, politik, sosial dan budaya. Perkembangan internet jugaberpengaruh langsung terhadap perkembangan situs web. Di awal kemunculannya, internetmaupun situs web belum begitu populer karena layanannya yang masih terbatas. Namunlihatlah saat ini, situs web sudah demikian populer dan layanannya pun beragam, mulai darisitus berita seperti Detik dan Okezone, situs penyedia email seperti Yahoo dan Gmail,sampai situs pertemanan (social networking) seperti Friendster dan Facebook.Dalam kaitannya dengan situs web dan layanan di dalamnya tidak lepas dari teknologidi baliknya, yaitu pemrograman web, desain web dan database. Salah satu bahasapemrograman yang banyak digunakan untuk membangun suatu situs web adalah PHP(http://www.php.net). Penggunaannya saat ini bahkan sudah mencapai 25 juta situs web.Sedangkan dari sisi database, penggunaan MySQL (http://www.mysql.com) masih jugamendominasi dalam aplikasi berbasis web.Melalui buku ini, penulis berusaha mengenalkan dasar‐dasar dari PHP dan MySQLuntuk membangun suatu situs web. Buku ini sebagian besar menyajikan berbagai contohprogram yang disusun secara terstruktur dari yang mudah sampai yang cukup kompleks.Dengan adanya contoh‐contoh program tersebut, diharapkan pembaca dapatmempraktekkannya secara langsung (learning by doing) dan dapat menyimpulkan sendirimaksud dari setiap perintah dalam program dengan cara melihat hasil yang ditampilkan dilayar (browser). Di akhir buku ini, disajikan contoh yang lebih nyata, yaitu aplikasi situs beritasederhana yang dapat dikembangkan lebih lanjut.Buku ini cocok bagi pembaca yang baru mulai belajar PHP dan MySQL secara mandirikarena contoh‐contoh dalam buku ini disajikan sesederhana mungkin. Buku ini juga cocokdigunakan sebagai panduan praktikum pemrograman web di perguruan tinggi, sekolahmaupun kursus‐kursus.Akhirnya penulis berharap agar buku ini bermanfaat bagi perkembangan ilmu danpengetahuan di Indonesia, khususnya dalam hal pemrograman web dan internet. Saran dankritik untuk perbaikan buku ini sangat penulis harapkan. Saran, kritik dan masukan mengenaibuku ini dapat disampaikan melalui email ke penulis di achmatim@gmail.com atau melaluisitus penulis di http://achmatim.net.PenulisAchmad Solichin
  5. 5. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)5Daftar IsiI. Pengenalan Web Server dan Server Side Scripting...............................71. Web Server.................................................................................................................. 72. Server Side Scripting ................................................................................................... 83. Test Instalasi XAMPP di Browser............................................................................... 13II. Struktur Dasar PHP ............................................................................. 141. Sebelum Belajar PHP................................................................................................. 142. Mari Mengenal PHP .................................................................................................. 143. Say Hello to PHP........................................................................................................ 154. Variabel ..................................................................................................................... 155. Tipe Data ................................................................................................................... 166. Konstanta .................................................................................................................. 177. Operator dalam PHP ................................................................................................. 178. Komentar Program.................................................................................................... 19III. Struktur Kondisi dan Perulangan........................................................ 211. Struktur Kondisi......................................................................................................... 212. Struktur Perulangan.................................................................................................. 253. Struktur Break dan Continue .................................................................................... 29IV. Penanganan Form............................................................................... 301. Berbagai Cara Penanganan Form.............................................................................. 302. Form Input Type TEXT dan PASSWORD .................................................................... 333. Form Input Type RADIO ............................................................................................ 364. Form Input Type CHECK BOX .................................................................................... 385. Form Input Type COMBO BOX .................................................................................. 396. Form Input Type TEXTAREA ...................................................................................... 41V. Array dan Fungsi ................................................................................. 431. Pengantar Array ........................................................................................................ 432. Fungsi‐fungsi Array dalam PHP ................................................................................. 473. Fungsi dalam PHP...................................................................................................... 50VI. Penanganan String dan Tanggal ......................................................... 521. Pengantar String........................................................................................................ 522. Fungsi‐fungsi String dalam PHP ................................................................................ 533. Fungsi‐fungsi Operasi Tanggal dalam PHP................................................................ 60VII. File dan Direktori ................................................................................ 621. Penanganan File........................................................................................................ 62
  6. 6. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)62. Membuat dan Menghapus Direktori ........................................................................ 663. Manipulasi File .......................................................................................................... 684. Upload File ................................................................................................................ 69VIII. Session dan Cookies............................................................................ 721. Session....................................................................................................................... 722. Cookies...................................................................................................................... 75IX. Pemrograman Berorientasi Objek dalam PHP ................................... 771. Pengantar Pemrograman Berorientasi Objek........................................................... 772. Object dan Class........................................................................................................ 773. Properties dan Method............................................................................................. 784. Mendefinisikan Class................................................................................................. 785. Memanfaatkan Class yang Tersedia.......................................................................... 82X. Pengenalan DBMS dan MySQL........................................................... 841. Tentang Database, DBMS dan RDBMS...................................................................... 842. Tentang MySQL......................................................................................................... 853. Instalasi MySQL di Windows..................................................................................... 854. Koneksi ke Server MySQL dengan MySQL Client ...................................................... 955. Berbagai MySQL Client untuk Administrasi Server MySQL....................................... 96XI. Pengenalan Structured Query Language............................................ 991. Apa Itu SQL ?............................................................................................................. 992. Membuat, Mengubah dan Menghapus Table ........................................................ 1013. Menambah Record dengan INSERT ........................................................................ 1054. Mengedit Record dengan UPDATE ......................................................................... 1065. Menghapus Record dengan DELETE ....................................................................... 107XII. Aplikasi Berita dengan PHP dan MySQL ........................................... 1131. Merancang Struktur Database................................................................................ 1132. Membuat File Koneksi Database............................................................................. 1143. Membuat Halaman Input Berita ............................................................................. 1144. Menampilkan Berita Terbaru di Halaman Depan ................................................... 1155. Membuat Halaman Arsip Berita ............................................................................. 1176. Membuat Halaman Edit Berita ............................................................................... 1187. Membuat Halaman Delete Berita........................................................................... 1208. CSS sebagai Pemanis Tampilan ............................................................................... 120
  7. 7. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)7Bab 1Pengenalan Web Server dan Server SideScriptingPengenalan Web ServerInstalasi dan Konfigurasi Web ServerInstalasi dan Konfigurasi PHPTesting Web Server dan PHPWeb ServerWeb Server merupakan sebuah perangkat lunak dalam server yang berfungsimenerima permintaan (request) berupa halaman web melalui HTTP atau HTTPSdari klien yang dikenal dengan browser web dan mengirimkan kembali (response)hasilnya dalam bentuk halaman-halaman web yang umumnya berbentukdokumen HTML.Gambar 1.1. Standar Web ArchitectureGambar 1.2. Dynamic Web ArchitectureBeberapa Web Sever yang banyak digunakan di internet antara lain :1. Apache Web Server (http://www.apache.org)2. Internet Information Service, IIS (http://www.microsoft.com/iis)Web DocumentsR
  8. 8. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)83. Xitami Web Server (http://www.xitami.com)4. Sun Java System Web Server(http://www.sun.com/software/products/web_srvr/home_web_srvr.xml)Server Side ScriptingServer Side Scripting merupakan sebuah teknologi scripting atau pemrogramanweb dimana script (program) dikompilasi atau diterjemahkan di server. Denganserver side scripting, memungkinkan untuk menghasilkan halaman web yangdinamis.Beberapa contoh Server Side Scripting (Programming) :5. ASP (Active Server Page) dan ASP.NET6. ColdFusion (http://www.macromedia.com/software/coldfusion)7. Java Server Pages (http://java.sun.com/products/jsp/)8. Perl (http://www.perl.org)9. Phyton (http://www.python.org)10. PHP (http://www.php.net)Keistimewaan PHPCepatFreeMudah dipelajariMulti-platformDukungan technical-supportBanyaknya komunitas PHPAmanInstalasi Apache, PHP dan MySQL dengan XAMPPProses instalasi Apache, PHP dan MySQL seringkali menjadi kendala terutamabagi pemula yang baru belajar pemrograman web dengan PHP. Hal tersebutdisebabkan karena software tersebut harus diinstall dan dikonfigurasikan satu persatu. Bagi belum mengerti benar, tentu sering mengalami kesulitan, apalagi bagikita yang belajar secara mandiri.Namun jangan berkecil hati, saat ini banyak tersedia aplikasi paket yangmenyatukan ketiga software tersebut (Apache, PHP dan MySQL) ke dalam satuinstaller. Proses instalasinya pun dapat dilakukan dengan mudah dan cepat,hanya perlu next, next, and finish.Beberapa aplikasi paket tersebut antara lain:1. XAMPP (versi Windows) dan LAMPP (versi Linux) yang dapat didownload dihttp://apachefriends.org.2. WAMP Server.3. APPServ4. PHPTriad.Penulis sendiri menyarankan pemakaian XAMPP atau WAMP Server karena versisoftware di dalamnya menggunakan versi terbaru.Persiapan Instalasi1. Pastikan komputer Anda belum terinstall web server lain seperti IIS atau PWSkarena dapat menyebabkan bentrok dengan web server Apache. Namundemikian, jika Anda masih tetap mempertahankan program tersebut, setelahinstalasi selesai Anda dapat mengkonfigurasikan Apache secara manualdengan mengganti nomor port yang digunakan.
  9. 9. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)92. Download Source XAMPP versi stabil terbaru di http://apachefriends.org. Pilihversi sesuai dengan sistem operasi yang Anda gunakan (tersedia versi untukWindows, Linux dan Mac).3. Pastikan komputer yang Anda gunakan berjalan dengan baik dengankapasitas memori dan hardisk yang masih mencukupi.Proses Instalasi XAMPP1. Jalankan file installer XAMPP xampp-win32-x.x.x-installer.exe.Gambar 1.1. File installer XAMPP2. Akan ditampilkan window instalasi XAMPP. Pilih Next > untuk memulai prosesinstalasi.Gambar 1.2. Window Instalasi XAMPP
  10. 10. Pemro3. AloB4. SXograman WeAkan ditampokasi (foldeBrowse.. . PelanjutnyaXAMPP nantib dengan PHilkan windoer) dimanaPilih tombolGambakan ditamnya. TekanGaP dan MySQLow lokasi tuja XAMPP aNext > untar 1.3. Foldmpilkan windtombol Insambar 1.4. WLjuan instalaakan diinsttuk melanjuer tujuan indow pilihanstall untuk mWindow pilihsi (destinattall denganutkan prosesnstalasi XAMn untuk kemmelanjutkanhan XAMPPtion folder),n menekans instalasi.MPPmudahan mn proses instentukann tombolmengaksesstalasi.
  11. 11. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)115. Proses instalasi dimulai.Gambar 1.5. Proses instalasi dimulai6. Proses instalasi selesai. Klik Finish untuk menutup proses instalasi.Gambar 1.6. Proses instalasi selesai
  12. 12. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)127. Jika proses instalasi berjalan dengan lancar makan akan ditampilkan windowkonfirmasi.Gambar 1.7. Konfirmasi Instalasi Berhasil8. Kita dapat mengatur XAMPP dengan mengakses XAMPP Control Panel yangdapat diakses melalui menu di Program Files atau icon di taskbar.Gambar 1.8. XAMPP Control Panel
  13. 13. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)13Test Instalasi XAMPP di BrowserUntuk memastikan bahwa XAMPP beserta PHP, Apache dan MySQL berjalandengan baik, bukalah browser dan ketikkan URL sebagai berikut:http://localhostJika semua sudah berjalan dengan baik, maka akan ditampilkan gambar sebagaiberikut:Gambar 1.9. Tampilan XAMPP di BrowserPilih bahasa yang ingin digunakan dan akan ditampilkan halaman utama XAMPPsebagai berikut:Gambar 1.9. Tampilan XAMPP di Browser
  14. 14. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)14Bab 2Struktur Dasar PHPSebelum Belajar PHPMari Mengenal PHPSay Hello to PHPVariabelTipe DataKonstantaOperator dalam PHPKomentar ProgramSebelum Belajar PHP1. Saya asumsikan Anda telah mengenal dengan cukup baik komputer Anda, danjuga bisa mengoperasikannya. Jadi Anda seharusnya sudah mengertiperbedaan file dan direktori, bagaimana menyimpan file atau document,bagaimana meng-copy file, dan seterusnya.2. Saya asumsikan Anda telah mengerti bagaimana membuka dan menggunakansalah satu atau salah semua dari editor seperti Notepad, EditPlus, CrimsonEditor, Dreamweaver, atau yang lainnya. Saya asumsikan juga, Anda telahmengerti bagaimana membuat, mengedit, dan menyimpan suatu file denganeditor tersebut.3. Saya asumsikan bahwa Apache, PHP, dan MySQL di komputer yang Andapakai sudah berjalan sebagaimana mestinya.4. Saya asumsikan Anda telah mengerti bagaimana cara menggunakan WebBrowser (IE, Mozilla, Opera, dsb)5. Saya asumsikan Anda telah mengenal dan mengerti dengan cukup baiktentang tag-tag HTML dan juga bagaimana menggunakannya. Anda tentusudah mengambil matakuliah Pemrograman Web 1 atau Internet kan ?6. Saya asumsikan bahwa penglihatan Anda masih normal sehingga bisamembedakan antara :Tulisan nama, Nama dan NAMAKoma (,), titik-koma (;) dan titik-dua (:)Kutip-tunggal (‘) dan kutip-ganda (“)Tulisan namamhs, nama_mhs dan nama mhs7. Saya asumsikan Anda pernah menggunakan www.google.comMari Mengenal PHPTahukah Anda, PHP itu.....1. Merupakan singkatan recursive dari PHP : Hypertext Prepocessor2. Pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1994.3. Harus ditulis di antara tag :<? dan ?><?php dan ?><script language=”php”> dan </script><% dan %>4. Setiap satu statement (perintah) biasanya diakhiri dengan titik-koma (;)5. CASE SENSITIVE untuk nama identifier yang dibuat oleh user (berupavariable, konstanta, fungsi dll), namun TIDAK CASE SENSITIVE untukidentifier built-in dari PHP. Jadi :$nama ≠ $Nama ≠ $NAMA
  15. 15. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)15hitungLuas() ≠ HitungLuas()echo = ECHOwhile = WHILE6. Mudah dipelajari.Say Hello to PHP1. Ketikkan perintah di bawah ini di editor :Program 2.1Nama File : hello.phpDeskripsi : Program sederhana menampilkan sebuah string di layar.123<?phpecho "Hello, Nama saya PHP ";?>2. Simpan dengan nama “hello.php” di document-root komputer Anda.3. Buka browser dan ketikkan alamat http://localhost/hello.php4. Lihat hasilnya di browser. Akan terlihat tampilan seperti pada gambar 2.1Gambar 2.1. Tampilan Program 2.1VariabelDigunakan untuk menyimpan sebuah value, data atau informasiNama variabel diawali dengan tanda $Panjang tidak terbatasSetelah tanda $ diawali oleh huruf atau under-scrore (_). Karakterberikutnya bisa terdiri dari huruf, angka, dan karakter tertentu yangdiperbolehkan (karakter ASCII dari 127 – 255).Bersifat case-sensitive.Tidak perlu dideklarasikan.Tidak boleh mengandung spasi.Contoh :Benar- $_name- $first_name- $name3- $name_3Salah- $3name- $name?- $first+name- $first.name- $first nameProgram 2.2Nama File : variabel.phpDeskripsi : Program mengisi dan menampilkan variabel di layar.
  16. 16. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)161234567<?php$nim = "0411500400";$nama = Chotimatul Musyarofah;echo "NIM : " . $nim . "<br>";echo "Nama : $nama";?>Gambar 2.2. Tampilan Program 2.2Tipe DataPada PHP, tipe data variabel tidak didefinisikan oleh programmer, akan tetapisecara otomatis ditentukan oleh intepreter PHP. Namun demikian, PHPmendukung 8 (delapan) buah tipe data primitif, yaitu :1. boolean2. integer3. float4. string5. array6. object7. resource8. NULLProgram 2.3Nama File : tipe.phpDeskripsi : Program contoh penanganan beberapa tipe data dasar dalamPHP.12345678910111213141516<?php$nim = "0411500400";$nama = Chotimatul Musyarofah;$umur = 23;$nilai = 82.25;$status = TRUE;echo "NIM : " . $nim . "<br>";echo "Nama : $nama<br>";print "Umur : " . $umur; print "<br>";printf ("Nilai : %.3f<br>", $nilai);if ($status)echo "Status : Aktif";elseecho "Status : Tidak Aktif";?>
  17. 17. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)17Gambar 2.3. Tampilan Program 2.3KonstantaKonstanta merupakan variabel konstan yang nilainya tidak berubah-ubah. Untukmendefinisikan konstanta dalam PHP, menggunakan fungsi define()Program 2.4Nama File : konstanta.phpDeskripsi : Program penggunaan konstanta dalam PHP.12345678<?define ("NAMA", "Achmad Solichin");define ("NILAI", 90);//NAMA = "Muhammad"; //akan menyebabkan errorecho "Nama : " . NAMA;echo "<br>Nilai : " . NILAI;?>Gambar 2.4. Tampilan Program 2.4Operator dalam PHPJenis Operator Operator Contoh KeteranganAritmatika + $a + $b Pertambahan- $a - $b Pengurangan* $a * $b Perkalian/ $a / $b Pembagian% $a % $b Modulus, sisa pembagian
  18. 18. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)18Penugasan = $a = 4; $a diisi dengan 4Bitwise & $a & $b Bitwise AND| $a | $b Bitwise OR^ $a ^ $b Bitwise XOR~ ~$b Bitwise NOT<< $a << $b Shift Left>> $a >> $b Shift RightPerbandingan == $a == $b Sama dengan=== $a === $b Identik!= $a != $b Tidak sama dengan<> $a <> $b Tidak sama dengan!== $a !== $b Tidak identik< $a < $b Kurang dari> $a > $b Lebih dari<= $a <= $b Kurang dari sama dengan>= $a >= $b Lebih dari sama denganLogika and $a and $b TRUE jika $a dan $b TRUE&& $a && $b TRUE jika $a dan $b TRUEor $a or $b TRUE jika $a atau $b TRUE|| $a || $b TRUE jika $a dan/atau $b TRUExor $a xor $b TRUE jika $a atau $b TRUE, tapitidak keduanya! !$a TRUE jika $a FALSEString . $a . $b Penggabungan string $a dan $bProgram 2.5Nama File : operator.phpDeskripsi : Program beberapa Operator aritmatika dalam PHP.12345678<?$gaji = 1000000;$pajak = 0.1;$thp = $gaji - ($gaji*$pajak);echo "Gaji sebelum pajak = Rp. $gaji <br>";echo "Gaji yang dibawa pulang = Rp. $thp";?>Gambar 2.5. Tampilan Program 2.5
  19. 19. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)19Program 2.6Nama File : operator2.phpDeskripsi : Program operator logika dan perbandingan dalam PHP.1234567891011<?$a = 5;$b = 4;echo "$a == $b : ". ($a == $b);echo "<br>$a != $b : ". ($a != $b);echo "<br>$a > $b : ". ($a > $b);echo "<br>$a < $b : ". ($a < $b);echo "<br>($a == $b) && ($a > $b) : ".(($a != $b) && ($a > $b));echo "<br>($a == $b) || ($a > $b) : ".(($a != $b) || ($a > $b));?>Gambar 2.6. Tampilan Program 2.6Komentar ProgramDalam PHP, komentar program bisa menggunakan :/* dan */// dan#Program 2.7Nama File : komentar.phpDeskripsi : Program cara memberikan komentar dalam program PHP.12345678910<?/* Ini komentar tidak akan tercetak di layaryang ini juga komentar*/// Nah kalo ini komentar satu baris# Terus kalo ini juga komentarecho "Ini akan tercetak di layar";?>
  20. 20. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)20Gambar 2.7. Tampilan Program 2.7
  21. 21. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)21Bab 3Struktur Kondisi dan PerulanganStruktur Kondisi+ Struktur Kondisi If+ Struktur Kondisi If...Else+ Struktur Kondisi Khusus ? :+ Struktur Kondisi Switch...CaseStruktur Perulangan+ Struktur Kondisi For+ Struktur Kondisi While+ Struktur Kondisi Do...While+ Struktur Kondisi ForeachStruktur Break dan ContinueStruktur KondisiStruktur Kondisi Ifif (kondisi) {statement-jika-kondisi-true;}Keterangan :kondisi merupakan statemen atau variabel yang akan diperiksa TRUEatau FALSE-nya.Struktur Kondisi If ... Elseif (kondisi) {statement-jika-kondisi-true;} else {statement-jika-kondisi-false;}Keterangan :kondisi merupakan statemen atau variabel yang akan diperiksa TRUEatau FALSE-nya. Jika kondisinya TRUE maka statemen yang berada di blokif akan dieksekusi, sebaliknya jika kondisinya FALSE maka statemen yangberada di blok else yang akan dieksekusi.Struktur Kondisi Khusus ? :(kondisi) ? benar : salah;Keterangan :kondisi merupakan statemen atau variabel yang akan diperiksa TRUEatau FALSE-nya. Statement pada blok benar dan salah hanya boleh satustatemen sajaStruktur Kondisi Switch ... Caseswitch ($var) {case 1 : statement-1; break;case 2 : statement-2; break;....}
  22. 22. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)22Keterangan :$var merupakan variabel yang akan diperiksa isi atau nilainya. Tipe datavariabel ini tidak dibatasi.Value pada case juga bisa berupa string, integer, boolean, bahkan bisaberupa conditional-statement. Boleh memakai kutip tunggal maupun kutipganda.Program 3.1Nama File : if.phpDeskripsi : Program Struktur Kondisi If.123456<?php$nilai = 80;if ($nilai >= 60) {echo "Nilai Anda $nilai, Anda LULUS";}?>Penjelasan Program 3.1Pada program di atas, terdapat pemeriksaan kondisi apakah isi variabel $nilailebih dari 60 (baris 3). Jika kondisi ini bernilai TRUE (variabel $nilai berisi nilaiyang lebih besar dari 60) maka statement pada baris ke-4 akan dijalankan.Sebaliknya jika kondisinya FALSE, maka statement pada baris ke-4 tidak akandijalankan.Gambar 3.1. Tampilan Program 3.1Program 3.2Nama File : if_else.phpDeskripsi : Program Struktur Kondisi If..Else.12345678<?php$nilai = 50;if ($nilai >= 60) {echo "Nilai Anda $nilai, Anda LULUS";} else {echo "Nilai Anda $nilai, Anda GAGAL";}?>Penjelasan Program 3.2Pada program di atas, terdapat pemeriksaan kondisi apakah isi variabel $nilailebih dari 60 (baris 3). Jika kondisi ini bernilai TRUE (variabel $nilai berisi nilaiyang lebih besar dari 60) maka statement pada baris ke-4 akan dijalankan.Sebaliknya jika kondisinya FALSE, maka statement pada baris ke-6 yang akandijalankan. Pada contoh program di atas, kondisi pada baris ke-3 bernilai FALSEkarena isi variabel $nilai adalah 50.
  23. 23. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)23Gambar 3.2. Tampilan Program 3.2Program 3.3Nama File : if_else2.phpDeskripsi : Program Memeriksa username dan password dengan If..Else.123456789<?php$user = "achmatim";$pass = "123"if ($user == "achmatim" && $pass == "123") {echo "Login Berhasil";} else {echo "Login Gagal";}?>Penjelasan Program 3.3Pada program di atas, terdapat pemeriksaan kondisi apakah isi variabel $nilaisama dengan “achmatim” dan apakah isi variabel $pass sama dengan “123”(baris 4). Jika kedua kondisi tersebut bernilai TRUE maka statement pada bariske-5 akan dijalankan. Sebaliknya jika salah satunya bernilai FALSE, makastatement pada baris ke-7 yang akan dijalankan.Gambar 3.3. Tampilan Program 3.3Program 3.4Nama File : if_var.phpDeskripsi : Program Memeriksa suatu variabel ada atau tidak.12345678<?php$user="";if (!isset($user)) {echo "Variabel tidak ada/belum terbentuk";} else {echo "Variabel ada";}?>
  24. 24. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)24Penjelasan Program 3.4Pada program di atas, terdapat fungsi isset() yang merupakan fungsi untukmemeriksa apakah suatu variabel sudah terbentuk (ada) atau belum. Fungsi akanbernilai TRUE jika variabelnya ada. Jadi jika baris ke-2 dari program di atas di-remark atau dihilangkan maka statement pada baris ke-4 yang akan dijalankan.Gambar 3.4. Tampilan Program 3.4Program 3.5Nama File : switch.phpDeskripsi : Program Struktur Switch..Case untuk menampilkan nama haridalam bahasa Indonesia.1234567891011121314<?php$day = date ("D");switch ($day) {case Sun : $hari = "Minggu"; break;case Mon : $hari = "Senin"; break;case Tue : $hari = "Selasa"; break;case Wed : $hari = "Rabu"; break;case Thu : $hari = "Kamis"; break;case Fri : $hari = "Jumat"; break;case Sat : $hari = "Sabtu"; break;default : $hari = "Kiamat";}echo "Hari ini hari <b>$hari</b>";?>Penjelasan Program 3.5Pada program di atas, variabel $day (baris ke-2) akan berisi 3 (tiga) digitpertama dari nama hari dalam bahasa Inggris. Dengan fungsi date(), kita akanmemperoleh informasi tanggal, hari dan waktu sekarang. Fungsi ini akandiperlajari lebih lanjut pada Bab mendatang. Selanjutnya isi variabel $day akandiperiksa dengan switch (baris ke-3), jika isinya adalah ‘Sun’ maka $hari adalah“Minggu” dan seterusnya.Gambar 3.5. Tampilan Program 3.5
  25. 25. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)25Program 3.6Nama File : if_khusus.phpDeskripsi : Program Struktur Kondisi Khusus ? untuk memeriksa tahunkabisat.12345<?php$tahun = date ("Y");$kabisat = ($tahun%4 == 0) ? "KABISAT" : "BUKAN KABISAT";echo "Tahun <b>$tahun</b> $kabisat";?>Penjelasan Program 3.6Pada program di atas, fungsi date() dengan parameter “Y” (baris ke-2) akanmenghasilkan 4 digit tahun sekarang. Pada baris ke-3 akan diperiksa apakah isivariabel $tahun jika dimodulus dengan 4 akan menghasilkan nilai 0. Jika TRUEmaka $kabisat akan berisi “KABISAT” dan jika FALSE $kabisat akan berisi“BUKAN KABISAT”Gambar 3.6. Tampilan Program 3.6Struktur PerulanganStruktur Perulangan Forfor (init_awal, kondisi, counter) {statement-yang-diulang;}Keterangan :init_awal merupakan inisialisasi atau nilai awal variable.kondisi merupakan statemen kondisi yang akan membatasi perulangan.counter merupakan pertambahan atau pengurangan nilai variabelsehingga perulangan tetap berjalan.Struktur Perulangan Whileinit_awal;while (kondisi) {statement-yang-diulang;counter;}Keterangan :init_awal merupakan inisialisasi atau nilai awal variable.kondisi merupakan statemen kondisi yang akan membatasi perulangan.counter merupakan pertambahan atau pengurangan nilai variabelsehingga perulangan tetap berjalan.
  26. 26. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)26Struktur Perulangan Do ... whileinit_awal;do {statement-yang-diulang;counter;} while (kondisi);Keterangan :init_awal merupakan inisialisasi atau nilai awal variable.kondisi merupakan statemen kondisi yang akan membatasi perulangan.counter merupakan pertambahan atau pengurangan nilai variabelsehingga perulangan tetap berjalan.Pada struktur do...while, pemeriksaan kondisi ada di bawah, sehinggastatement yang berada dalam block do...while setidaknya akan dieksekusisebanyak satu kali.Struktur Perulangan Foreachforeach (array_expression as $value)statement;foreach (array_expression as $key => $value)statement;Keterangan :Struktur foreach biasanya digunakan untuk melakukan perulanganberdasarkan isi suatu array. Perulangan akan berakhir jika isi array telahhabis.Program 3.7Nama File : for.phpDeskripsi : Program Struktur Perulangan For dan beberapa variasinya.12345678910111213141516171819202122232425262728293031<?php/* contoh 1 */for ($i = 1; $i <= 10; $i++) {echo "$i ";}echo "<br><br>";/* contoh 2 */for ($i = 1; ; $i++) {if ($i > 10) {break;}echo "$i ";}echo "<br><br>";/* contoh 3 */$i = 1;for (; ; ) {if ($i > 10) {break;}echo "$i ";$i++;} echo "<br><br>";/* contoh 4 */for ($i = 1; $i <= 10; print "$i ", $i++);?>
  27. 27. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)27Penjelasan Program 3.7Program di atas merupakan bentuk-bentuk perulangan dengan menggunakan for.Contoh yang pertama (baris 4-6) merupakan bentuk yang paling umum. Padacontoh 2, batas akhir perulangan tidak disebutkan dalam for, tapi diatur dengan ifdan break (baris 11-13).Gambar 3.7. Tampilan Program 3.7Program 3.8Nama File : while.phpDeskripsi : Program Struktur Perulangan While dan beberapa variasinya.1234567891011121314151617181920212223<?php/* contoh 1 */$i = 1;while ($i <= 10) {echo $i++;}echo "<br><br>";/* contoh 2 */$i = 1;while ($i <= 10):echo "$i";$i++;endwhile;echo "<br><br>";/* contoh 3 */$i = 1;while ($i <= 6) {echo "<h$i>Heading $i</h$i>";$i++;}?>Penjelasan Program 3.8Program di atas merupakan beberapa variasi perulangan dengan while. Contohyang pertama (baris 3-6) merupakan bentuk yang paling umum dipakai. Blokperintah (baris 5) akan dijalankan selama pemeriksaan kondisi pada baris ke-4bernilai TRUE. Contoh kedua merupakan bentuk lain dari while, bentuk ini jarangdigunakan. Pada contoh ketiga, penggunaan perulangan untuk menampilkantulisan dengan format <H1> sampai <H6>
  28. 28. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)28Gambar 3.8. Tampilan Program 3.8Program 3.9Nama File : dowhile.phpDeskripsi : Program Struktur Perulangan dengan Do...While.123456789<?php$i = 1;do {echo "$i ";$i+=2;} while ($i <= 20);?>Penjelasan Program 3.9Program di atas akan menampilkan bilangan ganjil antara 1 sampai 20menggunakan struktur perulangan do..while. Pada struktur perulangando...while, pemeriksaan kondisi berada di bawah.Gambar 3.9. Tampilan Program 3.9
  29. 29. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)29Struktur Break dan ContinueProgram 3.10Nama File : break.phpDeskripsi : Program Struktur Break dan Continue.1234567891011<?phpfor ($i=1; $i<10; $i++) {if ($i == 5)continue;if ($i == 8)break;echo "$i ";}?>Penjelasan Program 3.10Dari program di atas, dapat disimpulkan bahwa perintah continue akanmelanjutkan proses perulangan tanpa melewati (meng-eksekusi) baris perintah dibawahnya. Jadi perintah pada baris 6-8 akan dilewati (5 tidak akan tercetak)Sedangkan dengan perintah break akan menyebabkan program menghentikanperulangan (langsung keluar dari perulangan)Gambar 3.10. Tampilan Program 3.10
  30. 30. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)30Bab 4Penanganan FormBerbagai Cara Penanganan FormForm Input Type TEXT dan PASSWORDForm Input Type RADIOForm Input Type CHECKBOXForm Input Type COMBO BOXForm Input Type TEXTAREAForm inputan dibuat dengan tag-tag HTML. Halaman yang mengandung formmurni (tidak ada script php) tidak harus disimpan dalam bentuk php, bisa dalambentuk html.Untuk merancang sebuah form inputan, setidaknya ada 3 (tiga) hal penting, yi :1. METHODMethod dari sebuah form menentukan bagaimana data inputan form dikirim.Method ini ada dua macam, yaitu GET dan POST. Method ini menentukanbagaimana data inputan dikirim dan diproses oleh PHP.2. ACTIONAction dari sebuah form menentukan dimana data inputan dari form diproses.Jika action ini dikosongkan, maka dianggap proses form terjadi di halamanyang sama. Jadi halaman form dan halaman proses bisa saja dipisah ataudijadikan satu.3. SUBMIT BUTTONSubmit button merupakan sebuah tombol (pada umumnya) yang berfungsisebagai trigger pengiriman data dari form inputan. Jika tombol ini ditekan,maka data form akan dikirimkan (diproses) di halaman yang sudah ditentukanpada atribut action.Berbagai Cara Penanganan FormCara 1 : Menyatukan antara Form dan ProsesProses pengolahan form dilakukan di halaman yang sama dengan forminputannya. Jika proses penanganan form berada di satu halaman, maka valueatribut action pada tag form tidak perlu diisi (dikosongkan).Program 4.1Nama File : input01.phpDeskripsi : Program Contoh pengolahan form dimana antara form inputandan proses pengolahan inputan berada dalam satu halaman.12345678910111213141516<html><head><title>Pengolahan Form</title></head><body><FORM ACTION="" METHOD="POST" NAME="input">Nama Anda : <input type="text" name="nama"><br><input type="submit" name="Input" value="Input"></FORM></body></html><?phpif (isset($_POST[Input])) {$nama = $_POST[nama];echo "Nama Anda : <b>$nama</b>";}?>
  31. 31. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)31Penjelasan Program 4.1Beberapa hal yang perlu diperhatikan dari program 4.1 di atas, di antaranyamengenai nama setiap komponen form karena nama ini akan menjadi index arraydalam PHP. Pada program 4.1 di atas, value atribut action pada tag form tidakdiisi (baris 4), ini berarti bahwa proses pengolahan form berada di halaman yangsama. Selanjutnya (baris 4) method yang digunakan dalam penanganan formadalah POST. Cara ini lebih disarankan dalam penanganan sebuah form inputan.Mulai baris ke-11 hingga 16, terdapat script / program PHP yang akanmenangani (mengolah) nilai yang diinputkan melalui form. Letak proses inputanini boleh sebelum atau sesudah form, tergantung kebutuhan. Pada baris ke-12,terdapat pemeriksaan kondisi apakah tombol dengan nama “Input” (perhatikanindex array $_POST dan bandingkan dengan name tombol submit pada form)benar-benar ditekan atau tidak oleh user. Selanjutnya pada baris ke-13, nilaiinputan dari form akan diambil dengan cara mengakses array $_POST sesuaidengan komponen form yang akan diambil. Pada baris 13 ini, isi komponeninputan dengan nama “nama” akan diambil dan dimasukkan ke variabel $nama.Index array $_POST pada baris 13 harus sama dengan value atribut name padabaris ke-5.Gambar 4.1. Tampilan Program 4.1Cara 2 : Memisahkkan antara Form dan ProsesProses pengolahan form dilakukan di halaman yang terpisah dengan forminputannya. Jika proses penanganan form berada dilakukan di halaman yangberbeda, maka value atribut action pada tag form harus diisi dengan alamathalaman tempat proses pengolahan form.Program 4.2Nama File : input02.phpDeskripsi : Program menampilkan form inputan dengan method POST123456789<html><head><title>Pengolahan Form</title></head><body><FORM ACTION="proses02.php" METHOD="POST" NAME="input">Nama Anda : <input type="text" name="nama"><br><input type="submit" name="Input" value="Input"></FORM></body></html>
  32. 32. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)32Program 4.3Nama File : proses02.phpDeskripsi : Program penanganan form inputan untuk Program 4.2.123456<?phpif (isset($_POST[Input])) {$nama = $_POST[nama];echo "Nama Anda : <b>$nama</b>";}?>Gambar 4.2. Tampilan Program 4.2Gambar 4.3. Tampilan Program 4.3Program 4.4Nama File : input03.phpDeskripsi : Program menampilkan form inputan dengan method GET123456789<html><head><title>Pengolahan Form</title></head><body><FORM ACTION="proses03.php" METHOD="GET" NAME="input">Nama Anda : <input type="text" name="nama"><br><input type="submit" name="Input" value="Input"></FORM></body></html>
  33. 33. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)33Program 4.5Nama File : proses03.phpDeskripsi : Program penanganan form inputan untuk Program 4.4.123456<?phpif (isset($_GET[Input])) {$nama = $_GET[nama];echo "Nama Anda : <b>$nama</b>";}?>Gambar 4.4. Tampilan Program 4.4Gambar 4.5. Tampilan Program 4.5Penjelasan Program 4.2, 4.3, 4.4 dan 4.5Program 4.2 dan program 4.3 pada prinsipnya sama dengan program 4.1.Hasilnya pun sama. Akan tetapi, proses penanganan form (PHP) terpisah dengantampilan form inputannya (HTML). Pada program 4.2 dan 4.3, penanganan formmenggunakan method POST, sedang pada program 4.4 dan 4.5, penangan formdilakukan dengan method GET. Perhatikan, method ini menentukan bagaimanasebuah form diproses dan bagaimana variabel inputan diambil. Bandingkan bariske-2 dan ke-3 pada program 4.3 dan program 4.5 !Form Input Type TEXT dan PASSWORDProgram 4.6Nama File : input04.phpDeskripsi : Program menampilkan form inputan text dalam jumlah banyak.12<html><head><title>Pengolahan Form ~ Text</title></head>
  34. 34. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)34345678910111213<body><FORM ACTION="proses04.php" METHOD="POST" NAME="input">Sahabat-sahabat Dekatku<br><input type="text" name="nama1"><br><input type="text" name="nama2"><br><input type="text" name="nama3"><br><input type="text" name="nama4"><br><input type="submit" name="Input" value="Input"></FORM></body></html>Program 4.7Nama File : proses04.phpDeskripsi : Program penanganan form inputan untuk Program 4.6.12345678910111213<?phpif (isset($_POST[Input])) {$nama1 = $_POST[nama1];$nama2 = $_POST[nama2];$nama3 = $_POST[nama3];$nama4 = $_POST[nama4];echo "<b>Nama Sahabat-sahabat Dekatku :</b> <br>";echo $nama1. "<br>";echo $nama2. "<br>";echo $nama3. "<br>";echo $nama4. "<br>";}?>Penjelasan Program 4.6 dan 4.7Baris 3-6 program 4.7 merupakan proses pengambilan nilai dari masing-masing form inputan text yang terdapat pada program 4.6. Selanjutnya variabelini ditampilkan di layar (baris 8-11, program 4.7).Gambar 4.6. Tampilan Program 4.6
  35. 35. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)35Gambar 4.7. Tampilan Program 4.7Program 4.8Nama File : input05.phpDeskripsi : Program menampilkan form login (inputan text dan password).123456789101112<html><head><title>Login Here</title></head><body><FORM ACTION="proses05.php" METHOD="POST" NAME="input"><h2>Login Here...</h2>Username : <input type="text" name="username"><br>Password : <input type="password" name="password"><br><input type="submit" name="Login" value="Login"><input type="reset" name="reset" value="Reset"></FORM></body></html>Program 4.9Nama File : proses05.phpDeskripsi : Program sederhana untuk memeriksa inputan username danpassword pada program 4.81234567891011<?phpif (isset($_POST[Login])) {$user = $_POST[username];$pass = $_POST[password];if ($user == "achmatim" && $pass == "123") {echo "<h2>Login Berhasil</h2>";} else {echo "<h2>Login Gagal</h2>";}}?>Penjelasan Program 4.8 dan 4.9Program 4.8 akan menampilkan form login sederhana yang terdiri dariinputan username dan password. Selanjutnya nilai yang diinput akan diprosesdi program 4.9. Jika username dan password diinput dengan benar maka akanditampilkan pesan berhasil (lihat gambar) dan jika login salah maka akanditampilkan pesan kesalahan (lihat gambar).
  36. 36. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)36Gambar 4.8. Tampilan Program 4.8Gambar 4.9. Tampilan Program 4.9 Jika Login BerhasilGambar 4.10. Tampilan Program 4.9 Jika Login GagalForm Input Type RADIOPada inputan jenis radio button, user hanya bisa memilih satu pilihan di antarabeberapa pilihan.Program 4.10Nama File : input06.phpDeskripsi : Program menampilkan form pilihan jurusan dengan radio button12345<html><head><title>Pilih Jurusan</title></head><body><FORM ACTION="proses06.php" METHOD="POST" NAME="input"><h2>Pilih Jurusan Anda :</h2>
  37. 37. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)37678910111213<input type="radio" name="jurusan" value="TI" checked>Teknik Informatika<br><input type="radio" name="jurusan" value="SI"> SistemInformasi<br><input type="radio" name="jurusan" value="SK"> SistemKomputer<br><input type="radio" name="jurusan" value="KA">Komputerisasi Akuntansi<br><input type="submit" name="Pilih" value="Pilih"></FORM></body></html>Program 4.11Nama File : proses06.phpDeskripsi : Program untuk mengambil dan menampilkan jurusan yang dipilihpada program 4.101234567<?phpif (isset($_POST[Pilih])) {$jurusan = $_POST[jurusan];echo "Jurusan Anda adalah<b><font color=red>$jurusan</font></b>";}?>Penjelasan Program 4.10 dan 4.11Program 4.10 akan menampilkan form pilihan inputan jurusan dengan radiobutton (lihat gambar). Pada form inputan jenis radio button, name dari masing-masing radio button harus sama, akan tetapi value-nya harus dibedakan.Perhatikan program 4.10 baris 6-9 ! Untuk mengambil nilai (value) dari formjenis radio, bisa langsung dengan mengakses name dari form tersebut.Perhatikan program 4.11 baris ke-3 !Gambar 4.11. Tampilan Program 4.10
  38. 38. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)38Gambar 4.12. Tampilan Program 4.11Form Input Type CHECK BOXPada form inputan jenis check box, user dimungkinkan memilih lebih dari satupilihan.Program 4.12Nama File : input07.phpDeskripsi : Program menampilkan form inputan nama band favorit dengancheck box.12345678910111213<html><head><title>Band Favorit ~ Inputan Checkbox</title></head><body><FORM ACTION="proses07.php" METHOD="POST" NAME="input"><h2>Pilih Band Favorit Anda :</h2><input type="checkbox" name="band01" value="Padi"checked> Padi<br><input type="checkbox" name="band02" value="Sheila On7"> Sheila On 7<br><input type="checkbox" name="band03" value="Dewa 19">Dewa 19<br><input type="checkbox" name="band04" value="Ungu">Ungu<br><input type="submit" name="Pilih" value="Pilih"></FORM></body></html>Program 4.13Nama File : proses07.phpDeskripsi : Program untuk menampilkan nama band favorit sesuai denganinputan pada program 4.121234567891011121314<?phpif (isset($_POST[Pilih])) {echo "Band Favorit Anda adalah :<br>";if (isset($_POST[band01])) {echo "+ " . $_POST[band01] . "<br>";}if (isset($_POST[band02])) {echo "+ " . $_POST[band02] . "<br>";}if (isset($_POST[band03])) {echo "+ " . $_POST[band03] . "<br>";}if (isset($_POST[band04])) {echo "+ " . $_POST[band04] . "<br>";
  39. 39. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)39151617}}?>Penjelasan Program 4.12 dan 4.13Program 4.12 akan menampilkan form pilihan inputan check box bandfavorit (lihat gambar). Pada form inputan jenis check box, name dari masing-masing check box harus dibedakan. User dapat memilih lebih dari satu pilihan.Perhatikan program 4.12 baris 6-9 ! Untuk mengambil nilai (value) dari formjenis check box, sebaiknya diperiksa terlebih dahulu apakah check box dipilihatau tidak, dengan menggunakan fungsi isset(). Perhatikan program 4.13 bariske-4. Jika check box di-cek (dipilih) maka ambil value dari check box tersebut(baris ke-5)Gambar 4.13. Tampilan Program 4.12Gambar 4.14. Tampilan Program 4.13Form Input Type COMBO BOXProgram 4.14Nama File : input08.phpDeskripsi : Program menampilkan form inputan film kartun favorit dengancombo box.
  40. 40. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)401234567891011121314151617<html><head><title>Film Kartun Favorit ~ Inputan Combobox</title></head><body><FORM ACTION="proses08.php" METHOD="POST" NAME="input"><h2>Pilih Film Kartun Favorit Anda :</h2><select name="kartun"><option value="Sponge Bob">Sponge Bob</option><option value="Sinchan">Sinchan</option><option value="Conan">Conan</option><option value="Doraemon">Doraemon</option><option value="Dragon Ball">Dragon Ball</option><option value="Naruto">Naruto</option></select><input type="submit" name="Pilih" value="Pilih"></FORM></body></html>Program 4.15Nama File : proses08.phpDeskripsi : Program untuk menampilkan nama film kartun favorit sesuaidengan inputan pada program 4.141234567<?phpif (isset($_POST[Pilih])) {$film = $_POST[kartun];echo "Film Kartun Favorit Anda adalah :<font color=blue><b>$film</b></font>";}?>Penjelasan Program 4.14 dan 4.15Program 4.14 akan menampilkan form pilihan inputan combo box filmkartun favorit (lihat gambar). Untuk membuat inputan jenis combo box, bisamenggunakan tag <select> dan <option>. Pada form inputan jenis check box,name diletakkan pada tag <select>. User hanya dapat memilih satu pilihan darisejumlah pilihan yang ditampilkan dalam bentuk drop down list. Lihat gambar.Untuk mengambil nilai (value) dari form jenis combo box, dapat langsungmengaksesnya sesuai dengan name-nya. Perhatikan program 4.15 baris ke-3 !Gambar 4.15. Tampilan Program 4.14
  41. 41. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)41Gambar 4.16. Tampilan Program 4.15Form Input Type TEXTAREAProgram 4.16Nama File : input09.phpDeskripsi : Program menampilkan form inputan kritik dan saran dengan textarea.12345678910111213<html><head><title>Kritik dan Saran ~ InputanTextarea</title></head><body><FORM ACTION="proses09.php" METHOD="POST" NAME="input"><h2>Input Kritik / Saran :</h2><textarea name="saran" cols="40"rows="5"></textarea><br><input type="submit" name="Proses" value="InputSaran"></FORM></body></html>Program 4.17Nama File : proses09.phpDeskripsi : Program untuk menampilkan isi kritik / saran sesuai denganinputan text area pada program 4.161234567<?phpif (isset($_POST[Proses])) {$saran = nl2br($_POST[saran]);echo "Kritik / Saran Anda adalah : <br>";echo "<font color=blue><b>$saran</b></font>";}?>Penjelasan Program 4.16 dan 4.17Program 4.16 akan menampilkan form kritik saran menggunakan text area(lihat gambar). Untuk membuat inputan jenis combo box, bisa menggunakan tag<textarea>. Berbeda dengan inputan type text yang hanya bisa diinput satubaris, pada text area, bisa diinput lebih dari satu baris. Lihat gambar. Untukmengambil nilai (value) dari form jenis textarea, dapat langsung mengaksesnyasesuai dengan name-nya. Perhatikan program 4.17 baris ke-3 !
  42. 42. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)42Gambar 4.17. Tampilan Program 4.16Gambar 4.18. Tampilan Program 4.17
  43. 43. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)43Bab 5Array dan FungsiPengantar ArrayMendeklarasikan dan Menampilkan ArrayFungsi-fungsi Array dalam PHPFungsi dalam PHPPengantar ArrayArray merupakan tipe data terstruktur yang berguna untuk menyimpansejumlah data yang bertipe sama. Bagian yang menyusun array disebut elemenarray, yang masing-masing elemen dapat diakses tersendiri melalui index array.Index array dapat berupa bilangan integer atau string.Mendeklarasikan dan Menampilkan ArrayProgram 5.1Nama File : array01.phpDeskripsi : Program mendeklarasikan array dengan index numeric.123456789101112131415<?php$arrBuah = array ("Mangga", "Apel", "Pisang", "Jeruk");echo $arrBuah[0]; //Manggaecho $arrBuah[3]; //Jeruk$arrWarna = array();$arrWarna[] = "Merah";$arrWarna[] = "Biru";$arrWarna[] = "Hijau";$arrWarna[] = "Putih";echo $arrWarna[0]; //Merahecho $arrWarna[2]; //Hijau?>Penjelasan Program 5.1Untuk mendeklarasikan atau mendefinisikan sebuah array di PHP bisamenggunakan keyword array(). Pada program 5.1, terdapat pendeklarasian danpendefinisian array pada baris ke-3. Jumlah elemen array tidak perlu disebutkansaat deklarasi. Sedangkan untuk menampilkan isi array pada elemen tertentu,cukup dengan menyebutkan nama array beserta index array-nya (lihat baris ke-4dan ke-5). Pendeklarasian dan pengisian array juga bisa dilakukan seperti padabaris ke-7 sampai baris ke-11. Dengan pendefinisian array seperti pada dua caradi atas, index (key) array secara otomatis akan diisi dengan bilangan bulatinteger yang dimulai dari 0.
  44. 44. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)44Gambar 5.1. Tampilan Program 5.1Program 5.2Nama File : array02.phpDeskripsi : Program mendeklarasikan array dengan index string (arrayassosiatif).1234567891011121314<?php$arrNilai = array ("Ani" => 80, "Otim" => 90, "Ana" => 75,"Budi" => 85);echo $arrNilai[Ani]; //80echo $arrNilai[Otim]; //90$arrNilai = array();$arrNilai[Ami] = 80;$arrNilai[Asma] = 95;$arrNilai[Sri] = 77;echo $arrNilai[Asma]; //95echo $arrNilai[Ami]; //80?>Penjelasan Program 5.2Untuk mendeklarasikan atau mendefinisikan sebuah array assosiatif (arrayyang menggunakan index selain integer), dapat dengan cara menyebutkan index-nya terlebih dahulu diikuti operator => dan diikuti value atau nilai elemennya.Lihat program baris ke-3 ! Sedangkan untuk menampilkan value atau nilai darisuatu array, bisa dengan menyebutkan nama array yang diikuti index arraynya(lihat baris ke-4 dan ke-5). Pendefinisian array assosiatif juga bisa dilakukanseperti pada baris ke-7 sampai baris ke-10Gambar 5.2. Tampilan Program 5.2Program 5.3Nama File : array03.phpDeskripsi : Program menampilkan seluruh isi array dengan index numerik.
  45. 45. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)4512345678910111213<?php$arrWarna = array ("Blue","Black","Red","Yellow","Green");echo "Menampilkan isi array dengan for : <br>";for ($i=0; $i<count($arrWarna); $i++) {echo "Do you like <font color=$arrWarna[$i]>". $arrWarna[$i]."</font> ?<br>";}echo "<br>Menampilkan isi array dengan foreach : <br>";foreach ($arrWarna as $warna) {echo "Do you like <font color=$warna>". $warna ."</font>?<br>";}?>Penjelasan Program 5.3Untuk menampilkan keseluruhan isi array bisa dilakukan dengan perulanganfor, while, do..while atau foreach. Baris 5 – 7 program di atas merupakan contohmenampilkan array dengan perulangan for. Fungsi count() pada baris ke-5berfungsi untuk mencari jumlah elemen dari array $assWarna. Untukmenampilkan array juga bisa menggunakan struktur foreach(). Struktur foreachakan mengambil elemen array mulai dari posisi pointer sampai akhir pointer.Pada contoh program di atas (baris ke-10) bisa dinyatakan dengan pernyataanbahwa “untuk setiap elemen array $arrWarna, masukkan ke variabel $warna”.Tampilan program 5.3 bisa dilihat pada gambar 5.3Gambar 5.3. Tampilan Program 5.3Program 5.4Nama File : array04.phpDeskripsi : Program menampilkan seluruh isi array assosiatif.12<?php$arrNilai = array ("Ani" => 80, "Otim" => 90, "Ana" => 75,"Budi" => 85);
  46. 46. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)4634567891011121314echo "Menampilkan isi array dengan foreach : <br>";foreach ($arrNilai as $nama => $nilai) {echo "Nilai $nama = $nilai<br>";}reset ($arrNilai);echo "<br>Menampilkan isi array dengan while dan list : <br>";while (list ($nama, $nilai) = each($arrNilai)) {echo "Nilai $nama = $nilai<br>";}?>Penjelasan Program 5.4Untuk menampilkan array assosiatif bisa menggunakan perulangan foreachdan while dengan fungsi list() dan each(). Baris ke-5 dari program 5.4. di atasbisa dinyatakan dengan pernyataan “untuk setiap elemen array $arrNilai,masukkan key/index-nya ke variabel $nama dan masukkan value-nya ke variabel$nilai”. Pada baris ke-8 terdapat fungsi reset() yang berfungsi mengembalikanpointer array ke elemen pertama. Pada baris ke-10, array assosiatif ditampilkandengan struktur while yang menggunakan fungsi list() dan each().Gambar 5.4. Tampilan Program 5.4Program 5.5Nama File : array05.phpDeskripsi : Program mencetak struktur array.123456789<?$arrWarna = array ("Blue","Black","Red","Yellow","Green");$arrNilai = array ("Ani" => 80, "Otim" => 90, "Ana" => 75,"Budi" => 85);echo "<pre>";print_r ($arrWarna);echo "<br>";print_r ($arrNilai);echo "</pre>";?>
  47. 47. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)47Penjelasan Program 5.5Pada program 5.5 di atas terdapat fungsi print_r() (baris ke-5) yangberfungsi untuk menampilkan struktur dari array. Tampilan program 5.5 bisadilihat pada gambar 5.5Gambar 5.5. Tampilan Program 5.5Fungsi-fungsi Array dalam PHPPHP menyediakan lebih dari 70 fungsi untuk manipulasi array. Fungsi-fungsi arraydalam PHP bisa dilihat di alamat http://ca.php.net/manual/en/ref.array.php.Fungsi Pengurutan Arrayarsort() – Pengurutan array berdasarkan value secara descendingasort() – Pengurutan array berdasarkan value secara ascendingkrsort() - Pengurutan array berdasarkan index/key secara descendingksort() - Pengurutan array berdasarkan index/key secara ascendingrsort() - Pengurutan array berdasarkan value secara descending denganmengubah index/keysort() - Pengurutan array berdasarkan value secara ascending denganmengubah index/keyshuffle() – Random pengurutan arrayFungsi Pengaturan Pointer Arraycurrent() – Mendapatkan elemen array yang ditunjuk oleh pointerend() – Pointer menunjuk pada elemen array terakhirkey() – Mendapatkan key yang ditunjuk oleh pointernext() – Pointer menunjuk pada elemen selanjutnyaprev() – Pointer menunjuk pada elemen sebelumnyareset() – Memindahkan pointer array ke awal (elemen pertama)count() – Menghitung jumlah elemen array
  48. 48. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)48Fungsi Pencarian pada Arrayarray_search() – Mencari posisi (key) dari suatu value dalam arrayarray_key_exists() – Memeriksa suatu key ada dalam array atau tidakin_array() – Memeriksa suatu elemen ada dalam array atau tidakProgram 5.6Nama File : array06.phpDeskripsi : Program mengurutkan array dengan sort() dan rsort().123456789101112131415161718192021<?php$arrNilai = array ("Ani" => 80, "Otim" => 90, "Sri" => 75,"Budi" => 85);echo "<b>Array sebelum pengurutan</b>";echo "<pre>";print_r($arrNilai);echo "</pre>";sort($arrNilai);reset($arrNilai);echo "<b>Array setelah pengurutan dengan sort()</b>";echo "<pre>";print_r($arrNilai);echo "</pre>";rsort($arrNilai);reset($arrNilai);echo "<b>Array setelah pengurutan dengan rsort()</b>";echo "<pre>";print_r($arrNilai);echo "</pre>";?>Program 5.7Nama File : array07.phpDeskripsi : Program mengurutkan array dengan asort() dan arsort().123456789101112131415161718192021<?php$arrNilai = array ("Ani" => 80, "Otim" => 90, "Sri" => 75,"Budi" => 85);echo "<b>Array sebelum pengurutan</b>";echo "<pre>";print_r($arrNilai);echo "</pre>";asort($arrNilai);reset($arrNilai);echo "<b>Array setelah pengurutan dengan asort()</b>";echo "<pre>";print_r($arrNilai);echo "</pre>";arsort($arrNilai);reset($arrNilai);echo "<b>Array setelah pengurutan dengan arsort()</b>";echo "<pre>";print_r($arrNilai);echo "</pre>";?>Program 5.8Nama File : array08.phpDeskripsi : Program mengurutkan array dengan ksort() dan krsort().
  49. 49. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)49123456789101112131415161718192021<?php$arrNilai = array ("Ani"=>80, "Otim"=>90, "Sri"=>75,"Budi"=>85);echo "<b>Array sebelum pengurutan</b>";echo "<pre>";print_r($arrNilai);echo "</pre>";ksort($arrNilai);reset($arrNilai);echo "<b>Array setelah pengurutan dengan ksort()</b>";echo "<pre>";print_r($arrNilai);echo "</pre>";krsort($arrNilai);reset($arrNilai);echo "<b>Array setelah pengurutan dengan krsort()</b>";echo "<pre>";print_r($arrNilai);echo "</pre>";?>Program 5.9Nama File : array09.phpDeskripsi : Program mengatur posisi pointer dalam array.12345678910111213141516171819<?php$transport = array(foot, bike, car, plane);echo "<pre>";print_r ($transport);echo "</pre>";$mode = current($transport);echo $mode."<br>"; // $mode = foot;$mode = next($transport);echo $mode."<br>"; // $mode = bike;$mode = current($transport);echo $mode."<br>"; // $mode = bike;$mode = prev($transport);echo $mode."<br>"; // $mode = foot;$mode = end($transport);echo $mode."<br>"; // $mode = plane;$mode = current($transport);echo $mode."<br>"; // $mode = plane;?>Program 5.10Nama File : array10.phpDeskripsi : Program mencari elemen array.123456789<?php$arrBuah = array ("Mangga", "Apel", "Pisang", "Kedondong","Jeruk");if (in_array ("Kedondong", $arrBuah)) {echo "Ada buah Kedondong di sini";} else {echo "Tidak ada buah Kedondong di sini";}?>
  50. 50. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)50Fungsi dalam PHPBentuk umum pendefinisian fungsi dalam PHPfunction nama_fungsi(parameter1,...,n) {statement2;}Program 5.11Nama File : fungsi01.phpDeskripsi : Program sederhana mendefinisikan dan memanggil fungsi tanpaparameter dan tanpa return value.1234567891011<?phpfunction cetak_ganjil () {for ($i=0; $i<100; $i++) {if ($i%2 == 1) {echo "$i ";}}}//pemanggilan fungsicetak_ganjil();?>Program 5.12Nama File : array02.phpDeskripsi : Program fungsi dengan parameter.1234567891011121314<?phpfunction cetak_ganjil ($awal, $akhir) {for ($i=$awal; $i<$akhir; $i++) {if ($i%2 == 1) {echo "$i ";}}}//pemanggilan fungsi$a = 10;$b = 50;echo "<b>Bilangan ganjil dari $a sampai $b : </b><br>";cetak_ganjil($a, $b);?>Program 5.13Nama File : fungsi03.phpDeskripsi : Program fungsi yang mengembalikan nilai.123456789<?phpfunction luas_lingkaran ($jari) {return 3.14 * $jari * $jari;}//pemanggilan fungsi$r = 10;echo "Luas lingkaran dengan jari-jari $r = ";echo luas_lingkaran($r);?>Program 5.14Nama File : fungsi04.phpDeskripsi : Program passing by value dalam fungsi.
  51. 51. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)511234567891011<?phpfunction tambah_string ($str) {$str = $str . ", Jakarta";return $str;}//$str = "Universitas Budi Luhur";echo "$str = $str<br>";echo tambah_string ($str). "<br>";echo "$str = $str<br>";?>Program 5.15Nama File : fungsi05.phpDeskripsi : Program passing by reference dalam fungsi.1234567891011<?phpfunction tambah_string (&$str) {$str = $str . ", Jakarta";return $str;}//$str = "Universitas Budi Luhur";echo "$str = $str<br>";echo tambah_string ($str). "<br>";echo "$str = $str<br>";?>Program 5.16Nama File : fungsi06.phpDeskripsi : Program menampilkan defined-function yang didukung oleh PHP.12345678910<?phpfunction luas_lingkaran ($jari) {return 3.14 * $jari * $jari;}$arr = get_defined_functions();echo "<pre>";print_r($arr);echo "</pre>";?>Program 5.17Nama File : fungsi07.phpDeskripsi : Program memeriksa suatu fungsi tersedia di PHP atau tidak.1234567<?phpif (function_exists(exif_read_data)) {echo "Fungsi exif_read_data() ada di PHP.<br />n";} else {echo "Fungsi exif_read_data() tidak ada di PHP.<br />n";}?>
  52. 52. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)52Bab 6Penanganan String dan TanggalPengantar StringFungsi-fungsi String dalam PHPFungsi-fungsi Operasi Tanggal dalam PHPPengantar StringString merupakan kumpulan dari karakter. Dalam PHP, karakter samadengan byte, dimana terdapat 256 karakter. PHP tidak mendukung native-unicode.Untuk menuliskan sebuah string dalam PHP, bisa menggunakan 3 (tiga)cara, yaitu dengan :1. single quoted – kutip tunggal ( )2. double quoted – kutip ganda ( " )3. heredoc sintaksProgram 6.1Nama File : string01.phpDeskripsi : Program string dengan single quoted ( ).12345678910111213141516171819202122<?phpecho this is a simple string;echo You can also have embedded newlines instrings this way as it isokay to do;// Outputs: Arnold once said: "Ill be back"echo Arnold once said: "Ill be back";// Outputs: You deleted C:*.*?echo You deleted C:*.*?;// Outputs: You deleted C:*.*?echo You deleted C:*.*?;// Outputs: This will not expand: n a newlineecho This will not expand: n a newline;// Outputs: Variables do not $expand $eitherecho Variables do not $expand $either;?>Program 6.2Nama File : string02.phpDeskripsi : Program string dengan heredoc sintaks.1234567891011<?php$str = <<<EODExample of stringspanning multiple linesusing heredoc syntax.EOD;/* More complex example, with variables. */class foo{var $foo;
  53. 53. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)5312131415161718192021222324252627282930var $bar;function foo(){$this->foo = Foo;$this->bar = array(Bar1, Bar2, Bar3);}}$foo = new foo();$name = Achmatim;echo <<<EOT<u>$str</u><br>My name is "<b>$name</b>". I am printing some <b>$foo->foo</b>.Now, I am printing some <b>{$foo->bar[1]}</b>.This should print a capital A: x41EOT;?>Gambar 6.1. Tampilan Program 6.2Fungsi-fungsi String dalam PHPPHP menyediakan lebih dari 90 fungsi untuk manipulasi string. Fungsi-fungsistring dalam PHP bisa dilihat di http://ca.php.net/manual/en/ref.strings.php.Beberapa fungsi manipulasi string yang sering digunakan, antara lain :addslashes() – menambahkan backslashes () di setiap tanda kutip (quote)dalam string.chr() – menghasilkan karakter dari bilangan ASCIIcrypt() – menghasilkan string terenkripsi searah.echo() – menampilkan satu atau beberapa string.explode() – memecah string berdasarkan suatu delimiter (separator).htmlentities () – mengubah semua tag html menjadi HTML entities.htmlspecialchars() – mengubah semua karakter khusus menjadi HTMLentitiesimplode() – menggabungkan elemen array menjadi string dengan suatudelimiter (separator).join() – sama dengan implode()ltrim() – menghapus karakter tertentu (“ “, t, n, r, 0, x0B) di awal string.md5() – menghasilkan string terenkripsi searah.nl2br() – menambahkan HTML line break (<BR>) sebelum semua baris barudalam string.number_format() – mengatur format angka.ord() – menghasilkan kode ASCII dari suatu karakter.
  54. 54. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)54rtrim() - menghapus karakter tertentu (“ “, t, n, r, 0, x0B) di akhirstring.split() – sama dengan explodestr_repeat() – mengulang stringstr_replace() – mengganti semua string dalam pola menjadi suatu string.strip_tags() – mengabaikan HTML dan PHP tag dalam string.stripslashes() – menghilangkan backslashes () dalam string.strlen() – menghitung panjang string.strpos() – mencari posisi pertama sebuah string dalam string.strrchr() – mencari posisi terakhir sebuah karakter dalam string.strrpos() – mencari posisi terakhir sebuah string dalam string.strrev() – membalik string.strstr() – mencari posisi pertama sebuah karakter dalam string.strtolower() – mengubah string menjadi huruf kecil (lower-case).strtoupper() – mengubah string menjadi huruf kapital (upper-case)substr() – memotong stringtrim() - menghapus karakter tertentu (“ “, t, n, r, 0, x0B) di akhir danakhir string.ucfirst() – mengubah huruf pertama dari semua string menjadi Upper-case.ucwords() – mengubah huruf pertama tiap kata dalam string menjadi upper-case.wordwrap() – memotong sejumlah karakter dalam string dengan string-break-character.Program 6.3Nama File : string03.phpDeskripsi : Program penggunaan fungsi strtolower, strtoupper, ucfirst,ucwords, strrev, dan strlen dalam string.1234567891011<?php$str = "Everything i do, i do it for YOU";echo "<b>String asli</b> : $str";echo "<br><b>strtolower()</b> : ". strtolower($str);echo "<br><b>strtoupper()</b> : ". strtoupper($str);echo "<br><b>ucfirst() :</b> ". ucfirst($str);echo "<br><b>ucwords() :</b> ". ucwords($str);echo "<br><b>strrev() :</b> ". strrev($str);echo "<br><b>Jumlah karakter</b> : ". strlen($str);?>Penjelasan Program 6.3Beberapa fungsi yang digunakan dalam program 6.3 di atas antara lain :- strtolower, untuk mengubah string menjadi lower-case.- strtoupper, untuk mengubah string menjadi upper-case.- ucfirst, untuk mengubah huruf pertama string menjadi upper-case.- ucwords, untuk mengubah huruf pertama tiap kata menjadi upper-case.- strrev, untuk membalik string.- strlen, untuk menghitung panjang string.
  55. 55. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)55Gambar 6.2 Tampilan Program 6.3Program 6.4Nama File : string04.phpDeskripsi : Program penggunaan fungsi addslashes dan stripslashes padastring.123456789<?php$str = "Is your name OReilly ?";$str2 = addslashes ($str);$str3 = stripslashes ($str2);echo "<b>String asli</b> : $str";echo "<br><b>addslashes()</b> : $str2";echo "<br><b>stripslashes()</b> : $str3";?>Penjelasan Program 6.4Pada program 6.4 di atas terdapat fungsi addslashes() yang akanmenambahkan backslashes () pada setiap quote dalam string, dan sebaliknyafungsi stripslashes akan menghilangkan backslashes pada string.Gambar 6.3. Tampilan Program 6.4Program 6.5Nama File : string05.phpDeskripsi : Program penggunaan fungsi chr untuk menampilkan 256 karakterASCII.
  56. 56. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)56123456<?phpecho "Menampilkan bilangan ASCII";for ($i=1; $i<=256; $i++) {echo "<br>$i.t". chr($i);}?>Penjelasan Program 6.5Program 6.5 di atas akan menampilkan 256 karakter ASCII. Pada baris 4,terdapat fungsi chr() yang akan mengubah nilai $i (integer) menjadi karakterASCII.Program 6.6Nama File : string06.phpDeskripsi : Program penggunaan fungsi strip_tags, htmlspecialchars, danhtmlentities untuk mengatur tag HTML.12345678910111213<?php$str = "<b><u>Everything I do, I do it for you</u></b>";echo $str."<br>";//no tag htmlecho strip_tags ($str). "<br>";//allow tag <u>echo strip_tags ($str,"<u>")."<br>";//tampil apa adanyaecho htmlspecialchars ($str)."<br>";//tampil apa adanyaecho htmlentities ($str);?>Penjelasan Program 6.6Program 6.6 di atas merupakan contoh penggunaan fungsi strip_tags,htmlspecialchars dan htmlentities untuk menangani tag-tag HTML yang adadalam string. Pada baris ke-6, fungsi strip_tags akan menghilangkan semua tagHTML. Pada baris ke-8, fungsi strip_tags dengan tambahan parameter “<u>”akan menghilangkan semua tag HTML kecuali tag <u>. Pada baris ke-10 dan ke-12, fungsi htmlspecialchars dan htmlentities akan mengubah semua tag HTMLmenjadi HTML special character, sehingga tag HTML akan ditampilkan apa adanyaGambar 6.4. Tampilan Program 6.6Program 6.7Nama File : string07.phpDeskripsi : Program penggunaan fungsi number_format untuk mengaturformat tampilan angka.
  57. 57. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)57123456789101112131415161718192021<?php$number = 1234.56;// english notation (default)$english_format_number = number_format($number);echo "<br>".$english_format_number; // 1,235// French notation$nombre_format_francais = number_format($number, 2, ,, );echo "<br>".$nombre_format_francais; // 1 234,56//indonesian notation$format_indonesia = number_format ($number, 2, ,, .);echo "<br>".$format_indonesia; //1.234,56$number = 1234.5678;// english notation without thousands seperator$english_format_number = number_format($number, 2, ., );echo "<br>". $english_format_number; // 1234.57?>Penjelasan Program 6.7Program 6.7 di atas merupakan contoh penggunaan fungsi number_formatuntuk mengatur tampilan angka. Secara default, fungsi number_format akanmemformat angka dengan model Inggris yaitu setiap tiga digit dipisahkan dengankoma (,) dan tanpa pecahan. Pada baris ke-9, fungsi number_format akanmengubah format angka dengan 2 digit pecahan (parameter kedua), pecahandipisahkan dengan koma (parameter ketiga) dan setiap tiga digit dipisahkandengan spasi (parameter keempat).Program 6.8Nama File : string08.phpDeskripsi : Program penggunaan fungsi explode untuk memecah stringmenjadi array.1234567891011121314<?php// Contoh 1$buah = "mangga pisang rambutan apel jeruk kedondong";$buahan = explode(" ", $buah);echo $buahan[0]."<br>"; // manggaecho $buahan[3]."<br>"; // apel// Contoh 2$data = "foo:*:1023:1000::/home/foo:/bin/sh";list($user, $pass, $uid, $gid, $gecos, $home, $shell) =explode(":", $data);echo $user."<br>"; // fooecho $pass; // *?>Penjelasan Program 6.8Program 6.8 di atas merupakan contoh penggunaan fungsi explode untukmemecah string berdasarkan pola (aturan) tertentu. Pada baris ke-4, denganfungsi explode() akan memecah string $buah berdasarkan spasi dan masing-masing akan menjadi elemen array $buahan.Program 6.9Nama File : string09.phpDeskripsi : Program penggunaan fungsi implode untuk menggabungkan arraymenjadi string.
  58. 58. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)58123456<?php$buahan = array(mangga,jeruk,rambutan,apel,nanas);$buah = implode(",", $buahan);echo "Saya suka buah ". $buah;// mangga,jeruk,rambutan,apel,nanas?>Penjelasan Program 6.9Program 6.9 di atas merupakan contoh penggunaan fungsi implode() untukmenggabungkan semua isi array menjadi satu string. Fungsi implode merupakankebalikan dari fungsi explode. Pada baris ke-3, dengan fungsi implode() akanmenggabungkan setiap elemen array $buahan menjadi string $buah denganpemisah koma di antara tiap elemen.Program 6.10Nama File : string10.phpDeskripsi : Program penggunaan fungsi strstr, strchr dan strrchr untukmengambil sebagian string berdasarkan pola (karakter) tertentu.12345678910<?php$file = "test.this.txt";$ext1 = strstr($file, ".");$ext2 = strchr($file, ".");$ext3 = strrchr($file, ".");echo $ext1. "<br>"; //.this.txtecho $ext2. "<br>"; //.this.txtecho $ext3; //.txt?>Penjelasan Program 6.10Program 6.10 di atas merupakan contoh pengambilan sebagian stringberdasarkan pola (karakter) tertentu. Fungsi strstr dan strchr pada baris ke-3 danke-4 akan mengambil string setelah karakter titik (.) dimana pencarian dilakukandari awal string. Sedangkan fungsi strrchr, akan mengambil string setelahkarakter titik (.) yang mana pencarian dilakukan dari akhir string.Program 6.11Nama File : string11.phpDeskripsi : Program penggunaan fungsi wordwrap untuk memotong sejumlahkarakter dari string.1234567<?php$text = "The quick brown fox jumped over the lazy dog.";$newtext = wordwrap($text, 15, "<br>");echo $text."<br><br>";echo $newtext;?>Penjelasan Program 6.11Program 6.11 di atas merupakan contoh penggunaan fungsi wordwrapuntuk memotong sejumlah karakter dari string. Pada baris ke-3, fungsi wordwrapakan memotong string $text per-15 karakter dan dipisahkan (ditambahkan)dengan string “<br>”
  59. 59. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)59Gambar 6.5. Tampilan Program 6.11Program 6.12Nama File : string12.phpDeskripsi : Program penggunaan fungsi nl2br dalam string.12345678910111214<form action="" method="post">Input teks di sini :<br><textarea name="input" cols="40" rows="4"></textarea><br><input type="submit" name="Submit" value="Proses"></form><?phpif (isset($_POST[Submit])) {$txt = $_POST[input];echo "<u>Tanpa nl2br() :</u> <br>$txt<br><br>";echo "<u>Dengan nl2br :</u> <br>". nl2br ($txt);}?>Penjelasan Program 6.12Program 6.12 di atas merupakan contoh penggunaan fungsi nl2br. Fungsinl2br() akan menambahkan karakter pindah baris (<br>) di setiap awal barisstring inputan. Untuk mencoba program di atas, inputkan string sebagai berikut :bila yang tertulis untukkuadalah yang terbaik untukkukan kujadikan kau kenanganyang terindah dalam hidupkunamun tak kan mudah bagikumeningalkan jejak hidupkuyang tlah terukir abadisebagai kenangan yang terindahProgram 6.13Nama File : string13.phpDeskripsi : Program penggunaan fungsi substr untuk memotong string.123456789<form action="" method="post">NIM Anda :<input type="text" name="txtnim"><br><input type="submit" name="Submit" value="Proses"></form><?phpif (isset($_POST[Submit])) {$nim = $_POST[txtnim];
  60. 60. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)6010111214151617181920212223242526$a = substr ($nim, 2, 2);switch($a) {case 11 : $jurusan = "Teknik Informatika";break;case 22 : $jurusan = "Sistem Informasi";break;case 33 : $jurusan = "Sistem Komputer";break;case 44 : $jurusan = "Komputerisasi Akuntansi";break;default : $jurusan = "Salah jurusan";}echo "Nim Anda : $nim<br>";echo "Jurusan Anda : $jurusan";}?>Penjelasan Program 6.13Program 6.13 di atas merupakan contoh penggunaan fungsi substr (bariske-10) untuk memotong string. Pada baris ke-10 tersebut, string $nim akandipotong mulai karakter index ke-2 (index dimulai dari 0) sepanjang 2 karakter.Fungsi-fungsi Operasi Tanggal dalam PHPFungsi dalam Operasi tanggal dalam PHP yang utama dan sering digunakanadalah fungsi date(). Fungsi ini akan menghasilkan tanggal dan waktu serversekarang. Beberapa pilihan parameter dari fungsi date() ini dapat dilihat padatabel berikut ini :parameter Keterangan Contoh nilaiHarid Tanggal, 2 digit dengan nol 01 s/d 31DTiga digit nama hari dalamsemingguMon s/d Sunj Tanggal tanpa nol 1 s/d 31l (lowercaseL)Nama hari lengkap dalamsemingguSunday through SaturdayN Urutan hari dalam seminggu1 (untuk Monday) s/d7 (untuk Sunday)SAkhiran angka English untuktanggal, 2 karakterst, nd, rd atau th.w Urutan hari dalam seminggu0 (untuk Sunday) s/d6 (untuk Saturday)z Urutan hari dalam setahun 0 s/d 365MingguW Urutan minggu dalam setahunContoh: 42 (minggu ke-42dalam tahun ini)BulanF Nama bulan lengkap January s/d DecembermUrutan bulan dalam setahundengan nol01 s/d 12MTiga digit nama bulan dalamsetahunJan s/d Decn Urutan bulan dalam setahun, 1 s/d 12
  61. 61. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)61parameter Keterangan Contoh nilaitanpa nolt Jumlah hari dalam tiap bulan 28 s/d 31TahunY 4 (empat) digit tahun Contoh: 1999 atau 2006y 2 (dua) digit tahun Contoh: 99 or 06WaktuaLowercase Ante meridiem dan Postmeridiemam atau pmAUppercase Ante meridiem dan PostmeridiemAM atau PMg Jam format 12 tanpa nol 1 s/d 12G Jam format 24 tanpa nol 0 s/d 23h Jam format 12 dengan nol 01 s/d 12H Jam format 24 dengan nol 00 s/d 23i Menit dengan nol 00 s/d 59s Detik dengan nol 00 s/d 59Program 6.14Nama File : date01.phpDeskripsi : Program menampilkan date/time dengan berbagai parameter.123456789101112141516<?php// Sekarang tanggal 13 April 2006 09:43:49echo "<br>". date("d/m/Y H:i:s"); // 13/04/2006 09:43:03echo "<br>". date("F j, Y, g:i a"); // April 13, 2006, 9:43 amecho "<br>". date("d.m.y"); // 13.04.06echo "<br>". date("Ymd"); // 20060413// 13-04-06, 4330 4349 4 Thuam06 102echo "<br>". date(j-m-y, it is w Day z );// it is the 13th day.echo "<br>". date(it is the jS day.);// Thu Apr 13 9:43:49 KRAST 2006echo "<br>". date("D M j G:i:s T Y");echo "<br>". date("H:i:s"); // 17:16:17?>Program 6.15Nama File : date02.phpDeskripsi : Program menampilkan nama hari dalam bahasa Indonesia.1234567<?php// Sekarang tanggal 13 April 2006 09:43:49$arrDay = array("Minggu", "Senin", "Selasa", "Rabu", "Kamis","Jumat", "Sabtu");$day = date ("w"); //0 - 6 of dayecho "Hari ini hari : <b>" . $arrDay[$day]."</b>";?>
  62. 62. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)62Bab 7File dan DirektoriMembuat, Menulis dan Membaca Isi File+ Membuka dan Membuat File+ Menulis ke File+ Membaca Isi File+ Menutup FileMembuat dan Menghapus DirektoriManipulasi File+ Mendapatkan Informasi File+ Copy, Rename dan Delete FileUpload FilePenanganan FileDalam management file dan direktori, PHP menyediakan lebih dari 70fungsi. Beberapa fungsi utama yang berhubungan dengan management file(create, write, append, dan delete), antara lain :Membuka dan Membuat Filefopen ($namafile, $mode);Keterangan :$namafile merupakan nama file yang akan dibuat, sedangkan $mode merupakanmode akses file. Mode akses file yang bisa digunakan yaitu :Mode Keteranganr Hanya untuk baca file, pointer berada di awal filer+ Untuk baca dan tulis file, pointer berada di awal filew Hanya untuk tulis file, isi file lama dihapus, jika file belum ada makaakan di-createw+ Untuk baca dan tulis file, isi file lama dihapus, jika file belum ada makaakan di-createa Hanya untuk menambahkan isi file, pointer berada di akhir file, jika filebelum ada maka di-createa+ Untuk membaca dan menambahkan isi file, pointer berada di akhir file,jika file belum ada maka di-createProgram 7.1Nama File : file01.phpDeskripsi : Program mengakses (membuka) file dengan mode r.12345678910<?php$namafile = "data.txt";$handle = fopen ($namafile, "r");if (!$handle) {echo "<b>File tidak dapat dibuka atau belum ada</b>";} else {echo "<b>File berhasil dibuka</b>";}fclose($handle);?>
  63. 63. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)63Gambar 7.1 Tampilan Program 7.1Program 7.2Nama File : file02.phpDeskripsi : Program mengakses (membuka) file dengan mode w.12345678910<?php$namafile = "data.txt";$handle = fopen ($namafile, "w");if (!$handle) {echo "<b>File tidak dapat dibuka atau belum ada</b>";} else {echo "<b>File berhasil dibuka</b>";}fclose($handle);?>Gambar 7.2 Tampilan Program 7.2Menulis ke Filefwrite ($handle, $isi);fputs ($handle, $isi);Program 7.3Nama File : file03.phpDeskripsi : Program menulis ke file.123<?php$namafile = "data.txt";$handle = fopen ($namafile, "w");
  64. 64. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)6445678910111213if (!$handle) {echo "<b>File tidak dapat dibuka atau belum ada</b>";} else {fwrite ($handle, "Fakultas Teknologi Informasin");fputs ($handle, "Universitas Budi Luhurn");//file_put_contents ($namafile, "Jakarta");echo "<b>File berhasil ditulis</b>";}fclose($handle);?>Penjelasan Program 7.3Untuk menulis ke file, dapat menggunakan fungsi fwrite() dan fputs().Variabel $handle merupakan mode pengaksesan file, dimana mode yangdigunakan harus bisa menulis ke file. Contohnya mode w dan a. Selain itu, kitajuga bisa menggunakan fungsi file_puts_contents() dengan parameter berupanama file dan isi yang akan ditambahkan. Jika program di atas dijalankan, makaisi file data.txt akan berisi seperti pada gambar 7.3 (buka dengan WordPad).Gambar 7.3. File data.txt dibuka dengan WordPadMembaca Isi Filefread ($handle [,$panjang]);fgets ($handle [,$panjang]);Program 7.4Nama File : file04.phpDeskripsi : Program membaca dan menampilkan isi file.12345678910111213<?php$namafile = "data.txt";$handle = fopen ($namafile, "r");if (!$handle) {echo "<b>File tidak dapat dibuka atau belum ada</b>";} else {$isi = fgets ($handle, 2048);//$isi2 = fread ($handle, 20);echo "Isi 1 : $isi<br>";//echo "Isi 2 : $isi2<br>";}fclose($handle);?>Penjelasan Program 7.4Untuk membaca isi file, bisa menggunakan fungsi fgets() dan fread().Fungsi fgets() akan membaca isi file tiap baris. Sedangkan fungsi fread() akanmembaca isi file setiap jumlah byte tertentu. Pada program di atas, baris ke-8akan membaca file setiap 20 byte atau 20 karakter.
  65. 65. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)65Program 7.5Nama File : file05.phpDeskripsi : Program membaca isi file baris tiap baris.12345678910111213<?php$namafile = "data.txt";$handle = fopen ($namafile, "r");if (!$handle) {echo "<b>File tidak dapat dibuka atau belum ada</b>";} else {echo "<b>Isi file : </b><br>";while ($isi = fgets ($handle, 2048)) {echo "$isi<br>";}}fclose($handle);?>Penjelasan Program 7.5Program 7.5 di atas akan menampilkan keseluruhan isi file, dimana isi fileakan dibaca tiap baris. Pembacaan dilakukan dari baris pertama sampai baristerakhir.Gambar 7.4. Tampilan Program 7.5Program 7.6Nama File : file06.phpDeskripsi : Program membaca isi file baris tiap baris.1234567891011<?php$namafile = "data.txt";$handle = @fopen($namafile, "r");if ($handle) {while (!feof($handle)) {$buffer = fgets($handle, 4096);echo $buffer."<br>";}fclose($handle);}?>Penjelasan Program 7.6Program 7.6 di atas akan menampilkan keseluruhan isi file, dimana isi fileakan dibaca tiap baris. Pembacaan dilakukan selama pointer file belum sampai diend-of-file. Fungsi feof() pada baris ke-5 berfungsi untuk memeriksa pointer filesudah berada di akhir file atau belum.
  66. 66. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)66Menutup Filefclose ($handle);Program 7.7Nama File : file07.phpDeskripsi : Program aplikasi user counter dengan file.1234567891011121314151617<?php$counter_file="counter.txt";if (!file_exists ($counter_file)) {fopen ($counter_file, "w");}$file = fopen($counter_file,"r");$counter = fread($file,10);fclose($file);$counter++;echo "<h2>Anda adalah pengunjung ke - $counter</h2>";$file = fopen($counter_file, "w");fwrite($file,$counter);fclose($file);?>Gambar 7.5. Tampilan Program 7.7Membuat dan Menghapus DirektoriMembuat Direktori BaruProgram 7.8Nama File : file08.phpDeskripsi : Program membuat direktori baru.123456789<?php$dir = "images"; //nama direktori$cek = mkdir ($dir);if ($cek) {echo "Direktori <b>$dir</b> berhasil dibuat";} else {echo "Direktori <b>$dir</b> gagal dibuat";}?>
  67. 67. Pemrograman Web dengan PHP dan MySQLAchmad Solichin (achmatim@gmail.com)67Penjelasan Program 7.8Program 7.8 di atas akan membuat direktori bernama “images” di direktoritempat program 7.8 disimpan. Fungsi untuk membuat direktori baru dalam PHPadalah mkdir(). Jika direktori yang akan dibuat berada di luar tempat programdisimpan, maka sertakan path direktori secara lengkap.Menghapus DirektoriProgram 7.9Nama File : file09.phpDeskripsi : Program menghapus direktori.1234567891011121314151617<?php//buat direktori$dir = "include"; //nama direktori$cek = mkdir ($dir);if ($cek) {echo "Direktori <b>$dir</b> berhasil dibuat";} else {echo "Direktori <b>$dir</b> gagal dibuat";}//hapus direktori$del = rmdir ($dir);if ($del) {echo "<br>Direktori <b>$dir</b> berhasil dihapus";} else {echo "<br>Direktori <b>$dir</b> gagal dihapus";}?>Penjelasan Program 7.9Program 7.9 di atas akan membuat direktori baru bernama “include” (lihatbaris ke-4). Setelah itu, direktori akan dihapus dengan fungsi rmdir() pada bariske-10. Fungsi rmdir() hanya bisa menghapus direktori kosong. Jika direktori adaisinya maka, gunakan fungsi rekursif untuk menghapus isi direktori. Lihat contohdi PHP Manual.Menampilkan Isi DirektoriProgram 7.10Nama File : file10.phpDeskripsi : Program menampilkan file dan direktori dalam suatu direktori.1234567891011<?php$dir = "images";if ($handle = opendir($dir)) {while (false !== ($file = readdir($handle))) {if ($file != "." && $file != "..") {echo "$file<br>";}}closedir($handle);}?>Penjelasan Program 7.10Program 7.10 di atas akan menampilkan di layar, semua file dan direktoriyang berada dalam direktori “images”. Fungsi opendir() pada baris ke-3 adalahuntuk membuka direktori. Sedangkan fungsi readdir() akan membaca file dalamdirektori satu per satu secara urut. Fungsi closedir() pada baris ke-9 adalahuntuk menutup pembukaan direktori.

×