- . Ebook PHP ini membahas dasar-dasar bagaimana menggunakan PHP dan MySQLdalam membuat website yang dinamis maupun bagaimana membuat aplikasi berbasiswebsite. Dengan basic yang kuat di harapkan para pembaca nanti menjadi tercerahkanakibat membaca ebook ini. Penulis sadar banyak sekali ketidaksempurnaan yang muncul dari ebook PHP ini,oleh karena itu mohon kritik dan sarannya dilayangkan ke email penulis. Sekian daripenulis. Selamat Menikmati Ebook PHP “Menyelam dan Menaklukan Samudra PHP”
- 5. ContentBab 1 : Perkenalan Instalasi dan Konfigurasi .............................. 1
- Bab 2 : Bekerja dengan PHP ....................................................... 16
- Bab 3 : Menggunakan PHP dan MySQL..................................... 69
- Bab 4 : Menampilkan Data Menggunakan Table ........................ 91
- Bab 5 : Bekerja dengan Form...................................................... 95
- Bab 6 : Mengedit Database dengan Form.................................... 117
- Bab 7 : Lebih Jauh dengan Form................................................. 136
- Bab 8 : Mengirim Email Menggunakan PHP............................... 148
- Bab 9 : PHP Authentication......................................................... 152
- Bab 10 : Studi Kasus Membuat Sistem Informasi.......................... 156
- 6. Bab 1:Perkenalan, Installasidan KonfigurasiPerkenalan1.1
- Sebelum Belajar PHP Sebelum lebih lanjut mempelajari bagaimana membuat web dinamis, atau aplikasiberbasis web menggunakan PHP dan MySQL, penulis menyarankan anda untuk terlebihdahulu mengerti bagaimana membangun web menggunakan HTML. Ini digunakansebagai bekal awal agar nantinya anda tidak kesulitan dalam mengenali tag-tag HTMLyang digunakan dalam membuat website dinamis di ebook PHP ini. Perlu diketahui PHPyang akan dipelajari dalam ebook PHP ini adalah PHP versi ke 5. Karena pada dasarnyatidak terlalu jauh berbeda antara versi 5 dengan PHP versi terbaru yakni PHP 6,perbedaan yang mendasar hanyalah fitur OOP-nya saja, dan OOP tidak dibahas secaradetil dalam ebook PHP ini. Namun mengingat cakupan PHP begitu luas, saya akanmenghadirkannya nanti di ebook free edisi selanjutnya.1.2 Perkenalan PHP, MySQL, Apache, dan OpenSource Sebelum mengenal PHP, MySQL, Apache, perlu diketahui ketiga aplikasi yangdisebutkan tadi merupakan aplikasi open source. Aplikasi OpenSource merupakanaplikasi berlisensi GPL (General Public License) yang diperuntukkan secara bebasdigunakan oleh Masyarakat Internasional dan sifatnya gratis, open source berarti kodeBab1: Perkenalan Installasi dan Konfigurasi 1Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 7. sumbernya terbuka, dimana seorang pengguna, maupun pengembang, dapatmengkostumisasi, dan mengembangkan kode tersebut secara bebas. Opensource memungkinkan para programmer dunia membuat aplikasi tersebutmengalami perkembangan yang sangat pesat sebagaimana halnya Linux, linuxmengalami perkembangan yang begitu cepat, dan pesat jauh berbeda dengan metodeyang diterapkan oleh Microsoft yakni Closed Source pada aplikasi-aplikasi buatannya.Bab1: Perkenalan Installasi dan Konfigurasi 2Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 8. 1.2.1 Apa itu PHP PHP Pertama kali ditemukan pada 1995 oleh seorang Software Developer bernamaRasmus Lerdrof. Ide awal PHP adalah ketika itu Radmus ingin mengetahui jumlahpengunjung yang membaca resume onlinenya. script yang dikembangkan baru dapatmelakukan dua pekerjaan, yakni merekam informasi visitor, dan menampilkan jumlahpengunjung dari suatu website. Dan sampai sekarang kedua tugas tersebut masih tetappopuler digunakan oleh dunia web saat ini. Kemudian, dari situ banyak orang di milismendiskusikan script buatan Rasmus Lerdrof, hingga akhirnya rasmus mulai membuatsebuah tool/script, bernama Personal Home Page (PHP). Kebutuhan PHP sebagai tool yang serba guna membuat Lerdorf melanjutkan untukmengembangkan PHP hingga menjadi suatu bahasa tersendiri yang mungkin dapatmengkonversikan data yang di inputkan melalui Form HTML menjadi suatu variable,yang dapat dimanfaatkan oleh sistem lainnya. Untuk merealisasikannya, akhirnya Lerdrofmencoba mengembangkan PHP menggunakan bahasa C ketimbang menggunakan Perl.Tahun 1997, PHP versi 2.0 di rilis, dengan nama Personal Home Page Form Interpreter(PHP-FI). PHP Semakin popular, dan semakin diminati oleh programmer web dunia. Rasmus Lerdrof benar-benar menjadikan PHP sangat populer, dan banyak sekaliTeam Developer yang ikut bergabung dengan Lerdrof untuk mengembangkan PHPhingga menjadi seperti sekarang, Hingga akhirnya dirilis versi ke 3-nya, pada Juni 1998,dan tercatat lebih dari 50.000 programmer menggunakan PHP dalam membuat websitedinamis. Pengembangan demi pengembangan terus berlanjut, ratusan fungsi ditambahkansebagai fitur dari bahasa PHP, dan di awaal tahun 1999, netcraft mencatat, ditemukan1.000.000 situs di dunia telah menggunakan PHP. Ini membuktikan bahwa PHPmerupakan bahasa yang paling populer digunakan oleh dunia web development. Hal inimengagetkan para developernya termasuk Rasmus sendiri, dan tentunya sangat diluardugaan sang pembuatnya. Kemudian Zeev Suraski dan Andi Gutsman selaku coredeveloper (programmer inti) mencoba untuk menulis ulang PHP Parser, dandiintegrasikan dengan menggunakan Zend scripting engine, dan mengubah jalan aluroperasi PHP. Dan semua fitur baru tersebut di rilis dalam PHP 4.Bab1: Perkenalan Installasi dan Konfigurasi 3Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 9. 13 Juli 2004, evolusi PHP, PHP telah mengalami banyak sekali perbaikan disegalasisi, dan wajar jika netcraft mengumumkan PHP sebagai bahasa web populer didunia,karena tercatat 19 juta domain telah menggunakan PHP sebagai server side scriptingnya.PHP saat ini telah Mendukung XML dan Web Services, Mendukung SQLite. Tercatatlebih dari 19 juta domain telah menggunakan PHP sebagai server scriptingnya. Benar-benar PHP sangat mengejutkan. Yang menjadikan PHP berbeda dengan HTML adalah proses dari PHP itu sendiri.HTML merupakan bahasa statis yang apabila kita ingin merubah konten/isinya makayang harus dilakukan pertama kali nya adalah, membuka file-nya terlebih dahulu,kemudian menambahkan isi kedalam file tersebut. Beda hal nya dengan PHP. Bagi andayang pernah menggunakan CMS seperti wordpress atau joomla yang dibangun denganPHP tentunya, ketika akan menambahkan konten kedalam website, anda tinggal masukkedalam halaman admin, kemudian pilih new artikel untuk membuat halaman/contentbaru. Artinya hal ini, seorang user tidak berhubungan langsung dengan scriptnya.Sehingga seorang pemula sekalipun dapat menggunakan aplikasi seperti itu.Keunggulan PHP :1. Gratis Apa yang membuat PHP begitu berkembang sangat pesat?? hingga jutaan domain menggunakan PHP, begitu populernya PHP?? Jawabannya adalah karena PHP itu gratis. Saya sendiri menyukai bahasa yang satu ini selain mudah juga karena gratis.2. Cross platform Artinya dapat di gunakan di berbagai sistem operasi, mulai dari linux, windows, mac os dan os yang lain.3. Mendukung banyak database PHP telah mendukung banyak database, ini mengapa banyak developer web menggunakan PHP Adabas D Adabas D, dBase dBase, Empress Empress, FilePro (read-only) FilePro (read-only) Hyperwave, IBM DB2, Informix, Ingres, InterBase, FrontBase mSQL, Direct MS-SQL, MySQL MySQL, ODBC, Oracle (OCI7 and OCI8), Ovrimos, PostgreSQL SQLite, Solid, Sybase, Velocis, Unix dbm.4. On The Fly PHP sudah mendukung on the fly, artinya dengan php anda dapat membuat documentBab1: Perkenalan Installasi dan Konfigurasi 4Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 10. text, Word, Excel, PDF, menciptakan image dan flash, juga menciptakan file-file seperti zip, XML, dan banyak lagi.Bab1: Perkenalan Installasi dan Konfigurasi 5Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 11. 1.2.2 Apa itu MySQ, LMySQL adalah Database Database sendiri merupakan suatu jalan untuk dapat menyimpan berbagai informasidengan membaginya berdasarkan kategori-kategori tertentu. Dimana informasi-informasitersebut saling berkaitan, satu dengan yang lainnya.MySQL bersifat RDBMS (Relational Database Management System) RDBMS memungkinkan seorang admin dapat menyimpan banyak informasi kedalam table-table, dimana table-table tersebut saling berkaitan satu sama lain.Keuntungan RDBMS sendiri adalah kita dapat memecah database kedalam table-tableyang berbeda. setiap table memiliki informasi yang berkaitan dengan table yang lainnya.Mengapa Menggunakan MySQL1. GratisSama dengan PHP, MySQL bersifat opensource, semua orang bebas menggunakannyatanpa harus membayar sepeser pun2. Cross PlatformMySQl dapat digunakan under windows, ataupun under linux.3. Lengkap dan CepatPasangan yang cocok dengan PHP. Wajar jika banyak hosting saat ini mendukungadanya PHP dan MySQL karena kecepatan, gratis, dan dapat di jalankan di sistemoperasi manapun.Bab1: Perkenalan Installasi dan Konfigurasi 6Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 12. 1.2.3 Apa itu ApacheMengapa menggunakan Apache?1. Merupakan webserver. Tempat php engine/processor berada. Tempat meletakkan file-file php dan database. Ketika user melakukan request http:// membuka suatu halaman, disinilah apache bekerja. Menjawab request tersebut dengan menampilkan halaman yang diminta.2. Apache sama seperti PHP dan MySQL, Gratis.3. Cross Platform Perbedaan fungsi antara PHP, MySQL dan Apache adalah, PHP merupakan bahasanya, MySQL adalah databasenya, dan Apache merupakan webserver yang dapat mengeksekusi script php dan menampilkannya kepada user, dan melalui apache lah php dapat mengolah data dan menyimpan data tersebut ke dalam database.Bab1: Perkenalan Installasi dan Konfigurasi 7Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 13. 1.3 Mengapa PHP? dan Bagaimana Masa Depan PHP? PHP telah benar-benar mempengaruhi dunia internet saat ini. Facebook yang andakenal selama ini dibangun menggunakan PHP, begitu juga dengan Yahoo, dan masihbanyak lagi yang website populer lain yang menggunakan php sebagai bahasa intinya.Programmer sistem informasi saat ini lebih cenderung membangun sistem informasiberbasis website, ketimbang desktop application, karena fitur yang dihasilkan samapersis, installasi mudah, dapat dijalankan dibanyak PC, dengan spek yang minim. Saya ketika masih menjadi mahasiswa pun pernah mendapatkan tawaran bekerjasebagai developer sistem informasi kepegawaian pada salah satu media cetak yang cukupbesar, dari pihak mereka sendiri pun mengutamakan PHP ketimbang bahasa/toolsprogramming yang lainnya. “Masa Depan PHP? PHP sekarang sudah menguasai dunia dengan semua kemudahan dan kegratisannya.”Bab1: Perkenalan Installasi dan Konfigurasi 8Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 14. Installasi1.4 Installasi PHP, MySQL, & Apache dengan xampp Pada bagian ini akan dijelaskan bagaimana anda dapat menjalankan PHP, MySQLdan Apache secara bersamaan. Ada 2 opsi sebetulnya, pertama anda menginstall ketiga aplikasi tersebut satupersatu, dan kemudian mengkonfigurasikan satu persatu aplikasi-aplikasi tersebut sampaisemuanya terintegrasi, tentunya hal ini benar-benar merepotkan, dan opsi yang keduaadalah, saat ini telah banyak web server paketan yang didalamnya telah berisi PHP,MySQL, dan Apache, dan yang lebih mengasyikan lagi, paket ini gratis, beberapa paketyang terkenal adalah, Sokkit, wammp, xampp, easyphp, apachetriad, dan masih banyaklagi, namun saya sendiri lebih prefer menggunakan xampp, karena sekali install, semuaberes, tanpa harus konfigurasi lagi, yang menyenangkan adalah xampp sudahmenyediakan Zend PHP Framework dan PHP Pear. Oke kita langsung saja kepada praktik dalam menginstallasi xampp, sebuah paketyang berisi PHP, MySQL, Apache secara lengkap. xampp sendiri bisa langsung andadownload di http://www.apachefriends.com. Anda tinggal mengekstraknya lalu klik duakali.Langkah 1:Double klik xampp yang sudah anda download, yakni xampp-win32-1.7.3.exe klik 2 kali xampp- win32-1.7.3.exe Gambar 1.1 (Xampp Applcation Icon)Bab1: Perkenalan Installasi dan Konfigurasi 9Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 15. Langkah 2 :Nah kalau sudah melihat button install, tangan kita sudah gatal-gatal ingin segeramengkliknya, biarkan seperti itu saja, kemudian klik install. Sehingga nanti xamppnyaakan terinstall secara otomatis di c:xampp Gambar 1.2 (Xampp Install Step 1)Langkah 3 :Tunggu sampai progress bar (prosesnya) beres... Gambar 1.3 (Xampp Install Step 2)Bab1: Perkenalan Installasi dan Konfigurasi 10Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 16. Langkah 4 :Apakah anda ingin shortcut xampp control panel di letakkan di desktop ataupun startmenu ? ketik y saja untuk yes kemudian enter. Gambar 1.4 (Xampp Install Step 3)Langkah 5 :Pertanyaan ini untuk memperbaiki direktori install, apakah sudah benar letakdirektorinya? Ketik y saja kemudian enter. Gambar 1.5 (Xampp Install Step 4)Bab1: Perkenalan Installasi dan Konfigurasi 11Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 17. Langkah 6 :Selanjutnya akan ada pertanyaan, apakah anda ingin memasukkan xampp kedalamflashdisk, sehingga xampp anda bisa digunakan secara portable, artinya anda dapatmenjalankan secara portable, tidak perlu install lagi jika di jalankan dikomputer lain.Bagi yang sudah mengerti diharapkan diam saja, penulis sedang menjelaskan ke orangyang belum mengerti. Mohon bersabar. .Ketik n saja untuk tidak, kemudian enter. Lalu diamkan sejenak. Gambar 1.6 (Xampp Install Step 5)Langkah 7 :Lalu enter saja. Gambar 1.7 (Xampp Install Step 6)Bab1: Perkenalan Installasi dan Konfigurasi 12Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 18. Langkah 8 :Lagi-lagi pertanyaan... Ck.. ck... ck.. Sabar... sabar... Silahkan enter saja. Gambar 1.8 (Xampp Install Step 7)Langkah 9 :Oke, terakhir ada pertanyaan apakah anda ingin menjalankan pilihan yang disediakan??Penulis menekan x kemudian enter untuk keluar dari install. So far, jika anda mengikutiproses ini dan tampilannya sama dengan yang penulis jabarkan disini berarti anda telahselesai menginstall xampp. Gambar 1.9 (Xampp Install Step 8)Bab1: Perkenalan Installasi dan Konfigurasi 13Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 19. Selesai sudah installasi xampp versi 1.7.3, untuk menjalankan xampp anda bisa langsungdouble klik Xampp Control Panel di desktop.Anda juga bisa mencarinya di start menu | xampp for windows kemudian klik xamppcontrol panel. Gambar 1.10 (Xampp Start Menu)Kemudian nanti akan tampil windows seperti ini : Gambar 1.11 (Xampp Control Panel) Mungkin anda bertanya-tanya, apa yang harus saya klik? Dalam mempelajari PHPdan MySQL kita cuma butuh dua services yang berjalan. Pertama adalah Apache, dankedua Adalah MySQL. Apache inilah yang nantinya dapat menjalankan script PHP, danMySQL adalah service yang digunakan untuk dapat membuat database mysql.Bab1: Perkenalan Installasi dan Konfigurasi 14Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 20. Oke yang perlu diklik adalah start di baris Apache dan Start di baris MySQL,sisanya digunakan untuk FTP, Email, dan bahasa yang lain selain PHP. Oke? Silahkanklik start apache dan start mysql. Sehingga hasilnya menjadi seperti ini : Gambar 1.12 (Xampp Control Panel Start Service) Jika sudah seperti ini, artinya anda telah berhasil menjalankan service apache danmysql. Untuk mengetes apakah sudah benar-benar berhasil, anda bisa membuka browserinternet favorit anda, di sini penulis menggunakan browser internet mozilla firefox.Kemudian ketikkan http://localhost di addressbar, kemudian enter. Apabila anda melihattampilan yang sama seperti dibawah ini, anda sudah bisa bermain-main dengan PHP.Bab1: Perkenalan Installasi dan Konfigurasi 15Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 21. Bab 2:Bekerja dengan PHP2.1 Struktur Syntax PHP Oke sebelum bekerja dengan php, pada bab sebelumnya kita sudah berhasilmenginstall xampp, namun kita belum dapat menjalankan skrip phpnya dan juga belumdapat menikmati database mysqlnya. Untuk dapat menjalankan keduanya kita cukup, carixampp-control panel di start menu, dan kita klik tombol start pada baris apache danmysql, hingga nanti anda label hijau dengan tulisan running seperti ini : Gambar 2.1 (Xampp Control Panel)Bab2: Bekerja dengan PHP 16Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 22. ini tandanya kita sudah dapat bekerja dengan mysql maupun php. Kita akan coba masuk kedalam pembahasan, bekerja dengan PHP. Sebelumnya kitatelah praktikan bagaimana menginstall xampp agar PHP dan MySQL dapat dijalankan dimesin lokal. Sekarang saatnya kita akan coba mengetahui struktur dari syntax PHP. Sayaasumsikan anda sudah menguasai HTML. Ya, PHP sama dengan HTML, untuk dapat menjalankan scriptnya maka anda harusmengetikkan syntax-syntaxnya ke dalam satu buah file dengan menggunakan text-editorseperti notepad, atau text editor kesukaan anda, kemudian meletakkan file tersebut padasuatu direktori khusus yakni defaultnya adalah di :c:xampphtdocs Kemudian untuk dapat menjalankan skrip tersebut gunakanlah browser internetseperti mozilla firefox. Dengan mengisi alamat di address bar seperti ini misalnya :http://localhost/direktori/file.phpsaya akan jelaskan nanti arti dari alamat tersebut.2.1.2 Struktur halaman PHP 1Struktur halaman php bentuknya seperti ini :<?php// syntax php di letakkan di sini ...// kode php di akhiri dengan ;?>Untuk mengetikkan baris code php, maka anda perlu mengapitnya dengan tag <?php dandi akhir dengan ?> karena di luar dari itu php engine tidak menganggapnya sebagai scriptphp, melainkan hanya html biasa. Sebagai contoh kita akan menggunakan php, untukmenampilkan kalimat "Hallo dunia PHP?!" kita cukup membuka notepad, lalu ketikanseperti ini di notepad :<?phpecho "Hallo dunia PHP?!";?>oke, setelah mengetik semua, silahkan save di :c:xampphtdocsbuat folder baru dengan nama latihanphp, lalu save dengan nama latihan1.php, sehinggananti struktur pathnya adalah :Bab2: Bekerja dengan PHP 17Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 23. c:xampphtdocslatihanphplatihan1.phpuntuk menjalankan script tersebut anda cukup mengetikkan di browser :http://localhost/latihanphp/latihan1.phphasil di browser adalah seperti ini : Gambar 2.2 (Hallo PHP?)ini terjadi karena direktori default apache untuk dapat menjalankan php adalahc:xampphtdocs, maka untuk dapat membuka file latihan1.php, kita cukup ketikkanalamat :http://localhost/latihanphp/latihan1.phpMudah ya? Mudah. Nggak ada yang sulit kan? nggak ada dong, iya kan??? semangaat!Anda dapat merubah direktori default dari apache dengan mengkonfigurasi ulang filehttpd.conf yang terletak di :C:xamppapacheconfhttpd.confBab2: Bekerja dengan PHP 18Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 24. 2.1.3 Cara Penulisan Coding PHP yang baik Oke, kita lanjut, agar ketika melakukan coding dengan PHP dapat terbaca denganmudah, dan algoritmanya terbaca dengan jelas, maka dalam menyusun coding harus diatur sedemikian rupa. Contoh penulisan coding yang buruk seperti adalah seperti list code di bawah ini.Ini cuma, contoh saja, mungkin anda belum mengerti arti dari baris-baris code tersebut,saya cuma memberikan contoh saja.<?php// file latihan_213.phpif ($_POST["nama"] == "Anggie"){echo "<p>Hei $_POST[nama]</p>;}else{echo "<h2>Anda bukan Anggie!</h2>"}// masih dengan contoh yang sama,// namun dengan cara penulisan yang berbedaif ($_POST["nama"] == "Anggie"){echo "<p>";echo "Hei ";echo $_POST[nama];echo "</p>";}else{echo "<h2>";echo "Anda bukan Anggie!";echo "</h2>";}?> Script ini sulit untuk dibaca, karena jika ada programmer lain atau mungkin andayang bertahun-tahun liburan kemudian ingin membaca kode-kode yang anda buattersebut tentunya akan mengalami kesulitan membedakan fungsi-fungsi dari barisBab2: Bekerja dengan PHP 19Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 25. kodenya. Bayangkan jika seorang programmer mengetik kode-kode ratusan bahkanribuan kode dengan cara penulisan seperti itu ??? Mungkin programer yang membacanyaakan mual-mual. 8-}. Untuk saat ini karena kita baru belajar bahasa pemrogaman php, maka belum terasakesusahannya jika tidak menulis kode dengan cara yang baik. Saya mengibaratkan penulisan kode yang baik itu seperti seorang penulismengarang sebuah cerita. Seorang penulis yang baik itu dapat mempermudah si pembacadalam membaca tulisan karangan si penulis, mulai dari tanda baca, tahu letak berhentisuatu kalimat, paragraf, benar-benar memudahkan, beda dengan penulis yang salah urat,saya mengatakannya salah urat karena, penulis ini membuat cerita tapi tidakmempedulikan tanda baca, ini artinya penyiksaan dini bagi para pembacanya. Ya, contohcoding yang baik adalah seperti ini :<?phpif ($_POST["nama"] == "Anggie") { echo "<p>Hei $_POST[nama]</p>; }else { echo "<h2>Anda bukan Anggie!</h2>" }// masih dengan contoh yang sama,// namun dengan cara penulisan yang berbedaif ($_POST["nama"] == "Anggie") { echo "<p>"; echo "Hei "; echo $_POST[nama]; echo "</p>"; }else { echo "<h2>"; echo "Anda bukan Anggie!"; echo "</h2>"; }?>Bab2: Bekerja dengan PHP 20Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 26. 2.2 Mulai Membuat Halaman PHPPastikan xampp control panel berjalan, dan lihat kondisi Apache dan MySQL nya apakahsudah running ?? Jika iya, kita akan masuk ke dalam direktori :c:xampphtdocslatihanphpDi direktori ini kita akan membuat satu buah file latihan2.php.klik kanan -> new -> text document -> rename menjadi latihan2.phpkemudian buka file tersebut, kita akan mengetikan beberapa baris kode. Sebagai awalbelajar php. Kita ketikkan seperti ini :<?phpecho "Saya Belajar PHP";?>kemudian simpan... dengan menekan ctrl + s di keyboard, lalu buka mozilla firefox.Kemudian arahkan alamatnya ke http://localhost/latihanphp/latihan2.php. Jikatampilannya adalah :Saya Belajar PHPberarti anda telah berhasil mengawali belajar php dengan sukses. Selamat!Bab2: Bekerja dengan PHP 21Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 27. 2.3 Integrasi HTML dan PHP Selain berdiri sendiri, PHP pun dapat di integrasikan dengan HTML. Sayaasumsikan anda sudah mengerti HTML sebelumnya. Kita akan coba membuat sebuahhalaman yang didalamnya terdapat script PHP dan HTML. Masuk ke dalam direktori c:xampphtdocslatihanphp buat sebuah file dengannama latihan3.php, kemudian ketikan baris code seperti ini...<!-- file latihan3.php --><html><head>Latihan 3</head><body><?phpecho "Ini Script PHP di dalam tag HTML";?></body></html>untuk dapat melihat hasilnya, buka mozilla firefox, dan ketikkan alamatnya :http://localhost/latihanphp/latihan3.phpya, kita lihat view source code htmlnya, dengan cara mengklik kanan browser lalu pilihView Page Source, di sini kita tidak lagi melihat script php-nya, yang ada hanyalahHTML saja, ini terjadi karena PHP engine/processor mengeksekusi file php di server, danmenghasilkan html dan mengirimkan file htmlnya kepada user, sehingga yang terlihatadalah htmlnya saja, bukan phpnya.Bab2: Bekerja dengan PHP 22Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 28. 2.4 Menggunakan Constant dan Variable Kita akan mendalami PHP lebih lanjut. PHP memiliki dua jenis nilai, yakniConstant dan Variable. Keduanya sangat berpengaruh kedalam pemrogaman PHP itusendiri, karena jika tidak ada kedua nilai ini maka PHP hanyalah barisan code saja tanpanilai, atau dengan kata lain, tidak berfungsi sebagai apa-apa. Kita akan bahas secara lengkap dalam bagian ini kedua nilai yang saya sebutkantadi.2.4.1 Menggunakan Constant Apa itu konstan ?? konstan diartikan sebagai suatu nilai yang tidak bisa dimodifikasi lagi. Bersifat mutlak, dan tidak dapat di rubah. biasanya ini digunakan untukbilangan yang tetap, misalkan untuk jari-jari suatu lingkaran, misalnya. Atau mungkintanggal lahir seseorang.Misalkan :Pi = 3,141592dalam php itu untuk mendefiniskan kontan Pi adalah sebagai berikut :define ("Pi", 3.141592);apabila kita menginginkan untuk menampilkan isi dari Pi, caranya adalah seperti ini.<?phpdefine ("Pi", 3.141592);echo Pi;?>Oke, misalkan kita ingin mengintegrasikan nya dengan html, kita buat satu file dic:xampphtdocslatihanphp bernama latihan4.phpkemudian ketikkan isinya seperti ini : ...<!-- file latihan4.php --><html><head>Latihan 4</head><body><?phpdefine ("Pi", 3.141592);echo Pi;?></body></html>Bab2: Bekerja dengan PHP 23Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 29. kita buka di mozilla firefox, kemudian arahkan link :http://localhost/latihanphp/latihan4.phphasilnya adalah seperti ini :3.141592membuat konstan sangat mudah sekali bukan?2.4.2 Menggunakan VariableVariable, merupakan suatu nilai yang masih dapat di ubah, dengan cara di isi ulang,berbeda dengan konstan yang tidak dapat di rubah dan bersifat mutlak. Coba kita buatsatu buah file di c:xampphtdocslatihanphp bernama latihan5.php. Kemudian kitaketikkan baris seperti ini ke dalam file tersebut :<?php$tahun = 2010; // ini adalah proses assignmentecho $tahun ;$tahun = 2012;echo $tahun ;?>kemudian kita eksekusi filenya dengan browser mozilla firefox dan menulis alamatnyaseperti ini :http://localhost/latihanphp/latihan5.phpTerlihat nilai 2012 menimpa nilai yang sebelumnya. berbeda dengan constant.Catatan : “Kita lihat $tahun = 2010; yang dinamakan variable adalah $tahun sedangkan nilainya adalah 2010 sehingga variable $tahun memiliki nilai 2010”Ada beberapa tipe data untuk variable, variable yang baru kita praktikan itu bertipeinteger. Ada 3 jenis tipe data induk, yakni integer, float, dan string.Catatan :Tipe Integer itu tipe data yang berisi bilangan bulat, 0, 1, 2, 3, dan seterusnya...Bab2: Bekerja dengan PHP 24Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 30. Tipe Float itu tipe data yang berisi bilang pecahan atau desimal, seperti 1,35 atau 7,5 danlain sebagainya...Tipe String itu tipe data yang berisi kumpulan karakter, angka, huruf, simbol, misalnyaseperti "Susu Ultra Jaya", atau nama jalan "Jl. Warung Nangka 2, Gang Duren Mateng"Cara Penulisan Variable :Dalam menulis variable ada hal-hal yang harus diperhatikan, dan jika tidak diikuti makavariable tersebut tidak akan menjadi variable, tapi bilangan lain atau mungkin error :$variable harus di awali oleh huruf atau _, tidak boleh memuat spasi tidak boleh memuat spesial karakter (~!@#$% dan lain lain)$892 ini contoh yang salah dalam penulisan variable$ini bukan variable ini contoh yang salah dalam penulisan variable$_variable1 ini adalah contoh yang benar dalam penulisan variable2.4.3 Menggunakan Operator Operator membuat suatu nilai menjadi penting. Ada beberapa jenis operator yangberguna dalam pemrogaman menggunakan PHP. Ada operator matematika, assignment,perbandingan, logika, increment, decrement.Operator matematikaContohnya adalah seperti ini :<?php// contoh operator matematika$pengurangan = 3.033.032.020 - 3.033.031.924;$pertambahan = 3.033.032.020 + 3.033.031.924;$perkalian = 3.033.032.020 * 3.033.031.924;$pembagian = 3.033.032.020 / 3.033.031.924;$hasilbagi = 200 % 4 ;echo "3.033.032.020 - 3.033.031.924 = $pengurangan" ;Bab2: Bekerja dengan PHP 25Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 31. echo "3.033.032.020 + 3.033.031.924 = $pertambahan" ;echo "3.033.032.020 * 3.033.031.924 = $perkalian" ;echo "3.033.032.020 / 3.033.031.924 = $pembagian" ;echo "200 % 4 = $hasilbagi";// pengurangan di wakili tanda -// penjumlahan di wakili tanda +// perkalian di wakili tanda *// pembagian di wakili dengan tanda /// sisa hasil bagi di wakili dengan tanda %?>Operator matematika ini layaknya anda berhitung menggunakan matematika, mulai daripengurangan, penjumlahan, perkalian, pembagian.Operator assignment Operator assignment merupakan operator yang berguna untuk memasukkan nilaikedalam suatu variable. Dan jangan lupa, setiap baris code harus di tutup dengan ; atauscript anda akan error. Coba kita praktikan :<?php// contoh operator assignment$panjang = 10; // contoh assignment$lebar = 8; // contoh assignment$luas = $panjang * $lebar ; // contoh assignment juga// tanda = mewakili proses assignment,// ada beberapa tanda lagi yang dapat// melakukan assignment,// assignment penjumlahan diwakili tanda += contohnya$tambahdua += 2;echo $tambahdua."<br>" ;// hasilnya 2// hal ini sama dengan pernyatan :// $tambahdua = $tambahdua + 2;// assignment pengurangan diwakili tanda -= contohnya$clip = 22;$clip -= 2; // sama dengan $clip = $clip - 2;echo $clip;?>Bab2: Bekerja dengan PHP 26Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 32. hal ini juga sama dengan perkalian di wakili tanda *= dan pembagian /=contoh yang lebih lengkapnya adalah seperti ini :<?php$a = 50;$b = 40;$c = 30;$d = 20;echo "Hasil dari 50+=2 adalah " . $a+=2 ;echo "Hasil dari 40-=2 adalah " . $b-=2 ;echo "Hasil dari 30*=2 adalah " . $c*=2 ;echo "Hasil dari 20/=2 adalah " , $d/=2 ;?>kemudian save di c:xampphtdocslatihanphplatihan7.php lalu jalankan di mozillafirefox, atau browser lain. kita lihat hasilnya.logikanya adalah sebagai berikut, kita ambil salah satu, misalkan :$a+=2ini berarti sama saja dengan :$a = $a + 2;karena a bernilai 50, maka tambahkan 2 kepada 50, sehingga 50 + 2 = 52 mudah bukan. ?Begitu juga untuk pengurangan, perkalian, dan pembagian. Perlu di catat di sini, adabentuk baris seperti ini :echo "Hasil dari 50+=2 adalah " . $a+=2 ;dengan tanda titik, tanda titik memiliki arti melanjutkan kalimat. anda juga bisamenggantikan titik dengan koma. Sebagai contoh apabila kita ingin menulis kalimat"Saya belajar PHP" kedalam 3 bagian, kita dapat menulisnya seperti iniecho "Saya" . "Belajar" . "PHP" ;atau juga bisa seperti ini :echo "Saya" , "Belajar" , "PHP" ;sehingga untuk menampilkan angka 5 yang berada dalam variable $a, bisa seperti ini :echo "Nilai a adalah $a";Bab2: Bekerja dengan PHP 27Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 33. bisa juga seperti ini :echo "Nilai a adalah". $a ;atau bisa juga seperti ini :echo "Nilai a adalah", $a ;mudah bukan ?? Selanjutnya adalah operator perbandingan, khusus untuk operatorperbandingan tidak dapat digunakan standonline, artinya tidak bisa bekerja jika tidak diintegrasikan dengan kondisional / percabangan , oleh karena itu saya akan membahasnyaberbarengan dengan kondisional if / else. Begitu juga dengan operator logika, saya akanjelaskan di bagian kondisional, sedangkan untuk operator increment, dan decrement akandijelaskan di bagian pengulangan.Bab2: Bekerja dengan PHP 28Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 34. 2.5 Menggunakan Argumen If dan Else2.5.1 Menggunakan Argumen IF Argumen if atau keputusan if sangat sering digunakan oleh para programmer php,alasannya adalah mudah dan sederhana. Penggunaan argumen if ini biasanya dilakukanketika akan membandingkan suatu nilai, atau membandingkan suatu kondisi.Dalam dunia nyata membandingkan kondisi itu seperti pengandaian, contohnya adalahseperti ini :jika cuaca cerahmaka saya akan berangkat kuliah.ini berarti dimana "jika cuaca cerah" itu adalah nilai atau kondisi dan"maka saya akan berangkat kuliah" ini di sebut dengan pernyataan atau statement dalamphp. mudah ya?cara penulisan argumen if dalam dunia php adalah sebagai berikut :if kriteria { pernyataan;}kita coba implementasikannya :Buat sebuah file bernama latihan8.php dan simpan di c:xampphtdocslatihanphp,kemudian isi filenya seperti ini :<?php$cuaca = "cerah";if ($cuaca == "cerah") { echo "Saya akan berangkat kuliah!"; }?>Lihat hasilnya di browser...Saya akan berangkat kuliah!Bagaimana???Bab2: Bekerja dengan PHP 29Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 35. Kembali ke coding, dalam baris kode urutan ke 3, ada kalimat :if ($cuaca == "cerah")tanda == ini merupakan operator perbandingan, yang membandingkan isi variable$cuaca dengan nilai "cerah", jika bernilai benar, maka akan ditampilkan pernyataan dibawahnya.perlu di catat sekali lagi, jika :$cuaca = "cerah" ini berarti memasukkan nilai "cerah" kedalam variable$cuaca,Sedangkan :if ($cuaca == "cerah") ini berarti menanyakan/membandingkan, apakahnilai variable $cuaca itu berisi "cerah"??jika benar, maka pernyataan yang berada di dalam tanda {} akan ditampilkan, jika tidakmaka php akan berhenti mengeksekusi filenya. Contoh yang lain adalah sebagai berikut :<?php$jarak = 40;if ($jarak <= 40) { echo "Jalan kaki saja"; }if ($jarak >= 40) { echo "Naik Motor"; }if ($jarak != 40) { echo "Diam ditempat"; }?>Hasilnya nanti adalah :Jalan Kaki Saja Naik MotorBab2: Bekerja dengan PHP 30Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 36. 2.5.2 Menggunakan Argumen if dan else secara bersamaan Argumen if dan else apabila digunakan secara bersamaan maka akan dapatmenghasilkan dua statement. Jika if itu hanya dapat menghasilkan satu statement saja,maka if dan else akan menghasilkan 2 opsi statement pada satu kondisi. Dalam kehidupannyata jika anda mengalami suatu kondisi maka akan terdapat beberapa opsi, contohnyatanya adalah sebagai berikut :jika cuaca cerahmaka saya akan berangkat kuliahjika tidakmaka saya akan membuat mie ramendan, apabila diaplikasikan ke dalam bahasa php. Mudahnya adalah sebagai berikut :<?php$cuaca = "mendung";if ($cuaca == "cerah") // jika cuaca cerah { echo "Saya akan berangkat kuliah"; }else { echo "Saya akan membuat mie ramen"; }?>contoh yang lainnya :<?php$cuaca = "mendung";if ($cuaca != "cerah") // jika cuaca tidak cerah { echo "Saya akan membuat mie ramen"; }else { echo "Saya akan berangkat kuliah"; }?>Bab2: Bekerja dengan PHP 31Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 37. Mudah bukan? Kemudahan inilah yang membuat para web developer menjawab "PHP itusangat manusiawi" ketika saya menanyakan tentang bahasa apa yang mereka sukai.2.5.3 Menggunakan Argumen if, else if, dan else Jika pada argumen if dan else itu dapat menggunakan dua kondisi, yakni kondisijika benar, dan jika salah, pada argumen if, else if, dan else, anda dapat menggunakankondisi yang tidak terbatas. dan masing-masing kondisi/kriteria memiliki masing-masingpernyataan/statement. Dalam dunia sehari-hari argumen if, else if, dan else memilikicontoh seperti ini :jika mendungmaka bawa payungjika cerahmaka saya akan berangkat kuliah dengan jalan kaki meskipun jaraknya 20 km.jika banjirmaka bawa perahu sendiri dari rumahdan begitu seterusnya, tidak ada batasnya...dalam dunia php, contoh implementasinya adalah sebagai berikut, jangan lupa untukmemperhatikan tanda {} dan ; nya<?php$nilai = "A";if($nilai == "A") { echo "Bagusss... baguss..."; }else if ($nilai == "B") { echo "Baik..."; }else if ($nilai == "C") { echo "Cukup...";Bab2: Bekerja dengan PHP 32Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 38. }else if ($nilai == "D") { echo "Kurang..."; }// dan seterus-seterusnya ...?>silahkan save di c:xampphtdocslatihanphp . Kita lihat di browser mozilla firefoxhasilnya adalah seperti ini :Bagus... bagus...di dalam penggunaan argumen if, else if, dan else terlihat begitu tidak terbatas jika diaplikasikan kedalam kasus yang lain.Bab2: Bekerja dengan PHP 33Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 39. 2.6 Menggunakan pemilihan switchSwitch sebetulnya sama saja dengan argumen if, else if, dan else, cuma sedikit berbedadalam penggunaannya terlebih pada syntaxnya. Jika untuk memutuskan kondisi dalam if,else if, dan else itu menggunakan {} namun dalam switch untuk memberhentikankeputusan digunakanlah fungsi break; bentuk aslinya adalah seperti ini :switch(variable){ // kita memilih variable yang akan dicocokkan case kriteria1: // kita menanyakan kriteria pertama itu apa pernyataan1; // kemudian pernyataannya apa ? break; // di akhir dengan break; begitu seterusnya, hingga kriteria habis case kriteria2: pernyataan2; break; // dan seterusnya dan seterunya ...}di sini terlihat ketika kondisinya sesuai di wakili dengan code ‘case kriteria1:’ dengantitik dua : di belakang setiap kriterianya. maka di tulis lah pernyataan di bawahnya ituapa?contoh kasus dalam php nya sebagai berikut :<?php$nilai = "A";switch($nilai){ case "A": echo "Bagusss... baguss..."; break; case "B": echo "Baik..."; break; case "C": echo "Cukup..."; break;Bab2: Bekerja dengan PHP 34Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 40. case "D": echo "Kurang... "; break;}?>switch itu hanya digunakan pada satu jenis variable saja namun memiliki nilai yangberbeda. tetapi dalam if, else if, dan else dapat digunakan pada variable yang berbeda-beda dan nilai yang berbeda. switch ataupun if, else if, dan else tentunya dapat andagunakan sesuai dengan kebutuhan anda nantinya.Bab2: Bekerja dengan PHP 35Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 41. 2.7 Menggunakan Pengulangan Dengan echo atau print, anda dapat menampilkan kalimat apapun, dan panjangnyapun tidak terbatas. Penggunaan echo atau print untuk mengetikan angka 1 - 3, misalnyaseperti ini :<?php echo "Angka 1<br>"; echo "Angka 2<br>"; echo "Angka 3<br>";?> Lihat hasilnya di browser anda. Bagaimana jadinya jika anda mendapatkan kasusuntuk menulis angka hingga 100 baris atau 50jt baris? Apa masih menggunakan carakuno tersebut? contoh yang lainnya bagaimana seorang programmer mengambil isidatabase kemudian menampilkannya semua isi database tersebut, apa masihmenggunakan echo saja? Solusinya akan dibahas dalam pengulangan. Terdapat 3 jenis pengulangan yang paling sering digunakan dalam php,pengulangan bentuk for, bentuk while, dan bentuk do while. saya akan membahasketiganya sekarang.2.7.1 Pengulangan For For merupakan jenis pengulangan yang cukup sering digunakan, dan penggunaanpengulangan bentuk for ini tergantung kebutuhan. dan for ini bisa digunakan untukcontoh kasus sederhana yang saya sebutkan di awal tadi yaitu menampilkan angka 1 -100 atau 1 - 50jt dengan cepat. For membuat semuanya menjadi sangat effisien. Bentukumum for adalah seperti ini :for(nilai awal; batas nilai; operator increment/decrement) { pernyataan yang akan di proses }Contoh implementasinya seperti ini, menampilkan kalimat Angka 1 sampai 100 :<?php// file latihan_271.phpfor($x=1;$x<=100;$x++) { echo "Angka $x<br>";Bab2: Bekerja dengan PHP 36Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 42. }?>Hasilnya :1234...100 Pengulangan ini akan terus menerus mengulang dan terus menerus dilakukanpenambahan 1 hingga nilainya mencapai yang ditargetkan, yakni kurang sama dengan100. Karena pengulangan terjadi dari angka 1 hingga 100 maka terdapat 100 proses.Untuk operator increment yang lain adalah seperti ini.<?phpfor($x=1;$x<=100;$x+2) { echo "Angka $x<br>"; }?>ini berarti dilakukan penambahan 2, sehingga nanti hasilnya seperti ini. (browser)dan untuk operator decrement contohnya seperti ini :<?phpfor($x=100;$x>=1;$x--) { echo "Angka $x<br>"; }?>bedanya adalah pada operator perbandingan, jika pada pengulangan increment ataumenaik bentuk operatornya adalah <=, namun dalam pengulangan decrement ataumenurun bentuk operatornya adalah >=, apabila peraturan ini tidak dipatuhi makahasilnya adalah error. Contoh lain pengulangan decrement :<?phpfor($x=100;$x>=1;$x-=2) {Bab2: Bekerja dengan PHP 37Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 43. echo "Angka $x<br>"; }?>selain hanya php, anda juga dapat menggunakan pengulangan ini untuk menghasilkanhtml yang dinamis, contohnya seperti ini :<html><head> <title>Pengulangan header</title></head><body> <?php for($x=1;$x<=7;$x++) { echo "<font size=$x>Ukuran font $x</font><br>"; } ?></body></html>2.7.2 Pengulangan whilePengulangan while ini bentuknya seperti ini :Nilai awalWhile (batas pengulangan) { pernyataan; operator decrement/increment; }Pengulangan jenis ini tidak terlalu jauh berbeda dengan pengulangan bentuk for. hanyasaja penempatan nilai awalnya, dan operator decrement/incrementnya berbeda letaknya.Implementasinya adalah seperti ini :<?php$x = 1;while ($x <= 100) {Bab2: Bekerja dengan PHP 38Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 44. echo "Angka $x"; $x++ // jika tidak ada operator increment atau decrement // maka proses akan // terus menerus terjadi tanpa berhenti }?>jadi jika kondisi belum sampai yang ditentukan dalam hal ini, jika variable $x itu kurangdari 100 maka pengulangan akan terus dilakukan, dan penambahan selalu terjadi. namunketika nilainya lebih dari 100 maka pengulangan akan berhenti. hampir sama dengankonsep pengulangan bentuk for.2.7.3 Pengulangan do whileBentuk pengulangan do while adalah seperti ini :Nilai awaldo { pernyataan; operator decrement/increment; }While (batas pengulangan)contoh implementasinya :<?php$x = 1;do { echo "Angka $x"; $x++ }while ($x <= 100);?>hampir sama dengan bentuk pengulangan while, namun yang jadi perbedaan di siniadalah letak dari whilenya saja, dan diakhir dari pengulangan while di beri ; (semicolon).Bab2: Bekerja dengan PHP 39Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 45. coba kita buktikan :<?php// pengulangan jenis while$x = 1;while ($x <= 100) { echo "Angka $x<br>"; $x++; }echo "<strong>$x</strong>";echo "<br><br>";// pengulangan jenis do while$x = 1;do { echo "Angka $x<br>"; $x++; }while($x <= 100);echo "<strong>$x</strong>";?> Di akhir setiap pengulangan saya memasukkan baris echo $x ; ini cuma untukmembuktikan apakah benar nilainya sama, dan hasilnya ... sama. ini menandakaan dowhile itu sama dengan while, namun implementasinya itu sesuai dengan kebutuhan anda. Sampai sini, anda dapat memilih, lebih prefer atau lebih suka menggunakanpengulangan bentuk yang mana? for, while, atau do while. semua di tangan anda. dangunakan secara efisien.Bab2: Bekerja dengan PHP 40Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 46. 2.8 Menggunakan Include dan require untuk efisiensi Coding Fungsi include dan require berfungsi untuk menjalankan banyak file secaraberbarengan dengan caraa memasukkan file lain kedalam suatu file tertentu. bentukpenulisannya adalah seperti ini :include "namafile.php";require "namafile.php"; Contoh implementasinya adalah seperti ini, kita akan membuat suatu argumen yangnilai variable nya itu diambil dari file yang lain. Pertama buat satu buah file dengannama, variable.latihaninclude.php kemudian ketikkan di dalamnya seperti ini :<?php// file variable.latihaninclude.php$cuaca = "hujan";?>kemudian kita akan mengambil variable $cuaca tersebut untuk dimasukkan kedalam fileyang lain, kita buat 1 buah file lagi, dengan nama, latihan_28.php, kemudian ketikkan didalamnya seperti ini :<?phpinclude "variable.latihaninclude.php";if ($cuaca == "cerah") { echo "Latihan bola di GOR"; }else { echo "Bikin mie ramen"; }?>hasilnya adalah :Bikin mie ramen Mengapa ? karena fungsi include lah yang dapat memanggil file lain untuk diBab2: Bekerja dengan PHP 41Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 47. eksekusi bersama, namun perlu diperhatikan peletakkannya. jika di letakkan di akhirseperti ini maka akan error.<?phpif ($cuaca == "cerah") { echo "Latihan bola di GOR"; }else { echo "Bikin mie ramen"; }include "variable.latihaninclude.php";?>oleh karena itu disesuaikan dengan penggunaannya, yakni diletakkan sebelumpengolahan file.Bab2: Bekerja dengan PHP 42Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 48. 2.9 Menggunakan Fungsi untuk effisiensi CodingFungsi ini berisi sekumpulan perintah program, bisa berisi argumen if, pengulangan,variable, yang dapat menerima inputan berupa variable berisi nilai kemudian mengolahnilai tersebut sesuai dengan kebutuhan. Bentuk umum dalam membuat fungsi adalahseperti inifunction namafungsi(parameter1, parameter2, ... parameter n ) { pernyataan berupa perintah operasi program; }contoh implementasinya seperti ini :<?php// pertama kita terlebih dahulu mendefinisikaan fungsinya,// kemudian mengisi fungsi tersebut dengan sederetan perintahfunction testing() { echo "Contoh menggunakan Fungsi"; }// untuk dapat menggunakan fungsi yang telah dibuat,// perlu pemanggilan nama fungsinya.testing();?>Menggunakan parameter dalam fungsiParameter mewakili variable yang nilainya akan diolah. untuk menggunakan parametercontohnya adalah seperti ini :<?phpfunction testing($nilai) { echo "Tinggi badan anda adalah $nilai"; }$tinggibadan = 170 ;testing($tinggibadan);?>Bab2: Bekerja dengan PHP 43Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 49. kita lihat hasilnya di browser mozilla firefox dengan parameter dalam fungsi anda dapatmengolah apa saja, dan coding jauh lebih cepat ketimbang memanggil ulang perintah-perintah nya tanpa menggunakan fungsi. Contoh lain menggunakan parameter :<?phpfunction penjumlahan($nilai1, $nilai2) { $total = $nilai1+$nilai2; echo "$nilai1 + $nilai2 = ".$total; }penjumlahan(30,20);?>dan hasilnya di browser mozilla firefox :30 + 20 = 50Fungsi benar-benar bermanfaat dalam pengolahan data inputan user ataupun daridatabase.Mengembalikan Nilai FungsiMengembalikan nilai fungsi dilakukan jika anda menginginkan nilai dari fungsi tersebutdi olah dalam suatu variable tertentu. Nah biasanya nilai dalam variable nantinya akandigunakan oleh fungsi yang lain. Untuk mengembalikan nilai fungsi, digunakan suatufungsi return. Contoh implementasinya :<?phpfunction penjumlahan($nilai1, $nilai2) { $total = $nilai1+$nilai2; return $total; }$jumlah20plus30 = penjumlahan(30,20);echo $jumlah20plus30;?>kita lihat hasilnya di browser,50kemudian kita balik ke codenya.Bab2: Bekerja dengan PHP 44Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 50. Fungsi penjumlahan tersebut akan mengembalikan nilai dari penjumlahan antara$nilai1 dan $nilai2. Sehingga nilai dari fungsi dapat diimplementasikan sebagai nilaidari suatu variable $jumlah20plus30. Dan hasil akhirnya adalah nilai si fungsi di ambildari nilai return fungsi tersebut. Sehingga nilai dari fungsi tersebut dapat dimanfaatkanuntuk suatu kebutuhan lainnya.Bab2: Bekerja dengan PHP 45Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 51. 2.10 Mengenal array Jika variable itu cuma memiliki satu nilai, maka array memiliki banyak nilai darielemen. Array, merupakan suatu kumpulan data variable yang tersusun secara index.nanti akan saya jelaskan maksudnya itu apa. Array dapat menampung variable yang tipedatanya berbeda-beda.2.10.1 Syntax arrayUntuk membuat array, berikut adalah syntaxnya :array(elemen)contohnya adalah seperti ini :$tahun = array(1924, 2010, 2012, 2024, 2050);saya akan jelaskan, array di mulai dari index urutan 0.array(1924, 2010, 2012, 2024, 2050);sehingga :index 0 --> di miliki oleh array bernilai 1924index 1 --> di miliki oleh array bernilai 2010index 2 --> di miliki oleh array bernilai 2012index 3 --> di miliki oleh array bernilai 2024index 4 --> di miliki oleh array bernilai 2050Sehingga apabila anda ingin mengambil nilai dari array, misalkan 2024, anda cukupdengan menampilkan nama variable nya kemudian di tambahkan index dibelakangvariable tersebut, seperti ini :$tahun[3]; --> mewakili 2024.Sehingga apa bila di aplikasikan dalam code php:<?php$tahun = array(1924, 2010, 2012, 2024, 2050);echo $tahun[3];?>Sehingga hasilnya nanti di browser adalah :2024Bab2: Bekerja dengan PHP 46Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 52. selain angka, php array pun dapat memuat berbagai variable dengan tipe data yang lain.Contoh lainnya :<?php$mahasiswa = array("Loka Dwiartara","Laki-laki","24/01/1987","B",3.41,"Bot Technology");for ($x=0;$x<=6;$x++) { echo $mahasiswa[$x]."<br>"; }?>hasilnya adalah :Loka DwiartaraLaki-laki24/01/1987B3.41Bot Technology Pengulangan tadi sebetulnya hanya mengambil isi dari array satu demi satu.Sehingga yang terjadi sebetulnya adalah sama seperti ini :<?php$mahasiswa = array("Loka Dwiartara","Laki-laki","24/01/1987","B",3.41,"Bot Technology");echo $mahasiswa[0]."<br>";echo $mahasiswa[1]."<br>";echo $mahasiswa[2]."<br>";echo $mahasiswa[3]."<br>";echo $mahasiswa[4]."<br>";echo $mahasiswa[5]."<br>";?> Dan kita lihat hasilnya, sama dengan script yang menggunakan pengulangan bentukfor ada beberapa syntax dalam php, yang biasa digunakan untuk mengambil isi dari array,selain dengan pengambilan langsung seperti cara tadim ataupun menggunakan loopingseperti yang saya jelaskan barusan. Kita dapat menggunakan fungsi dalam pengolahanarray, dengan cara memanfaatkan key dari tiap-tiap array, dan hal ini membutuhkan satuBab2: Bekerja dengan PHP 47Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 53. pengulangan tersendiri.<?php$mahasiswa = array("Loka Dwiartara","Laki-laki","24/01/1987","B",3.41,"Bot Technology");for($x=0;$x<6;$x++) { echo "Index array mahasiswa ke : ".key($mahasiswa)." Berisi ".current($mahasiswa)."<br>"; next($mahasiswa); }?>kita lihat hasilnya di browser, ini merupakan pengambilan array dari index terendahyakni 0, ke paling akhir yakni 5. kita akan coba membaliknya, jika tadi mulai dari 0 - 5,kita mulai dari 5 dan mundur hingga urutan ke 0, dengan memanfaatkan fungsi end(),dan prev();Kita coba implmentasikan :<?php$mahasiswa = array("Loka Dwiartara","Laki-laki","24/01/1987","B",3.41,"Bot Technology");end($mahasiswa);for($x=0;$x<6;$x++) { echo "Index array mahasiswa ke : ".key($mahasiswa)." berisi ".current($mahasiswa)."<br>"; prev($mahasiswa); }?>dengan end(), maka array akan dibawa ke paling akhir, kemudian di bawa mundur keindex terendah dengan fungsi prev(). Selain fungsi end(), prev(), dan next(), kita jugadapat menggunakan fungsi count() yang digunakan untuk menghitung jumlah variableyang ada dalam array, sebagai contohnya, kita akan menghitung jumlah array yangberada pada array mahasiswa :<?php$mahasiswa = array("Loka Dwiartara","Laki-laki","24/01/1987","B",3.41,"Bot Technology");$jumlaharray = count($mahasiswa);echo $jumlaharray;Bab2: Bekerja dengan PHP 48Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 54. ?>Mengakses Array dalam variable yang terpisahAda sedikit pertanyaan mungkin, masih seputar array, mungkin anda menginginkan arraytersebut di akses kedalam variable variable yang terpisah, anda dapat menggunakanfungsi list(); implementasinya seperti ini :<?php$mahasiswa = array("Loka Dwiartara","Laki-laki","24/01/1987","B",3.41,"Bot Technology");list($nama,$jeniskelamin,$tanggallahir,$poin,$IP,$spesialisasi) =$mahasiswa;echo $nama."<br>";echo $jeniskelamin."<br>";echo $tanggallahir."<br>";echo $poin."<br>";echo $IP."<br>";echo $spesialisasi."<br>";?>2.10.2 Mengurutkan array Sedikit lagi dengan array, bagaimana mengurutkan array ? hal ini digunakan ketikakita memiliki banyak data tapi data tersebut tidak berurutan, misalkan1,3,2,4,7,8,6,5,9,10, kita ingin mengurutkan array tersebut dari terkecil hingga terbesar.solusinya adalah menggunakan fungsi sort() :<?php$data = array(1,3,2,4,7,8,6,5,9,10);sort($data);for($x=0;$x<=10;$x++) { echo current($data)."<br>"; next($data); }?>2.10.3 Menggunakan foreachBab2: Bekerja dengan PHP 49Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 55. Selain menggunakan looping dengan bentuk for tadi, kita pun dapat menggunakanpengulangan yang memang dikhususkan untuk array, yakni foreach, dan biasanya foreachjuga digunakan untuk menampilkan isi dari database. penggunaan foreach sangatlahmudah.<?php$mahasiswa = array("Loka Dwiartara","Laki-laki","24/01/1987","B",3.41,"Bot Technology");foreach ($mahasiswa as $datamahasiswa) { echo $datamahasiswa."<br>"; }?>mudah ya ??Bab2: Bekerja dengan PHP 50Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 56. 2.11 Manipulasi String Manipulasi string digunakan untuk mengolah suatu inputan yang dimasukkan olehuser atau di ambil dari database. Biasanya manipulasi ini digunakan untuk satu alasantertentu, seperti misalkan mencocokan password, validasi kecocokan email, menampilkantext dengan format tertentu, misalkan menampilkan angka 3031924 dalam rupiahmenjadi Rp 3.031.924,- dan masih banyak contoh yang lainnya.Menghitung Jumlah karakter dalam stringUntuk menghitung jumlah karakter dalam string, digunakan fungsi strlen();implementasinya adalah seperti ini :<?php$nama = "Loka Dwiartara";$jumlahkarakter = strlen($nama);echo "variable $nama berisi $jumlahkarakter karakater";?>Membandingkan 2 StringMembandingkan 2 string biasanya digunakan untuk pencocokan password, ataupencocokan email. Di gunakan fungsi strcmp(); implementasinya seperti ini :<?php$passwordasli = "b3laj@rpHP";$passwordinput = "belajarPHP";$cocok = strcmp($passwordasli, $passwordinput);if ($cocok != 1) { echo "Password anda salah!"; }else { echo "Password anda benar."; }?>ini merupakan simulasi ketika password yang berada dalam database yakni$passowrdasli, dicocokkan dengan cara penginputan yang dilakukan oleh user yakni$passwordinput.Bab2: Bekerja dengan PHP 51Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 57. Strcmp itu membandingkan antara password database dengan password yang input,ketika password yang di input itu tidak cocok dengan yang ada di database maka yangterjadi kemudian adalah pernyataan "Password anda salah".Mengkapitalkan stringIni adalah istilah lain dari mengubah text yang tadinya huruf kecil semua menjadi hurufbesar semua. Cara penggunaannya cukup mudah, cukup dengan menggunakanstrtoupper(); Implementasinya adalah sebagai berikut :<?php$intro = "jangan berteriak!!!";$introhurufbesar = strtoupper($intro);echo $introhurufbesar;?>Hasil di browser :JANGAN BERTERIAK!!!cukup mudah bukan ?Menjadikan string huruf kecil semuaKebalikan dari strtoupper adalah sdtrtolower ;implementasinya adalah sebagai berikut :<?php$intro = "SEDANG BERBISIK";$introhurufkecil = strtolower($intro);echo $introhurufkecil;?>Mengubah baris baru menjadiKetika anda mengetikkaan sebuah kalimat dalam PHP seperti ini, dengan banyak baris didalamnya ...Pada suatu harisaya jalan sendiriandi tengah jalan bertemu kucing herdersaya di kejar sampai nyusrukBab2: Bekerja dengan PHP 52Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 58. namun ketika di tampilkan dengan menggunakan echo, seperti ini<?php$cerita = "Pada suatu harisaya jalan sendiriandi tengah jalan bertemu kucing herdersaya di kejar sampai nyusruk";echo $cerita;?>yang terjadi malah, semuanya di tampilkan dalam satu baris :Pada suatu hari saya jalan sendirian di tengah jalan bertemu kucing herder saya di kejarsampai nyusrukphp memiliki fungsi nl2br(), yang menjadikan baris-baris baru menjadi <br>, danKalimat-kalimat yang diketik ditampilkan seperti ketika di ketik. Implementasinya sepertiini<?php$cerita = "Pada suatu harisaya jalan sendiriandi tengah jalan bertemu kucing herdersaya di kejar sampai nyusruk";echo nl2br($cerita);?>hasilnya adalah :Pada suatu harisaya jalan sendiriandi tengah jalan bertemu kucing herdersaya di kejar sampai nyusrukMemfilter tag html Memfilter tag html biasanya digunakan ketika seorang web developer tidakmenginginkan spammer merusak tampilan guestbook, dengan linknya, ataumenonaktifkan tag html yang tidak dibutuhkan.Misalkan ketika seorang spammer yang menaruh link situsnya kedalam guestbook, makauntuk menonaktifkan link tersebut cukup gunakan strip_tags(); implementasinya adalahseperti ini :Bab2: Bekerja dengan PHP 53Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 59. <?php$situsspammer = "Silahkan <u>berkunjung</u> ke <a href=http://www.tokosandaljepit.com> Toko Online Sandal Jepit<strong>Aneka Warna</strong></a>";$filterlink = strip_tags($situsspammer, "<strong><u>");echo $filterlink;?>Dan silahkan save lalu lihat hasilnya di browser anda. strip_tags() memfilter hanya tagyang didefiniskan saja yang ditampilkan.Format penggunaan strip_tags adalah sebagai berikut :strip_tags(kalimat yang akan di filter, tag yang boleh ditampilkan)Sehingga pada contoh kasus ini, diluar dari tag <strong> dan <u> maka tag tersebut tidakditampilkan.Memecah string ke dalam array dengan explode() Bagaimana cara untuk memecah string, menjadi kumpulan elemen dalam array?Dengan cara menggunakan explode(). String yang berisi kata-kata akan dipecah,sehingga menjadi array-array, yang nantinya digunakan untuk kebutuhan tertentu.Sebagai contoh :<?php$belajar = "saya sedang belajar bahasa pemrogaman PHP";$arraybelajar = explode(" ", $belajar);echo $arraybelajar[5];?>sedikit saya jelaskan, explode() menjadikan spasi sebagai pemisah antara elemen arrayyang satu dengan lainnya, sehingga apabila terdapat spasi maka kata-kata tersebut akandi pecah sehingga menjadi array. Contoh lainnya<?php$tanggal = "03/Maret/1924";$tanggalarray = explode("/", $tanggal)echo $tanggalarray[2];?>Bab2: Bekerja dengan PHP 54Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 60. Menggabungkan array menjadi satu kesatuan dengan implode()Jika explode bertugas untuk memecah menjadi elemen array, implode berfungsisebaliknya, yakni menggabungkan array menjadi satu string, contohnya adalah sepertiini:<?php$arraybelajar = array("saya", "sedang", "belajar", "bahasa","pemrogaman", "PHP");$kalimatbelajar = implode(" ", $arraybelajar);echo $kalimatbelajar;?>simple and easy. right? Contoh yang lain :<?php$arraytanggal = array(03, "Maret", 1924);$tanggal = implode("-",$arraytanggal);echo $tanggal;?>Array yang berbeda tipe datanya dapat di satukan menjadi satu kesatuan string denganmenggunakan implode(). Mudah kan?Mencari Posisi Suatu Karakter Dengan Strpos()Untuk mencari posisi suatu karakter atau string anda dapat menggunakan strpos().Contohnya adalah sebagai berikut :Misalkan anda ingin mencari posisi kata PHP, dari kalimat saya sedang belajar PHP.<?php$kalimat = "Saya sedang belajar PHP";$katayangdicari = "PHP";$posisi = strpos($kalimat, $katayangdicari);echo $posisi;?>Menampilkan sebagian isi string dengan substr() Anda dapat menampilkan sebagian isi dari suatu string, mungkin bagi anda yangpernah membuka suatu situs biasanya di awal situs ditampilkan intro dari suatu artikel,Bab2: Bekerja dengan PHP 55Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 61. dengan keterangan read more, atau baca selengkapnya, hal ini menggunakan substr(),atau untuk memfilter nomor hp, dengan cara tidak menampilkan kesuluruhan nomornya,kemudian diganti dengan karakter xxx, dan lain sebagainya.Cara penulisannya adalah seperti ini.substr(kalimat, nilai awal, nilai akhir atau range )contohnya :<?php$kalimat = "saya sedang mengetik menggunakan keyboard, guna mempelajaribahasa PHP";$potongkalimat = substr($kalimat, -3);echo $potongkalimat ;?>substr($kalimat, -3) di sini berarti, tampilkan sebagian isi variable kalimat yakni 3karakter dari belakang. Dan hasilnya adalah seperti ini ...PHPcontoh yang lain :<?php$kalimat = "saya sedang mengetik menggunakan keyboard, guna mempelajaribahasa PHP";$potongkalimat = substr($kalimat, 0, 41);echo $potongkalimat ;?>kita lihat hasilnya di browser adalah seperti ini ...saya sedang mengetik menggunakan keyboardIni berarti script ini memiliki fungsi untuk menampilkan mulai dari karater dari posisi 0dengan range 40 karakter didepannya, contoh yang lain :<?php$kalimat = "saya sedang mengetik menggunakan keyboard, guna mempelajaribahasa PHP";$potongkalimat = substr($kalimat, 5, 6);echo $potongkalimat ;?>Bab2: Bekerja dengan PHP 56Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 62. Lihat hasilnya di browser, script ini berfungsi menampilkan sebagian isi darivariable $kalimat, substr($kalimat, 5, 6); berarti, menampilkan mulai dari posisi 5, danrangenya 6 karakter, dimulai dari posisi 5 itu sendiri. Sehingga pada posisi 5 ada huruf s,dan rangenya 6 karakter adalah s,e,d,a,n,g sehingga yang diambil adalah kata sedang.Menimpa karakter dengan karakter yang lain dengan str_replace() Bagaimana jika anda ingin melakukan manipulasi dari suatu string. Misalkan inginmenimpa suatu kata dengan kata yang lain, misalkan mengubah kata bermain dalamkalimat "saya sedang bermain" menjadi "saya sedang belajar". Anda dapatmemanfaatkan str_replace(); contoh penggunaanya adalah seperti inistr_replace("kata/karakter asli", "kata/karakter yang baru","kalimat");implementasinya<?php$kalimat = "saya sedang bermain";$kalimatbaru = str_replace("bermain", "belajar", $kalimat);echo $kalimatbaru ;?>dan hasilnya adalah :saya sedang belajarManipulasi string dengan trim() trim() digunakan untuk menghilangkan spasi, dikiri atau dikanan, biasanyadigunakan untuk proses pengolahan inputan username dan password yang dilakukan olehuser, biasanya ini terjadi ketika user tidak sengaja/lupa menekan tombol spasi dikeyboard, untuk menanganinya anda dapat menggunakan trim()contoh penggunaanya :<?php$password = " iniadalahpassword ";$passwordasli = trim($password);echo $passwordasli;?>hasil dari script di atas adalah spasi akan hilang. Anda pun dapat menghilangkan spasi diBab2: Bekerja dengan PHP 57Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 63. kiri dengan ltrim(), dan dikanan dengan rtrim();Bab2: Bekerja dengan PHP 58Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 64. 2.12 Syntax Alternatif untuk PHP2.12.1 Alternatif echo Kita biasa menggunakan echo untuk proses menampilkan isi dari suatu variable,sebetulnya ada alternatif dalam php untuk menampilkan isi dari suatu variable, andadapat menggunakan print, namun proses print sedikit lebih lama dari echo. Meskipuntidak terasa karena kecepatan komputer yang sudah sedemikian canggih, tapi tetap prosesprint memakan waktu 15% sedikit lebih lama dari echo.Contoh penggunaan print sama dengan echo :<?phpprint "menampilkan kalimat";?> Namun para web developer cenderung menggunakan echo ketimbang print. Bukankarena kecepatan. Tapi karena web developer lebih malas mengetik 5 huruf ketimbang 4huruf. :d aneh ya? Tapi memang itu faktanya.2.12.2 Double Quote dan One Quote Apa perbedaan antara double quote yang diwakili dengan tanda " dengan one quoteyang di wakili oleh tanda One quote hanya dapat menampilkan karakter aslinya, bukanisi dari variable. Kita buktikan :<?php$nilai = 90;echo $nilai;?>Apabila kita lihat dibrowser, one quote, atau kutip satu itu tidak menampikan isi dari$nilai, melainkan karakter aslinya. Namun dengan double quote anda dapat menampilkanisi variablenya :<?php$nilai = 90;echo "$nilai";?>mungkin kedepannya anda akan memproses kutip dua didalam kutip dua, sepertimenyisipkan html di dalam echo. seperti ini misalnya :Bab2: Bekerja dengan PHP 59Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 65. <?phpecho "<a href="http://www.ilmuwebsite.com">Ilmuwebsite.com</a>";?>mari kita lihat di browser, hasilnya adalah error. bagaimana agar kita dapat menggunakantanda kutip dua, didalam kutip dua? Solusinya adalah menggunakan spesial karater .Kita buktikan :<?phpecho "<a href="http://www.ilmuwebsite.com">Ilmuwebsite.com</a>";?>Bab2: Bekerja dengan PHP 60Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 66. 2.13 Bekerja dengan File Di sub bab ini akan saya jelaskan bagaimana kita bekerja dengan file. mulai darimembuka file, menutup file mengecek apakah file tersebut ada, kemudian menulis isifile, ataupun menghapus file. itu semua akan saya jelaskan di sini.Mengecek File Untuk mengecek file, ada atau tidaknya file tersebut dalam direktori/path yangditentukan, biasanya seorang web developer cukup menggunakan fungsi file_exist(),untuk mengecek apakah file tersebut ada. Siapkan terlebih dahulu sebuah file kosong di c:xampphtdocslatihanphpberikan nama tes.txt, kemudian selanjutnya silahkan buat script php nya seperti ini :<?php if (file_exists("tes.txt") == 1) { echo "File-nya ada..."; } else { echo "Filenya tidak ada ..."; }?>file_exits("tes.txt") akan mengecek apakah file nya ada atau tidak, jika bernilai 1, makaakan di tampilkan "File-nya ada..."; jika bernilai 0, maka akan ditampilkan filenya tidakada. Atau bisa juga di tulis seperti ini, tidak menggunakan operator perbandingan ==.<?php if (file_exists("tes.txt")) { echo "File-nya ada..."; } else { echo "Filenya tidak ada ..."; }?>Bab2: Bekerja dengan PHP 61Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 67. Apakah File atau Direktori?? Untuk mengecek apakah file ataukah direktori terhadap nama file atau direktori kitadapat menggunakan is_file untuk mengecek file atau bukan dan is_dir untuk mengecekdirektori atau bukan. Implementasinya masih menggunakan file yang tadi yakni tes.txt:<?phpif (is_file("tes.txt")) { echo "Ini adalah file!"; }?>Untuk mengecek direktori atau bukan, silahkan anda buat sebuah direktori dengan namadirektorites di dalam c:xampphtdocslatihanphp.Kemudian untuk mengecek direktorites itu adalah direktori atau bukan anda dapatmengetikan script memanfaatkan fungsi is_dir()<?phpif (is_dir("direktorites")) { echo "Ini adalah direktori!"; }?>Membuat dan menghapus file Untuk membuat file, anda dapat menggunakan fungsi touch(), dan untukmenghapus file yang ada, anda dapat menggunakan fungsi unlink(); implementasinyaadalah seperti ini, script untuk membuat file :<?phptouch("filecontoh.txt");if (file_exists("filecontoh.txt")) { echo "File sudah ada!"; }?>Bab2: Bekerja dengan PHP 62Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 68. Lihat hasilnya di browser anda. Untuk menghapus file yang sudah ada, anda dapatmenggunakan unlink().Implementasinya, kita menggunakan file yang telah kita buat sebelumnya, yaknimencoba untuk menghapus filecontoh.txt<?phpif (file_exists("filecontoh.txt")) { echo "Filennya ada!<br/>"; }// menghapus fileunlink("filecontoh.txt");// mengecek kembali keberadaan filenyaif (file_exists("filecontoh.txt")) { echo "File sudah ada!"; }else { echo "File sudah tidak ada ... "; }?>Membuka FileAda beberapa fungsi untuk membuka file, mulai dari membuka file saja, kemudian adajuga fungsi yang dapat membuka kemudian lalu menulis isi file, ada juga fungsi untukmembuka file sambil menulis, dan lain-lain.Membuka file saja anda dapat menggunakan syntax :$fp = fopen( NAMA_FILENYA, r );dengan fungsi fopen(), dan paramater r di dalamnya, r disini hanya hanya dapat membukafile saja dan meletakkan pointer atau kursor di awal file.Membuka/membaca file kemudian menulis file tersebut anda dapat menggunakan syntax:$fp = fopen( NAMA_FILENYA, r+ );Bab2: Bekerja dengan PHP 63Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 69. parameter r+ ini memungkinkan kita membaca file kemudian menulisi file tersebutdengan meletakkan kursor atau pointer pada awal file.Menulis file saja anda dapat menggunakan syntax :$fp = fopen( NAMA_FILENYA, w );parameter w memungkinkan anda dapat menulis file, dengan meletakkan kursor di awalfile.Membaca dan menulis file sekaligus anda dapat menggunakan syntax seperti ini :$fp = fopen( NAMA_FILENYA, w+ );parameter w+ memungkinkan anda dapat membaca dan menulis file, dengan meletakkankursor di awal file.Menulis file saja anda dapat menggunakan syntax :$fp = fopen( NAMA_FILENYA, a );parameter a memungkinkan anda dapat menulis file, namun meletakkan kursor di akhirfile.Membaca dan menulis file sekaligus anda dapat menggunakan syntax seperti ini :$fp = fopen( NAMA_FILENYA, a+ );parameter w+ memungkinkan anda dapat membaca dan menulis file, namun phpmeletakkan kursornya di akhir file.Membaca File dengan feof() dan fgets()Oke kita akan coba langsung mengimplementasikan fopen(), feof(), dan fgets() secarabersamaan untuk membaca isi suatu file.Implementasinya adalah seperti ini:<?php$file = "tes.txt";$fileopen = fopen($file, r) or die ("Nggak bisa di baca");while (!feof($fileopen)) { $bariskalimat = fgets($fileopen, 1024);Bab2: Bekerja dengan PHP 64Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 70. echo $bariskalimat."<br>"; }?>hal yang pertama di lakukan adalah membuka file tersebut dengan fopen($file, r), r ituparameter untuk membaca saja dan meletakkan kursor atau pointer di awal dari file. Jikafile tidak bisa dibaca akan muncul error dengan peringatan "Nggak bisa dibaca".while (!feof($fileopen)) memiliki fungsi untuk mengecek apakah pointer atau kursornyaberada pada akhir file. parameter r pada fopen meletakkan kursor di awal, dan while(!feof($fileopen)) akan terus mengecek apakah kursornya sudah sampai akhir file, jikasudah sampai akhir file maka pengulangan akan berhenti.$bariskalimat = fgets($fileopen, 1024);berfungsi untuk mengambil isi dari file baris demi baris menggunakan memory 1024 bytekemudian di tampilkan dengan ;echo $bariskalimat."<br>";ilustrasinya adalah seperti ini ... logika membuka fileparamater r, pada fopen($file, r) berfungsi untuk meletakkan kursor di awal dari file.feof mengecek apakah sudah berada di akhir file ...fgets mengambil isi file dan mengambil baris pertama ...fopen kemudian mengcek apakah sudah berada di akhir file?fgets mengambil isi file dan mengambil baris kedua...fopen kemudian mengcek apakah sudah berada di akhir file?jika fopen mengecek sudah berada pada baris akhir maka pengulangan berhenti.Menulis atau menambahkan isi file dengan fputs()Untuk menulis isi file anda dapat menggunakan fputs(). Untuk dapat menggunakanfputs() anda harus membuka filenya terlebih dahulu, dengan fopen(), kemudian gunakanfputs(), setelah itu baru tutup file dengan fclose();Implementasinya adalah seperti ini :<?phpBab2: Bekerja dengan PHP 65Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 71. $file = fopen("tes.txt", a); fputs($file, "Welcome to the jungle"); fclose($file);?>Parameter a pada fopen("tes.txt", a); berfungsi untuk menambahkan isi file di bagianakhir. Jika anda menggunakan w atau r, maka isi file akan dihapus kemudian di timpahdengan yang baru. Jika anda ingin menambahkannya di akhir maka gunakan a.Mudah sekali bukan?Bab2: Bekerja dengan PHP 66Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 72. 2.14 Bekerja dengan Date & TimeOke, kita sudah berada dalam akhir dari bab 2, di sini saya akan menjelaskan bagaimanamenggunakan Date & Time dalam PHP. PHP menyediakan fungsi-fungsi untukmenampilkan penanggalan dan waktu. Fungsi-fungsi tersebut dapat mengembalikantanggal dan waktu sesuai dengan yang kita butuhkan.Berikut adalah table penanggalan dan waktu disertakan dengan penjelasannya.a -> am atau pmA -> AM atau PMd -> TanggalD -> Nama hari dalam semingguF -> Nama bulang -> jam 1 sampai 12 (1..12)G -> jam 1 sampai 23 (0..23)h -> jam 1 sampai 12 (01..12)H -> jam 1 sampai 23 (OO..23)i -> menitj -> Tanggall -> Nama Harim -> Bulan (dalam angka)M -> Bulan (singkatan dari nama bulan)n -> Nama bulan (1..12)O -> waktu greenwicjr -> format RFC 822 (Sun, 25 Agustus 2002 16:01:07+0200s -> detik (00..59)T -> Timezone (DMT)y -> tahun dalam dua digitY -> tahun dalam empat digitz -> hari ke x dari tahuncontoh implementasi dari date & time adalah seperti ini untuk mengetahui tanggal berapasekarang :<?phpecho date("d");?>Bab2: Bekerja dengan PHP 67Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 73. untuk contoh yang lebih kompleks lagi ...<?phpecho "Sekarang waktu menunjukkan pukul ", date("H:i A"), "<br>", date("l, d F Y"), "<br>Hari ke : ", date("z"), " dari tahun ", date("Y");?>Bab2: Bekerja dengan PHP 68Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 74. Bab 3:Menggunakan PHPdengan MySQL3.0 Mengenal MySql Sebelum lebih jauh dengan mysql, terlebih dahulu kita harus mengetahui apa itumysql. sebagai intermezo saya akan coba ceritakan sekelumit mengenai mysql. Berbicaramengenai mysql, tidak lepas dari berbicara mengenai sql (structured query language)yakni bahasa yang berisi perintah-perintah untuk memanipulasi database, mulai darimelakukan perintah select untuk menampilkan isi database, menginsert ataumenambahkan isi kedalam database, mendelete atau menghapus isi database danmengedit database. Beberapa sistem database yang menggunakan sql diantaranya ada Ms. Access,MsSQL Server, Oracle, PostgresSQL, DB2, MySQL, Interbase dan lain sebagainya ... Untuk menjadi seorang web developer yang handal, anda harus menguasai perintah-perintah sql. Meskipun tidak mutlak, tapi saya sangat menganjurkan anda untukmnguasai perintah mysql untuk memudahkan dalam developer aplikasi nantinya. Secaragaris besar berbagai sistem database menggunakan bahasa yang sama untukmemanipulasi isi dalam database. Sama-sama menggunakan bahasa sql.Bab 3: Menggunakan PHP dengan MySQL 69Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 75. Kenapa memilih mysql?? MySQL itu merupakan salah satu sistem database yang menggunakan sql. MySQlpun dapat digunakan secara langsung dengan mengetikkan perintah atau syntaxnyamelalui console. Dan bisa juga digunakan secara embeded SQL, artinya anda dapatmenggunakan perintah sql dengan menyisipkannya kedalam bahasa pemgrogamantertentu, PHP misalnya. Sampai saat ini PHP dan MySQL merupakan kombinasi yangmenakjubkan. Hingga dalam kurun waktu kurang dari 20 tahun. PHP dan MySQL sudahmendominasi dunia internet khususnya web development untuk web dinamis yangpowerfull. Bahkan bisa dibilang, internet sebagian besar terdiri dari PHP dan MySQL.Salah satu alasan mengapa ini terjadi adalah, kedua paket tersebut bersifat open source.Sejarah MySQL Berawal dari proyek yang dimulai oleh kedua orang developer, yakni Michael Widenius dan David Axmark di tahun 1994. Pada awalnya mysql Di develop menggunakan bahasa C dan C++. Lagi-lagi proyek ini didasari karena ingin membuat suatu sistem database yang murah, meskipun ketika itu ada database yang powerfull yakni oracle, namun database ini bersifat komersil yang harganya super mahal , dan begitu menguasai pasar. Dan akhirnya MySQL dirilis pertama kali pada 23 Mei 1995. Mysql begitu diminati oleh banyak orang, karena kemudahan installasi, kemudahan pemakaian sudah seperti database komersil dengan sistem RDBMS, sistem yang memungkinkan interkoneksi antara satu tabel dengan tabel lainnya, sistem ini benar-benar effisien. Pada 8 Januari 1998 MySQL dirilis untuk versi Windows 95 dan NT Ini menjadikan mysql itu sebagai sistem database yang low end. artinya user biasa pun dapat menggunakan mysql ini tanpa membutuhkan server tambahan. Benar- benar suatu terobosan yang membuat mysql semakin diminati banyak orang. Versi 3.23 beta nya di terbitkan pada Juni 2000, dan versi stabilnya dirilis pada januari 2001. Versi 4.0 beta nya di terbitkan pada Agustus 2002, dan versi stabilnya dirilis pada Maret 2003. Dalam dirils kali ini mysql sudah mengincludekan unionnya,Bab 3: Menggunakan PHP dengan MySQL 70Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 76. yang memungkin satu dengan table lain dapat saling join, dan ditampilkan dalam satu tabel. Versi 4.1 beta nya di terbitkan pada Juni 2004, dan versi stabilnya dirilis pada Oktober 2004. Dalam versi ini mysql mengincludekan R-trees and B-trees, subqueries, prepared statements. Versi 5.0 beta nya di terbitkan pada Maret 2005, namun versi stabilnya dirilis pada Oktober 2005 cursors, stored procedures, triggers, views, XA transactions Versi 5.1: currently pre-production (since November 2005) (event scheduler, partitioning, plugin API, row-based replication, server log tables). Sun Microsystems acquires MySQL AB on 26 February 2008 Tahun 2009, 11 milyar server di internet telah menginstall mysql sebagai default sistem databasenya. MySQL kini merupakan database yang sangat powerfull. Bahkan google sudah meracik MySQL sehingga menjadi database pencarian milik google. MySQL menjadi sangat hebat. Saat ini.Bab 3: Menggunakan PHP dengan MySQL 71Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 77. 3.1 Struktur dan Syntax MySQLStruktur MySQLMySQL Sama dengan bahasa pemrogaman lainnya yang juga sama-sama memiliki tipedata.Tipe Data Stringchar, memiliki panjang 255varchar, memiliki panjang 255tinytext, memiliki panjang 255text, tidak terbatasmediumtext, 1 jutalongtext, 4 MilyarTipe Data Numerikint, -2 M sampai dengan 4 Mtinyint, -128 sampai dengan 255mediumint, -8 Juta sampai dengan 8 Jutabigint, -92 Triliyun sampai dengan 92 Triliyunfloat, bilangan desimal positif, bilangan real, memiliki koma-komaan ...double, bilangan desimal negatif dan positif, dan memiliki koma-komaan ...Tipe Data Date dan TImedate, hanya memuat tanggal saja, dengan formatnya seperti ini tahun-bulan-tanggaltime, hanya memuat waktu saja, formatnya HH:MM:SS (Jam:Menit:Detik)datetime, memuat tanggal dan waktu, formatnya Tahun-Bulan-Hari Jam:Menit:Detikyear,Tipe KeyPrimary Key, Kunci yang menghubungkan antara 1 table dengan table lainnyaAuto IncrementAuto Increment menyebabkan pertambahan nilai urutan secara otomatis, suatu recordmemiliki nilai 1, kemudian jika ada record yang lain lagi di insertkan ke dalam database,maka urutannya akan menjadi 2 dan begitu seterus-seterusnya ....Bab 3: Menggunakan PHP dengan MySQL 72Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 78. Syntax MySQL Pada bagian ini akan saya akan coba jelaskan beberapa syntax MySQL yang seringdigunakan dalam membuat website, maupun aplikasi-aplikasi berbasis website, baikdalam melakukan pembuatan database, penambahanisi database, untuk menghapus isidatabase, ataupun untuk menghapus database itu sendiri. Syntax yang kita gunakanadalah : create select use insert show update drop delete alterdibagian ini saya baru akan menjelaskan teorinya saja, di subbab selannjutnya akan sayajelaskan secara praktiknya.Createini digunakan untuk membuat database maupun table. Database yang memiliki sistemRDBMS di mana telah saya terangkan di awal bab ini, bahwa RDBMS itu sistemdatabase yang berisi informasi dalam bentuk table-table yang saling berkaitan. Jadilangkah awal dalam membuat database adalah menggunakan fungsi create; syntaxnyaseperti ini :create namadatabase;untuk membuat table syntaxnya seperti ini :create table(field1(ukuran), field2(ukuran), ...)UseIni digunakan untuk menggunakan database yang telah dibuat sebelumnya, yang nantinyadatabase ini akan di edit atau di modifikasi.syntaxnya itu seperti ini :use namadatabase;DropIni digunakan untuk menghapus database ataupun table yang ada. Syntaxnya adalahseperti ini :Bab 3: Menggunakan PHP dengan MySQL 73Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 79. drop database;untuk menghapus table gunakan :drop namatable;AlterAlter ini akan dijelaskan secara terperinci di subab selanjutnya yang membahas membuatdatabase membuat table, dan mengedit keduanya. Alter berfungsi untuk memodifikasitable yang telah di buat, modifikasi nya seperti menambahhkan field, mengganti size darisuatu field, menghapus field, dan mengganti nama field.Sebagai contoh untuk mengganti size dari suatu field adalah seperti ini :alter table mahasiswa change nama nama_mahasiswa varchar(75)ini berarti, ganti tipe dari field nama menjadi nama_mahasiswa dengan tipe varchar ygmemiliki ukuran 75SelectDi gunakan untuk menampilkan isi dari suatu table, bisa dengan kriteria tertentu bisa jugadapat menampilkan keseluruhan tanpa adanya kriteria. Penggunaan standarnya sepertiini:select * from nama_tablePenggunaan ketika ingin menampilkan berdasarkan kriteria adalah seperti ini :select * from nama_table where field=kriteriaUntuk menampilkan nilai terbanyak :select max(field) from tablenyaUntuk menjumlah isi record salah satu field dari suatu table :select sum(field) from tablenyauntuk menghitung berapa jumlah record yang ada dari suatu table :select count(*) from tablenyaBab 3: Menggunakan PHP dengan MySQL 72Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 80. Insertinsert ini digunakan untuk mengisi record suatu table, syntaxnya seperti iniinsert into nama_table(field1, field2, ...) values(nilai1, nilai2, ...)contoh penggunaanya seperti ini :insert into mahasiswa(nama, nilai) values(Loka Dwiartara,B);ini berarti masukkan kedalam table mahasiswa, kedalam field id berisi Loka Dwiartara,dan kedalam field nilai berisi B.Updatedigunakan untuk memperbarui isi dari suatu record, syntaxnya seperti ini :update nama_table set field=nilaibaru where field=kriteriacontoh penggunaannya adalah seperti ini :update mahasiswa set nilai=A where nama=Loka Dwiartara;ini berarti perbarui atau update table mahasiswa ganti nilainya menjadi A dari mahasiswabernama Loka Dwiartara.Deletedigunakan untuk menghapus suatu record dari suatu table penggunaannya seperti ini :delete from namatable where field=kriteria;Oke, saya telah menjelaskan semua fungsi dari syntax mysql, kita akan coba praktikansemuanya.Bab 3: Menggunakan PHP dengan MySQL 73Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 81. 3.2 Membuat Database, membuat table Dalam membuat suatu aplikasi berbasis web, dibutuhkanlah database yang dapatmenyimpan data-data yang nantinya di oleh untuk dijadikan informasi yang bermanfaat.Sebelumnya kita telah belajar bagaimana membuat database, di sini kita akan praktikansemuanya, mulai dari membuat database. Tapi sebelum membuat database kita pastikan terlebih dahulu apakah servicesmysqlnya telah running melalui xampp control panel. Setelah semuanya berjalan, kita akan coba masuk kedalam start | run | cmd.Kemudian masuk ke direktori :c:xamppmysqlbindengan cara :cd c:xamppmysqlbin Gambar 3.1 (Dos 1)kemudian ketik :mysql -u rootBab 3: Menggunakan PHP dengan MySQL 74Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 82. Gambar 3.2 (Dos 2)Sehingga nanti akan tampil : Gambar 3.2 (Dos 2) Oke berhasil, kita akan buat satu buah database bernama mahasiswa, kenapamahasiswa? karena nantinya database ini kita akan kembangkan menjadi suatu sisteminformasi yang cukup besar, dan akan saya jelaskan bagaimana membuat suatu sisteminformasi berikut membuat blog dengan data-data mahasiswa. Oke kita akan buat database, cara nya seperti (cukup ketik yang di cetak tebal saja):mysql> create database mahasiswa ;Bab 3: Menggunakan PHP dengan MySQL 75Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 83. Kemudian kita akan menggunakan database tersebut untuk di buat table nya. Caranyaseperti ini :mysql> use mahasiswa;lalu untuk melihat database tersebut sudah memiliki table apa saja, kita cukup gunakansyntaks seperti ini :mysql> show tables; Gambar 3.3 (Dos 3)kita buat table-nya contohnya :strukturnya seperti ini :nama table : tbl_mhsiswa field tipe size id_mhs int 5 nama_mhs varchar 50 jenis_kelamin varchar 10 tgl_lahir date - alamat varchar 200Bab 3: Menggunakan PHP dengan MySQL 76Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 84. Kita lihat disini id_mhs nya adalah int yakni hanya untuk bilangan bulat saja, danbesarnya adalah 5, ini mengartikan bahwa maksimal jumlah mahasiswa adalah sebanyak5 digit, yakni 99.999 record mahasiswa id_mhs ini berfungsi sebagai penomoran darimahasiswa, urutan mulai dari 1 hingga sekian. Selanjutnya ada nama_mhs, bertipe varchar, karena mahasiswa itu terdiri huruf,memiliki ukuran 50 ini digunakan sebagai perwakilan nama mahasiswa, seperti misalnyaLoka Dwiartara terdapat 14 digit huruf, dan asumsi saya adalah paling banyak itunama orang adalah berjumlah 50. Misalnya ... "Sukaryo Mangunkusumo SungTolodoMakan Cokor Kebo" berjumlah 49 digit huruf, termasuk spasi didalamnya. Begitu juga dengan jenis_kelamin dan alamat, namun untuk tgl_lahir, kitamenggunakan tipe nya date. date sudah otomatis berisi 10 digit, bentuk defaultnyaadalah seperti ini 0000-00-00 sehingga jika menulis 24 Januari 1987 adalah seperti ini1987-01-24. Oke anda mengerti? kita lanjut, untuk merubah struktur di atas menjadi query mysqlbentuknya seperti ini :create table tbl_mhsiswa (id_mhs int(5) primary key auto_increment, nama_mhsvarchar(50), jenis_kelamin varchar(10), tgl_lahir date, alamat varchar(200));tampilannya ... Gambar 3.3 (Dos 3)Kita lihat di sini, id mhs int(5) primary key auto_increment ini berarti id_mhs ini akan dijadikan sebagai index dari tbl_mhsiswa, dan auto_increment berfungsi membuat noBab 3: Menggunakan PHP dengan MySQL 77Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 85. urut secara otomatis, sehingga hasil akhirnya adalah mulai dari 1, 2, 3, 4 dan seterusnya.Untuk melihat apakah table yang sudah di buat sudah ada kita jalankan perintah :show tables;mysql> show tables;+---------------------+| Tables_in_mahasiswa |+---------------------+| tbl_mhsiswa |+---------------------+1 row in set (0.01 sec)mysql>Kemudian bagaimana jika kita ingin melihat isi dari table yang sudah di buat :select * from tbl_mhsiswa;mysql> select * from tbl_mhsiswa;Empty set (0.00 sec)mysql>setelah membuat table, kadang anda mungkin tidak sreg dengan nama tablenya, anda bisamerubah namanya dengan syntax alter ; caranya seperti ini :alter table tbl_mhsiswa rename tbl_mahasiswa;mysql> alter table tbl_mhsiswa rename tbl_mahasiswa;Query OK, 0 rows affected (0.01 sec)mysql>kemudian lakukan show tables;show tables;mysql> show tables;+---------------------+| Tables_in_mahasiswa |+---------------------+| tbl_mahasiswa |+---------------------+1 row in set (0.00 sec)mysql>dari tbl_mhsiswa kemudian di rubah menjadi tbl_mahasiswa, kita coba kembalikanBab 3: Menggunakan PHP dengan MySQL 78Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 86. seperti nama table yang awal :alter table tbl_mahasiswa rename tbl_mhsiswa;mysql> alter table tbl_mahasiswa rename tbl_mhsiswa;Query OK, 0 rows affected (0.03 sec)mysql>kemudian show tables; kembali :show tables;mysql> show tables;+---------------------+| Tables_in_mahasiswa |+---------------------+| tbl_mhsiswa |+---------------------+1 row in set (0.00 sec)mysql>misalkan kita ingin menambahkan field yang tadinya cuma id_mhs, nama_mhs,jenis_kelamin, tgl_lahir, alamat, sekarang kita akan menambahkan dengan satu fieldbaru misalnya status, caranya adalah:alter table tbl_mhsiswa add column status varchar(30);mysql> alter table tbl_mhsiswa add column status varchar(30);Query OK, 0 rows affected (0.13 sec)Records: 0 Duplicates: 0 Warnings: 0mysql>ini berarti tambahkan field status dengan tipe varchar dan memiliki ukuran 30 kedalamtbl_mhsiswa. Ada contoh lain misalkan kita ingin merubah nama dan ukuran dari suatufield, ingin di perbesar ukurannya atau ingin di perkecil kita cukup menggunakanperintah seperti ini :alter table tbl_mhsiswa add change id_mhs id_mahasiswa int(10);mysql> alter table tbl_mhsiswa change id_mhs id_mahasiswa int(10);Bab 3: Menggunakan PHP dengan MySQL 79Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 87. Query OK, 0 rows affected (0.06 sec)Records: 0 Duplicates: 0 Warnings: 0ini berarti ganti field id_mhs menjadi id_mahasiswa bertipe integer dengan ukuran 10digit.Oke kita kembalikan ke awal :alter table tbl_mhsiswa change id_mahasiswa id_mhs int(5) not null auto_increment;mysql> alter table tbl_mhsiswa change id_mahasiswa id_mhs int(5) not nullauto_increment;Query OK, 0 rows affected (0.08 sec)Records: 0 Duplicates: 0 Warnings: 0Bagaimana caranya jika kita hanya ingin merubah ukurannya saja ? Cara nya seperti ini:alter table tbl_mhsiswa modify id_mhs int(20) not null auto_increment;mysql> alter table tbl_mhsiswa modify id_mhs int(20) not null auto_increment;Query OK, 0 rows affected (0.06 sec)Records: 0 Duplicates: 0 Warnings: 0memodifikasi id_mhs menjadi tipe integer dengan sizenya 20.Dan untuk mengapus field yang ada caranya seperti ini, misalnya kita ingin mendeletefield status :mysql> alter table tbl_mhsiswa drop status;Query OK, 0 rows affected (0.06 sec)Records: 0 Duplicates: 0 Warnings: 0Anda bisa melihat struktur yang ada dengan :mysql> desc tbl_mhsiswa;+---------------+--------------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra |+---------------+--------------+------+-----+---------+----------------+| id_mhs | int(20) | NO | PRI | NULL | auto_increment || nama_mhs | varchar(50) | YES | | NULL | || jenis_kelamin | varchar(10) | YES | | NULL | || tgl_lahir | date | YES | | NULL | || alamat | varchar(200) | YES | | NULL | |+---------------+--------------+------+-----+---------+----------------+5 rows in set (0.11 sec)mysql>Bab 3: Menggunakan PHP dengan MySQL 80Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 88. kita coba isi terlebih dahulu dengan menggunakan perintah insert :mysql> insert into tbl_mhsiswa(nama_mhs, jenis_kelamin, tgl_lahir, alamat)values(Loka Dwiartara, pria, 1987-01-24, Jawa Barat);Query OK, 1 row affected (0.05 sec)mysql>kemudian kita tampilkan lagi isi dari tbl_mhsiswa :mysql> select * from tbl_mhsiswa;+--------+----------------+---------------+------------+------------+| id_mhs | nama_mhs | jenis_kelamin | tgl_lahir | alamat |+--------+----------------+---------------+------------+------------+| 1 | Loka Dwiartara | pria | 1987-01-24 | Jawa Barat |+--------+----------------+---------------+------------+------------+1 row in set (0.00 sec)mysql>kita coba isi kembali dengan record yang lain :mysql> insert into tbl_mhsiswa(nama_mhs, jenis_kelamin, tgl_lahir, alamat)values(Anggie Jatrasmara, pria, 1985-10-29, Jawa Timur);Query OK, 1 row affected (0.00 sec)mysql>tampilkan kembali isinya :mysql> select * from tbl_mhsiswa;+--------+-------------------+---------------+------------+------------+| id_mhs | nama_mhs | jenis_kelamin | tgl_lahir | alamat |+--------+-------------------+---------------+------------+------------+| 1 | Loka Dwiartara | pria | 1987-01-24 | Jawa Barat || 2 | Anggie Jatrasmara | pria | 1985-10-29 | Jawa Timur |+--------+-------------------+---------------+------------+------------+2 rows in set (0.00 sec)mysql>bagaimana jika kita ingin menampilkan record berdasarkan kriteria, misalkan inginmelihat mahasiswa yang alamatnya di jawa barat saja :select * from tbl_mhsiswa where alamat=Jawa Barat;mysql> select * from tbl_mhsiswa where alamat=Jawa Barat;+--------+----------------+---------------+------------+------------+| id_mhs | nama_mhs | jenis_kelamin | tgl_lahir | alamat |Bab 3: Menggunakan PHP dengan MySQL 81Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 89. +--------+----------------+---------------+------------+------------+| 1 | Loka Dwiartara | pria | 1987-01-24 | Jawa Barat |+--------+----------------+---------------+------------+------------+1 row in set (0.08 sec)mudah ya?? apalagi jika anda sering berlatih untuk mengulang perintah-perintah yangtadi. Kita coba isi kembali sebuah record kedalam tbl_mhsiswa :insert into tbl_mhsiswa(nama_mhs, jenis_kelamin, tgl_lahir, alamat) values(DenySarwono, Pria, 1986-12-09,Jawa Barat);mysql> insert into tbl_mhsiswa(nama_mhs, jenis_kelamin, tgl_lahir, alamat)values(Deny Sarwono, Pria, 1986-12-09,Jawa Barat);Query OK, 1 row affected (0.00 sec)tampilkan kembali :select * from tbl_mhsiswa;mysql> select * from tbl_mhsiswa;+--------+-------------------+---------------+------------+------------+| id_mhs | nama_mhs | jenis_kelamin | tgl_lahir | alamat |+--------+-------------------+---------------+------------+------------+| 1 | Loka Dwiartara | pria | 1987-01-24 | Jawa Barat || 2 | Anggie Jatrasmara | pria | 1985-10-29 | Jawa Timur || 3 | Deny Sarwono | Pria | 1986-12-09 | Jawa Barat |+--------+-------------------+---------------+------------+------------+3 rows in set (0.00 sec)mysql>Kita akan coba mendelete mahasiswa yang tanggal lahirnya 1986-12-09 :delete from tbl_mhsiswa where tgl_lahir = 1986-12-09;mysql> delete from tbl_mhsiswa where tgl_lahir = 1986-12-09;Query OK, 1 row affected (0.06 sec)mysql>kemudian untuk membuktikan sudah atau belum didelete cukup lakukan perintah yangtadi, untuk menampilkan isi table:select * from tbl_mhsiswa;Bab 3: Menggunakan PHP dengan MySQL 82Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 90. mysql> select * from tbl_mhsiswa;+--------+-------------------+---------------+------------+------------+| id_mhs | nama_mhs | jenis_kelamin | tgl_lahir | alamat |+--------+-------------------+---------------+------------+------------+| 1 | Loka Dwiartara | pria | 1987-01-24 | Jawa Barat || 2 | Anggie Jatrasmara | pria | 1985-10-29 | Jawa Timur |+--------+-------------------+---------------+------------+------------+2 rows in set (0.00 sec)kita juga bisa melakukan modifikasi record yang ada dengan perintah update, sebagaicontohnya, kita akan coba mengganti Nama Mahasiswa dari Anggie Jatrasmara menjadiJatrasmara :update tbl_mhsiswa set nama_mhs=Jatrasmara where alamat=Jawa Timur;mysql> update tbl_mhsiswa set nama_mhs=Jatrasmara where alamat=Jawa Timur;Query OK, 1 row affected (0.00 sec)Rows matched: 1 Changed: 1 Warnings: 0kita buktikan :select * from tbl_mhsiswa;mysql> select * from tbl_mhsiswa;+--------+----------------+---------------+------------+------------+| id_mhs | nama_mhs | jenis_kelamin | tgl_lahir | alamat |+--------+----------------+---------------+------------+------------+| 1 | Loka Dwiartara | pria | 1987-01-24 | Jawa Barat || 2 | Jatrasmara | pria | 1985-10-29 | Jawa Timur |+--------+----------------+---------------+------------+------------+2 rows in set (0.00 sec)mudah ya??? anda bisa mengulang-ngulangnya kembali.Bab 3: Menggunakan PHP dengan MySQL 83Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 91. 3.3 Bagaimana Php Bekerja Dengan Mysql Bagaimana agar php dan mysql dapat bekerja secara bersama-sama? Jawabannya yadengan cara mengkoneksikan nya terlebih dahulu. Setelah terkoneksi selannjutnya adalahanda dapat memodifikasi database dengan menjadikan perintah-perintah atau syntaxdalam mysql yang tlah di pelajari tadi sebagai query yang ada dalam php. Bingungbukan? Tapi pertanyaan-pertanyaan anda akan clear setelah. Saya jelaskan mengenaisubbab selanjutnya.3.4 Koneksi PHP dan MySQL Untuk melakukan koneksi antara PHP dan MySQL yang perlu dilakukan adalahdengan menggunakan beberapa fungsi dalam php yang sudah disediakan untukmenangani koneksi database, tidak hanya koneksi tapi dalam php pun sudah terdapatfungsi untuk mengupdate, mendelete, menginsert dan seputar fungsi yang dapatmenjalankan syntax-syntax mysql yang telah saya jelaskan pada subbab sebelumnya. Awalnya mungkin memang agak sulit dimengerti bagi anda yang pemula dalamprogramming, tapi jika sering di ulang, saya jamin anda akan cepat mahir. Untuk melakukan koneksi antara php dan mysql sebelumnya terlebih dahulu masukke dalam c:xampphtdocs. Kemudian kita buat sebuah folder dengan nama latihan3,kemudian buat sebuah file dengan nama koneksi.php<?php// untuk dapat mengkoneksikan php kepada mysql// ada 4 informasi yang anda butuhkan,// pertama adalah host ini adalah nama suatu komputer// username, ini merupakan username dari mysql server yang telah terinstal// bersamaan dengan xampp// password sama dengan username// dan database apa yang ingin di koneksikan// defaultnya ketika anda menggunakan xampp maka informasi tersebut berisi// hostnya adalah localhost, usernamenya adalah root, dan passwordnya itu// kosong// sedangkan database yang akan kita koneksikan adalah database mahasiswa yang// telah kita buat sebelumnya// oke langsung saja kita ketikan seperti ini// pertama adalah hostnya $host = "localhost";// kemudian adalah usernameBab 3: Menggunakan PHP dengan MySQL 84Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 92. $username = "root";// lalu passwordnya $password = "";// dan selanjutnya adalah database $database = "mahasiswa";// kemudian untuk mengkoneksikannya caranya adalah dengan fungsi mysql_connect// seperti ini $koneksi = mysql_connect($host, $username, $password);// ini berarti tolong koneksikan php kepada mysql dengan informasi host,// username, dan password// kemudian untuk memilih database yang akan di koneksikan// pilihlah database yang ada dalam koneksi yang sedang berlangsung, jika tidak// bisa maka gagal koneksi// mudah bukan ??? $pilihdatabase = mysql_select_db($database, $koneksi); if ($pilihdatabase) echo "Berhasil"; else echo "Gagal Koneksi";// apabila kita eksekusi di browser, jika koneksi sukses maka tampilannya// "Berhasil"// namun jika terdapat komentar Gagal Koneksi, berarti anda belum berhasil?>Bab 3: Menggunakan PHP dengan MySQL 85Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 93. 3.5 Database Query Setelah berhasil melakukan koneksi, selanjutnya kita akan coba untuk menampilkanisi databse menggunakan php, pada bab 2 saya telah jelaskan secara rinci bagaimanamenggunakan PHP dengan benar, kita akan aplikasikan pada subbab ini. Di sini kita akan coba bagaimana menampilkan isi database menggunakanpengulangan jenis while masuk dulu ke dalam direktori latihan3 yang tadi, kemudianbuat sebuah file dengan nama selectquery1.php Untuk dapat menampilkan isi database, pertama adalah lakukan dulu koneksi, barukemudian jalankan querynya untuk menampilkan isi databasenya.<?phpinclude "koneksi.php";$tampilkan = "select * from tbl_mhsiswa";$query_tampilkan = mysql_query($tampilkan);while($hasil = mysql_fetch_array($query_tampilkan)) { echo $hasil[nama_mhs]."<br />"; }?>mudah bukan??? anda cukup mengulang-ngulang cara ini hingga anda menjadi seorangyang advanced dalam menggunakan query mysql pada php.Kita akan coba menggunakan query yang sama untuk mengambil field yang lain...<?phpinclude "koneksi.php";$tampilkan = "select * from tbl_mhsiswa";$query_tampilkan = mysql_query($tampilkan);while($hasil = mysql_fetch_array($query_tampilkan)) { echo $hasil[nama_mhs]."<br />"; echo $hasil[jenis_kelamin]."<br />"; }?>kita juga dapat melakukan query insert dengana menggunakan php, buat sebuah filedengan nama insertquery.phpBab 3: Menggunakan PHP dengan MySQL 86Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 94. <?phpinclude "koneksi.php";$insert = "insert into tbl_mhsiswa(nama_mhs, jenis_kelamin, tgl_lahir, alamat) values(Deny Sarwono, Pria, 1986-12-09,Jawa Barat);";$insert_query = myqsl_query($insert);if($insert_query) {echo "Berhasil di insert";}else {echo "Gagal Insert Record";}?>selain itu kita juga bisa melakukan query delete dengan menggunakan php, buat sebuahfile dengan nama deletequery.php<?phpinclude "koneksi.php";$delete = "delete from tbl_mhsiswa where tgl_lahir = 1986-12-09;";$delete_query = mysql_query($delete);if($delete_query) echo "Record Telah berhasil di hapuss...";else echo "Record Gagal untuk dihapus..";?>Bab 3: Menggunakan PHP dengan MySQL 87Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 95. 3.6 Menggunakan PHPMyAdminSelain menggunakan mysql yang ada di command prompt, kita juga bisa menggunakanphpmyadmin, sebuah aplikasi berbasis web yang dapat memanage database, untuk dapatmenggunakan phpmyadmin, cukup gunakan browsert internet kesukaan anda, dalam halini saya menggunakan browser mozilla firefox. lalu kita isi alamatnya di address barseperti ini :http://localhost/phpmyadminKita lihat disini, terdapat database yang telah kita buat sebelumnya. yakni databasemahasiswa. Apabila kita klik struktur di bagian sini, maka hasilnya terlihat sama denganyang ada di command prompt mysqlnya. Sama Bukan?Saya akan jelaskan bagaimana membuat database di phpmyadmin, bagaimanamemanagenya melakukan insert record, delete record, manipulasi table dan database.Membuat database dengan phpmyadminBalik ke awal halaman phpmyadmin, kemudian buat satu buah database, dengan namamahasiswa2, caranya cukup gampang tinggal memasukkan namanya, mahasiswa2kemudian tekan tombol Create, cukup mudah ya ??? Gambar 3.2 (Dos 2)Bab 3: Menggunakan PHP dengan MySQL 88Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 96. Membuat table dengan phpmyadminOke dari situ kita coba langsung satu buah table yang strukturnya sama denga tabel yangtelah kita buat sebelumnya, seperti ini : field tipe size id_mhs int 5 nama_mhs varchar 50 jenis_kelamin varchar 10 tgl_lahir date - alamat varchar 200kita coba akan buat, 1 table dengan nama tbl_mhsiswa, dengan 5 field. Sehingga tinggalmasukkan ke dalam phpmyadminnya, nama = tbl_mhsiswa, dan number of fields = 5 Gambar 3.2 (Dos 2)Kemudian klik Go. Beres.Bab 3: Menggunakan PHP dengan MySQL 89Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 97. Bagian-bagian dari phpmyadminJika dalam command prompt mysql, kita bersusah payah untuk merubah struktur suatufield menggunakan perintah-perintah, taapi dengan phpmyadmin kita cukup melakukanklak klik, pekerjaan mudah dilakukan untuk merubah struktur dari suatu table kita cukupmemilih tablenya lalu pilih struktur, disini saya akan jelaskan fungsi dari masing-masingtab.browseberguna untuk menampilkan record yang telah di insertkanstructureuntuk melihat dan memodifikasi struktur table yang ada misalnya kita mengganti fieldnama_mhs, menjadi nama_mahasiswa, begitu juga apabila ingin menambah field, andacukup mengaddnya ...sqlini berfungsi untuk menjalankan custom query, anda bisa menjalankan query mysql disiniinsertinsert ini digunakan untuk menginsertkan record, berisi form-form yang siap andainputkanexportexport digunakan untuk mengeksportkan database, biasanya hal ini kita temukan ketikaingin memindahkan database lokal ke database hosting, untuk dionlinekan. oke sebagaicontoh seperti ini ...importfasilitas import ini digunakan untuk mengimportkan database yang sebelumnya telahdiexportkan import berfungsi untuk merubah query-query mysql kedalam database yangreal.Bab 3: Menggunakan PHP dengan MySQL 90Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 98. Bab 4:Menampilkan DataMenggunakan Table4.1 Mendefinisikan Tabel Heading Dalam proses pembuatan sebuah aplikasi berbasis website, contohnya sisteminformasi, seorang developer aplikasi biasanya banyak menggunakan tabel ketika akanmenampilkan suatu informasi. banyak keuntungan ketika menggunakan tabel, tampilancenderung lebih rapi, dan proses menampilkan jauh lebih mudah. Sebelum kita memanfaatkan tabel, saya akan jelaskan dulu, bagaimana proses tabelini digunakan. Terdapat dua bagian yang akan kita kerjakan, yakni : Bagian Statis Bagian Dinamis Gambar 4.1 (Table Heading)Bab 4: Menampilkan Data Menggunakan Table 91Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 99. Yang di maksud bagian statis adalah heading dari tablenya, seperti : No, Nama,Jenis, Kelamin, Tanggal Lahir, Alamat. Sedangkan yang dibagian bawahnya ContohNo, Contoh Nama, dan lain-lain itu adalah bagian yang dinamisnya. Di mana bagianyang dinamis ini adalah data yang kita ambil dari database. Dalam mengambil data dinamis, php mengambilnya secara per-record/perbaris,sehingga untuk menampilkan datanya pun kita lakukan dengan cara perbaris, okelangsung saja kita buat table headingnya terlebih dahulu. Kemudian kita buattemplate/contoh data ... ini akan mempermudah kita dalam proses penampilan datanantinya, kita kerjakan bagian statis terlebih dahulu dengan membuat file tablehead.php,terlebih dahulu, di sini kita buat html dengan table didalamnya, penulis asumsikan andatelah mengetahui pembuatan table menggunakan html.<html><head><title>Latihan 4 - Table Heading</title></head><body><table border=1 cellpading=2 cellspacing=2 align=centerwidth=70%><tr><th>No</th><th>Nama</th><th>Jenis Kelamin</th><th>TanggalLahir</th><th>Alamat</th></tr><tr><td>Contoh No</td><td>Contoh Nama</td><td>Contoh JenisKelamin</td><td>Contoh Tanggal Lahir</td><td>Contoh Alamat</td></tr></table></body></html>Hasilnya di browser :Bab 4: Menampilkan Data Menggunakan Table 92Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 100. Gambar 4.1 (Table Heading)4.2 Memasukkan Data ke dalam tabel Kita masih menggunakan isi file yang tadi, kita akan membuat bagian yang dinamisdalam menampilkan data, caranya adalah dengan mengambil isinya dari database,sebelum dapat mengambil atau menampilkan data, terlebih dahulu kita lakukan koneksi,kita akan gunakan file koneksi.php yang dibab 3 telah kita buat, kita manfaatkan filetersebut sebagai file koneksi yang akan menghubungkan php dengan mysql sehingga kitabisa menampilkan isinya kedalam table.<html><head><title>Latihan 4 - Table Heading</title></head><body><table border=1 cellpadding=2 cellspacing=2 align=centerwidth=70%><tr><th>No</th><th>Nama</th><th>Jenis Kelamin</th><th>TanggalLahir</th><th>Alamat</th></tr><!--kita akan menampilkan isi databasenya di sini ...dengan memanfaatkan pola contoh data yang telah kita buat sebelumnya--><!-- bagian dinamis --><?php// kita gunakan echo untuk dapat ditampilkan oleh phpecho "<tr align=center><td>Contoh No</td><td>ContohNama</td><td>Contoh Jenis Kelamin</td><td>Contoh Tanggal Lahir</td><td>Contoh Alamat</td></tr>";?><!-- bagian dinamis --></table></body></html>Bab 4: Menampilkan Data Menggunakan Table 93Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 101. Script lengkapnya adalah sebagai berikut :<html><head><title>Latihan 4 - Table Heading</title></head><body><table border=1 cellpadding=2 cellspacing=2 align=centerwidth=70%><tr><th>No</th><th>Nama</th><th>Jenis Kelamin</th><th>TanggalLahir</th><th>Alamat</th></tr><!--kita akan menampilkan isi databasenya di sini ...dengan memanfaatkan pola contoh data yang telah kita buat sebelumnya--><!-- bagian dinamis --><?phpinclude "koneksi.php";$tampilkan_isi = "select * from tbl_mhsiswa";$tampilkan_isi_sql = mysql_query($tampilkan_isi);while ($isi = mysql_fetch_array($tampilkan_isi_sql)){$no = $isi[id_mhs];$nama = $isi[nama_mhs];$jeniskelamin = $isi[jenis_kelamin];$tanggallahir = $isi[tgl_lahir];$alamat = $isi[alamat];echo "<tr align=center> <td>$no</td> <td>$nama</td><td>$jeniskelamin</td> <td>$tanggallahir</td> <td>$alamat</td> </tr>";?><!-- bagian dinamis --></table></body></html>Bab 4: Menampilkan Data Menggunakan Table 94Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 102. Bab 5:Bekerja dengan Form5.1 Menggunakan Form Kita berada dalam topik bahasan yang benar-benar berperan penting dalamdeveloping website, atau developing aplikasi berbasis website. Halaman tanpa form,tidak bisa digunakan untuk menginput, jelaslah itu... Website yang interaktif, menjadikan user dapat berperan aktif misalnya sepertimengisi poling, berkomentar pada suatu artikel, bahkan menginput berita untuk diumumkan ke orang banyak, dan contoh yang lain, dalam suatu sistem aplikasi berbasiswebsite, form merupakan sesuatu yang layak digunakan, karena untuk melakukan suatuinputan itu tidak bisa dilakukan dengan cara yang lain. Di sini saya akan coba jelaskan bagaimana memanfaatkan php dalam memprosesform inputan dari user, pertama yang harus kita buat adalah tampilan form untuk user,kita buat satu buah file dengan nama form1.html kita akan buat sebuah halaman htmlberisi 1 buah form :<html><head><title>Form 1 - Latihan 5</title></head><body>// disini kita akan manfaatkan table untuk membuat form// pertama buat formnya terlebih dahulu<form method="POST" action="process1.php">Bab 5: Bekerja dengan Form 95Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 103. // attribut method berisi POST, ini memiliki arti, lakukan metode// pengiriman, tapi apa yang dikirimkan itu// tidak tampil di url browser// saya akan jelaskan nanti di contoh yang lain, masih dalam sub bab// ini...// namun sementara kita diamkan seperti itu dulu, dengan method POST// untuk action="process1.php" ini berarti kirimkan data-data yang di// input oleh user ke file process1.php// untuk proses selanjutnya// kemudian kita buat layout form nya dengan table<table border=1 width=10% cellpading=1 cellspacing=1align=center>// kita membutuhkan satu input bertipe text, input ini nantinya yang// berperan untuk menerima inputan dari user<tr><td>Name</td><td><input type="text" name="nama" /></td></tr>// kemudian kita membutuhkan input bertipe submit yang berfungsi untuk// mengirimkan datanya ke file action,// dalam hal ini process1.php<tr><td></td><td><input type="submit" name="kirim" value = "kirim" /></td></tr></table>// kemudian jangan lupa untuk menutup formnya</form></body></html>kita lihat hasilnya di browser : Gambar 5.1 (Form1.html)Bab 5: Bekerja dengan Form 96Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 104. Apabila kita isi namanya, kemudian kita klik kirim, yang terjadi adalah ... error. Inidikarenakan kita belum membuat file process1.php. Apabila kita view selection source (nama), input bertipe name itu menghasilkantextbox yang dapat menerima inputan begitu juga dengan input bertipe submit, iniberfungsi untuk mengirim data.Bab 5: Bekerja dengan Form 97Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 105. 5.2 Memproses Form Setelah kita membuat formnya, langkah selanjutnya adalah, buat satu buah file,yakni process1.php, file ini berfungsi untuk menerima inputan, lalu memprosesnya, danmenampilkan yang telah di inputkan, kemudian di dalamnya kita ketikkan ...// kita awali dengan cara mendefinisikan ini adalah script php<?php// untuk mengambil informasi yang telah di kirimkan// kita perlu mengetahui 2 hal,// yang pertama, informasi yang dikirimkan itu menggunakan metode apa// dan yang kedua, untuk menampilkan suatu data, anda perlu melihat// attribut// name, dari suatu input// dalam hal ini kita ingin menampilkan data yang diinputkan melalui// nama,// terlebih dahulu kita// lihat attribut name// dari form yang telah dibuat, (lihat filenya) dan kita lihat, si// input type// text ini// memiliki attribut name yang berisi "nama"// nama inilah yang akan kita gunakan// sehingga kita menampilkan isi yang telah di input dengan// methodnya, kemudian isi attribut name dari input type text// kita cukup menulisnya seperti ini ...echo $_POST[nama];?>kemudian kita lihat hasilnya di browser, pertama masuk kedalam formnya terlebih dahulu... lalu kita isi namanya, dan kita kirim, yang terjadi adalah process1.php menampilkaninputan dari form1.htmlBab 5: Bekerja dengan Form 98Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 106. 5.3 Input Radio Sebelumnya telah kita pelajari bagaimana membuat form inputan dan memprosesinputan tersebut, sekarang kita akan pelajari bagaimana memproses inputan bertipe radioalias pilihan, sebetulnya tidak ada yang berbeda dengan input type text, kita cukupmemanggil attribut namenya saja, oke langsung saja kita buat formnya, dengan namaform2_radiobutton.html terlebih dahulu :<html><head><title>Form 2 Input RadioButton - Latihan 5</title></head><body>// kita akan kirimkan dia ke process2.php, dengan method nya post,<form action="process2.php" method="POST"><table border=1 width=20% cellpadding=1 cellspacing=1 align=center>// kemudian kita buat 2 radio button dengan nama yang sama, namun valuenya// berbeda ...<tr><td>Jenis Kelamin</td><td><input type="radio" name="jenis_kelamin"value="laki-laki"/>laki-laki</td></tr><tr><td></td><td><input type="radio" name="jenis_kelamin"value="perempuan"/>perempuan</td></tr>// kita buat submit atau pengirimnya ...<tr><td></td><td><input type="submit" name="kirim" value="kirim" /></td></tr></table></form></body></html>kemudian kita buat satu buah file, dengan nama prosess2.php, file ini lah yang akanmenampilkan jenis kelamin yang dipilih, kita cukup memakai methodnya, danmengaskses input namenya ...<?phpecho $_POST[jenis_kelamin];?>kita buka formnya :http://localhost/file.latihan.php/latihanbab5/form2_radiobutton.htmlkemudian isi, dan kita submit, lalu lihat hasilnya di browser, ini terjadi karena yangditampilkan itu ada value dari input type radio nya jenis_kelamin. Cukup mudahbukan???Bab 5: Bekerja dengan Form 99Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 107. 5.4 Input Select OptionMenggunakan input select option tidak berbeda dengan radio button, namun hanyaberbeda di struktur htmlnya saja. buat form htmlnya terlebih dahulu ...<html><head><title>Form 3 Input Select Option - Latihan 5</title></head><body>// kita akan mengirimkan dengana method post ke halaman process3.php<form action="process3.php" method="POST"><table border=1 width=20% cellpadding = 1 cellspacing = 1align =center><tr><td>Jenis Kelamin</td><td>// lalu kita membuat input select nya kita beri nama kota<select name="kota">// kemudian kita buat pilihannya// option Bogor dengan valuenya bogor<option value="bogor">Bogor</option>// value nya inilah yang nantinya akan ditampilkan<option value="surabaya">Surabaya</option><option value="yogyakarta">Yogyakarta</option>// kita tutup dengan membuat tag select penutup</select></td></tr>// dan membuat button submitnya<tr><td></td><td><input type="submit" name="kirim" value="kirim" /></td></tr></table></form></body></html>kita cek di browser, oke sudah mantap, selanjutnya kita buat file process3.phpsekali lagi yang kita tuliskan di phpnya adalah methodenya dan nama inputannya<?phpecho $_POST[kota];?>Bab 5: Bekerja dengan Form 100Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 108. 5.5 Input CheckBoxInput type checkbox, dapat digunakan seperti layaknya radiobutton, cukup gunakan namauntuk dapat menampilkan isinya, namun bagaimana jika kita ingin membuat banyakchecklis, dan semua checklis yang terpilih itu di tampilkan ?? disinilah gunanya loopingdan array. Kita buat formnya terlebih dahulu ...<html><head><title>Form 4 Input Checkbox - Latihan 5</title></head><body><form action="process4.php" method="POST"><table border=1 width=20% cellpadding=1 cellspacing=1align=center>// disini ... lalu kita buat checkboxnya, dengan nama sama, namun di// belakang namanya kita// sisipkan dalam kurung kotak seperti ini// sehingga nanti name ini berfungsi sebagai array<tr><td>Status Kelulusan : </td><td><input type="checkbox"name="lulus[]" value="SD"/>SD</td></tr><tr><td></td><td><input type="checkbox" name="lulus[]" value="SMP"/>SMP</td></tr><tr><td></td><td><input type="checkbox" name="lulus[]" value="SMP"/>SMP</td></tr><tr><td></td><td><input type="checkbox" name="lulus[]" value="SMA"/>SMA</td></tr><tr><td></td><td><input type="submit" name="kirim" value="kirim"/></td></tr></table></form></body></html>kemudian kita buat sebuah file php dengan nama process4.php// kita awali dengan tag php<?php// kemudian kita coba dengan// menampilkan isi, dengan memanggil attribut namenya yakni lulusecho $_POST[lulus];?>Bab 5: Bekerja dengan Form 101Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 109. kemudian kita coba di browser, kita pilih 2 saja misalnya, kemudian submit ... apa yangterjadi ?? Array, ini dikarenakan kita menceklis banyak checkbox, sehingga perlu syntaxsendiri untuk dapat menampilkannya, kita akan coba memanggilnya array index 0<?php// kita ganti dengan [0]echo $_POST[lulus][0];?>kita coba lihat di browser, dan ceklis yang paling pertama itu yang ditampilkan, nahsekarang bagaimana jika kita ingin menampilkan semua yang terpilih atau terceklis ?<?php// pertama adalah kita menghitung berapa jumlah checkbox yang// terpilih??$jumlah_terpilih = count($_POST[lulus]);// kita bisa tampilkan berapa yang terpilih dengan memanfaatkan echoecho $jumlah_terpilih ;?>Silahkan kembali ke browser anda, dan lihat hasilnya ?? oke...Langkah selanjutnya adalah kita melakukan looping sebanyak ceklis yang terpilihcaranya?? buka kembali file tadi<?php$jumlah_terpilih = count($_POST[lulus]);// kemudian ganti dengan looping// lakukan pengulangan mulai dari 0, sampai kurang dari jumlah dari// ceklis yang terpilih// kemudian lakukan penambahan satu demi satu sampai pengulangannya// selesaifor ($x=0;$x<=$jumlah_terpilih;$x++) { // kemudian tampilkan isinya dengan menyebut methode, atribut // name, dan arraynya echo $_POST[lulus][$x]; }?>lalu kita lihat di browser, ceklis yang akan di pilih, kemudian kirim, apa yang terjadi,cukup mudah ya??Bab 5: Bekerja dengan Form 102Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 110. 5.6 Perbedaan POST dan GET Apa yang membedakan method post dan get pada suatu form ??? Saya akan cobajelaskan disini, dalam method post seperti praktek-praktek yang sudah kita lakukansebelumnya, apabila kita lihat url halaman diaddress bar kita lihat. Apabila kita klikkemudian disubmit, kita lihat url address barnya, process4.php, url terlihat bersih. dantidak mengandung parameter-parameter lain selain nama filenya. Apa bedanya denganGET ? oke langsung saja kita praktikan, kita gunakan file yang sebelumnyaform4_checkbox.html namun untuk saya sendiri saya melakukan save ulang dengannama form5_checkboxget.html.<html><head><title>Form 5 Input Checkbox - Latihan 5</title></head><body>// namun kita ganti methodnya dari POST menjadi GET<form action="process5.php" method="GET"><table border=1 width=20% cellpadding=1 cellspacing=1align=center><tr><td>Status Kelulusan : </td><td><input type="checkbox"name="lulus[]" value="SD"/>SD</td></tr><tr><td></td><td><input type="checkbox" name="lulus[]" value="SMP"/>SMP</td></tr><tr><td></td><td><input type="checkbox" name="lulus[]" value="SMP"/>SMP</td></tr><tr><td></td><td><input type="checkbox" name="lulus[]" value="SMA"/>SMA</td></tr><tr><td></td><td><input type="submit" name="kirim" value="kirim"/></td></tr></table></form></body></html>kemudian di bagian process5.php dengan mengambil isi dari file sebelumnya yakniprocess4.php kita ganti POST menjadi GET juga<?php$jumlah_terpilih = count($_GET[lulus]);for ($x=0;$x<$jumlah_terpilih;$x++) { echo $_GET[lulus][$x]."<br /> "; }?>Bab 5: Bekerja dengan Form 103Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 111. Dan kita lihat apa yang terjadi ??? url nya jadi lebih panjang, dan memiliki parameter-paramter yang berisi data yang di inputkan, biasanya get ini digunakan dalam fasilitassearch dari suatu website, dan google pun menggunakan method ini dalam pencarian data...Bab 5: Bekerja dengan Form 104Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 112. 5.7 Multiple Submit Multiple submit biasanya digunakan untuk 2 proses yang berbeda, sejauh yang sayatemui, biasanya multiple submit digunakan untuk melakukan edit ataupun delete suatudata, bisa juga untuk mempublish ataupun untuk mengedit suatu artikel, dan lain-lainsebagainya ... di sini saya akan coba jelaskan bagaimana menggunakan multiple submit...untuk melakukan dua proses yang berbeda, contoh kasus disini adalah insert dan update, Ketika input submit insert di klik maka proses insert terjadi, sedangkan jika inputsubmit update di klik maka proses update yang terjadi ....Kita akan gunakan file form1.php, dengan sedikit penambahan di sana sini ....<html><head><title>Form 6 - Latihan 5</title></head><body><form action="process6.php" method="POST"><table border=1 width=10% cellpadding=1 cellspacing=1align=center><caption><strong>Multiple Submit</strong></capion><tr><td>Nama</td><td><input type="text" name="nama" /></td></tr><tr><td>Jenis Kelamin</td><td><input type="radio" name="jenis_kelamin"value="laki-laki"/>Laki-laki<br /><input type="radio" name="jenis_kelamin"value="perempuan"/>Perempuan</td></tr><tr><td>Alamat</td><td><input type="text" name="alamat" /></td></tr><tr><td></td><td>// lalu disini kita akan gunakan dua submit, attribut namenya di isi// sama, namun valuenya yang berbeda...<input type="submit" name="kirim" value="update" /><input type="submit" name="kirim" value="insert" /></td></tr></table></form></body></html>kita lihat di browser, terdapat dua submit, kemudian kita akan membuat 2 proses, ketikatombol update di klik apa yang terjadi dan ketika tombol insert di klik apa yang terjadi ... Oke kita buat satu file dengan nama process6.php, kita akan memanfaatkanBab 5: Bekerja dengan Form 105Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 113. argumen if, else if, dan else, ini kita gunakan untuk kondisional, ketika tombol insert atautombol update di klik maka ada, sesuatu yang terjadi ...<?php// jika tombol kirim yang memiliki value insert di klikif ($_POST[kirim] == "insert"){ echo "Proses Insert...";}// namun jika yang di klik itu tombol update// artinya jika tombol kirim yang memiliki value update di klikelse if ($_POST[kirim] == "update"){// maka lakukan proses update echo "Proses Update...";// lalu kita tutup lagi}// dan jika tidak ada button yang diklikelse{// maka tidak ada proses apa-apa yang terjadi ... echo "Tidak ada proses...";}?>kita lihat di browser, ketika button insert di klik, apa yang terjadi, dan ketika tombolupdate di klik yang terjadi adalah ...Bab 5: Bekerja dengan Form 106Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 114. 5.8 Dasar Input ke database Pada bagian ini akan saya jelaskan kepada anda, dasar bagaimana meninsertkandata ke dalam database data yang di input melalui form. ketika admin atau usermenginputkan data ke form, ketika tombol submit dikirim data yang dikirim itu akan diproses kemudian di masukkan kedalam database, itu semua akan kita pelajari disini ... Contoh kasus yang akan saya jelaskan adalah, bagaimana menggunakan form untukmenginsert data. Untuk secara lengkapnya, mengenai bagaimana melakukan insert,delete, update data menggunakan php itu akan saya jelaskan di bab 6. Sementara sub babini hanya menerangkan sekelumit saja, mengenai penggunaan form dalam menginsertdata. Oke, disini kita akan membuat form terlebih dahulu, saya sudah menyiapkan filenyadi dalam file latihanbab7, dengan nama form7_insertdatabase.html :<html><head><title>Form 7 - Latihan 5</title></head><body><form action="process7_database.php" method="POST"><table border=0 cellpadding=3 cellspacing=3 align=center><caption><strong>Formulir BiodataMahasiswa</strong><br/><br/></caption><br/><tr><td>Nama</td><td><input type="text" name="nama" /></td></tr><tr><td>Jenis Kelamin</td><td><label for="jeniskelamin"><inputtype="radio" name="jeniskelamin" value="pria"/>Pria</label><label for="jeniskelamin"><input type="radio" name="jeniskelamin"value="wanita"/>Wanita</label></td></tr><tr><td>Tanggal lahir</td><td><select name="tanggal"><option value="01">1</option><option value="01">1</option><option value="02">2</option><option value="03">3</option><option value="04">4</option><option value="05">5</option><option value="06">6</option><option value="07">7</option><option value="08">8</option><option value="09">9</option><option value="10">10</option><option value="11">11</option><option value="12">12</option><option value="13">13</option>Bab 5: Bekerja dengan Form 107Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 115. <option value="14">14</option><option value="15">15</option><option value="16">16</option><option value="17">17</option><option value="18">18</option><option value="19">19</option><option value="20">20</option><option value="21">21</option><option value="22">22</option><option value="23">23</option><option value="24">24</option><option value="25">25</option><option value="26">26</option><option value="27">27</option><option value="28">28</option><option value="29">29</option><option value="30">30</option><option value="31">31</option></select>/<select name="bulan"><option value="01">Januari</option><option value="02">Februari</option><option value="03">Maret</option><option value="04">April</option><option value="05">Mei</option><option value="06">Juni</option><option value="07">Juli</option><option value="08">Agustus</option><option value="09">September</option><option value="10">Oktober</option><option value="11">November</option><option value="12">Desember</option></select>/<select name="tahun"><option value="1980">1980</option><option value="1981">1981</option><option value="1982">1982</option><option value="1983">1983</option><option value="1984">1984</option><option value="1985">1985</option><option value="1986">1986</option><option value="1987">1987</option>Bab 5: Bekerja dengan Form 108Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 116. <option value="1988">1988</option><option value="1989">1989</option><option value="1990">1990</option><option value="1991">1991</option><option value="1992">1992</option><option value="1993">1993</option><option value="1994">1994</option><option value="1995">1995</option><option value="1996">1996</option><option value="1997">1997</option><option value="1998">1998</option><option value="1999">1999</option><option value="2000">2000</option><option value="2001">2001</option><option value="2002">2002</option><option value="2003">2003</option><option value="2004">2004</option></select></td></tr><tr><td>Alamat</td><td><textarea cols="20" rows="5"name="alamat"></textarea></td></tr><tr><td></td><td><input type="submit" name="kirim" value="kirim"/></td></tr></table></form></body></html>Kita lihat dulu hasilnya di browser mozilla firefox, Gambar 5.2 (Form Bioadata)Bab 5: Bekerja dengan Form 109Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 117. selanjutnya kita membuat file yang dapat memproses inputan tersebut ke dalam database,mula-mula kita buat filenya terlebih dahulu, saya menamakan process7_database.php,karena sesuai dengan action pada halaman form yang telah dibuat tadi.<?php// nama, jeniskelamin, tanggal, bulan, tahun, alamat// kemudian untuk dapat menginsert databasenya kita kita lakukan// koneksi dulu// kita ambil file koneksi yang pada bab3 telah saya jelaskan// sebelumnyainclude "koneksi.php";// kemudian kita ambil data-data yang dikirim dari formnya// di masukkan ke dalam variabel// ini digunakan untuk memmudahkan proses insert record ke dalam// database$nama = $_POST[nama];$jeniskelamin = $_POST[jeniskelamin];// untuk dapat menginsertkan tanggal ke dalam database// terlebih dahulu kita rubaah formatnya menjadi tahun-bulan-tanggal// seperti ini ...$tanggallahir = $_POST[tahun].-.$_POST[bulan].-.$_POST[tanggal];$alamat = $_POST[alamat];// setelah dari situ kemudian kita buat query mysql untuk insert record// kedalam tbl_mhsiswa$insert = "insert into `tbl_mhsiswa` (`nama_mhs`, `jenis_kelamin`,`tgl_lahir`, `alamat`)values ($nama, $jeniskelamin, $tanggallahir,$alamat);";// lalu lakukan querynya$insert_query = mysql_query($insert);// untuk memberitahukan jika record yang telah berhasil diinsert ke// dalam databaseif($insert_query) {echo "Insert Record Berhasil<br />";echo "Anda Telah berhasil Menginput data:";echo $nama,"<br />",$jeniskelamin,"<br />",$tanggallahir,"<brBab 5: Bekerja dengan Form 110Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 118. />",$alamat ; }// namun jika gagal....elseecho "Gagal Insert Record";?>oke, beres, kita coba langsung buka formnya di mozilla firefox, kemudian kita inputkandata kedalam form, Gambar 5.3 (Form Biodata)kemudian tekan submit, apa yang terjadi,Insert Record BerhasilAnda Telah berhasil Menginput data:Hartono Gunawanpria1987-03-12Jalan Rodakita lihat di phpmyadmin, data yang telah kita input telah berhasil masuk ke dalamtbl_mhsiswa ...Bab 5: Bekerja dengan Form 111Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 119. Gambar 5.3 (Form Biodata)Bab 5: Bekerja dengan Form 112Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 120. 5.9 Page Title yang dinamis dan Memanfaatkan URL dalam PHP Dengan memanfaatkan tag title dalam html dan bantuan php serta mysql, andadapat membuat halaman html memiliki page title yang dinamis. Di sini pula saya akanjelaskan, bagaimana memanfaat url dalam php dalam memproses inputan dari user. Adadua langkah yang akan kita kerjakan ... Pertama kita akan cuma menampilkan nama mahasiswa yang diambil dari database,nama mahasiswa ini akan ditampilkan dalam bentuk url, dan ketika url ini di klik makaakan menampilkan informasi detil mengenai mahasiswa tersebut Kedua, nama mahasiswa itu akan muncul dalam title dari suatu halaman, yangmemberitahukan jika kita sedang mengakses data mengenai mahasiswa bernama si x. Oke, tahapan pertama adalah kita membuat file untuk menampilkan nama-namamahasiswa ...Saya menamakan filenya dengan nama displaydata.php<?php// kita lakukan koneksi terlebih dahulu ...include "koneksi.php";// kemudian buat satu query yang akan mengambil id mahasiswa, dan nama// mahasiswa// id mahasiswa di ambil sebagai kunci untuk menampilkan detil// mahasiswa// jadi detil informasi mahasiswa, berisi nama, alamat, tanggal lahir// itu akan ditampilkan dengan memanfaatkan idnya nantinya ....$tampil_nama = "select id_mhs, nama_mhs from tbl_mhsiswa";// kemudian kita jalankan querynya ...$tampil_nama_query = mysql_query($tampil_nama);// lalu kita tampilkan isi databasenyawhile ($hasil = mysql_fetch_array($tampil_nama_query)) {// lalu kita tampilkan datanya sebagai link url, yang ketika di klik// akan menampilkan// informasi detil mengenai detil mahasiswa tersebut echo "<a href=detaildata.php?id=",$hasil[id_mhs], ">",$hasil[nama_mhs],"</a><br />"; }?>Bab 5: Bekerja dengan Form 113Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 121. lalu kita coba tes di browser mozilla firefox, kita lihat urlnya,http://localhost/file.latihan.php/latihanbab5/detaildata.php?id=1Masing-masing memiliki id yang berbeda misalnya id untuk loka dwiartara kita lihatdetaildata.php?id=1 Dan ketika kita klik nantinya akan menampilkan informasi detil mengenai lokadwiartara ini, tapi untuk sekarang apabila kita klik, ini terjadi karena kita belum memilikifilenya. Kita akan coba buat halaman yang akan dapat menampilkan detil informasimengenai loka dwiartara sesuai dengan url yang tadi, saya akan membuat file dengannama detaildata.php<?php// pertama adalah kita lakukan koneksi terlebih dahulu// antara php dan mysqlinclude "koneksi.php";// kemudian kita ambil nilai id yang ada pada url$id = $_REQUEST[id];// lalu kita buat query yang hanya dapat menampilkan informasi// mahasiswa yang kita klik saja$detail = "select * from tbl_mhsiswa where id_mhs=$id";// kita jalankan querynya$detail_query = mysql_query($detail);while ($hasil = mysql_fetch_array($detail_query)) {// lalu kita masukkan kedalam variable untuk mempermudah dalam// menampilkan data $nama = $hasil[nama_mhs] ; $jenis_kelamin = $hasil[jenis_kelamin]; $tanggal_lahir = $hasil[tgl_lahir]; $alamat = $hasil[alamat];// kemudian kita sisipkan data yang akan ditampilkan dalam satu// variable $data_lengkap = "Nama : ".$nama."<br />"; $data_lengkap .= "Jenis Kelamin : ".$jenis_kelamin."<br />";// tanda titik ini berguna untuk menambahkan isi variable yangBab 5: Bekerja dengan Form 114Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 122. // sebelumnya agar tidak tertimpa// melainkan hanya menambahkan saja, dan tidak ditampilkan, namun akan// di tampilkan// di akhir dari coding halaman ini ... $data_lengkap .= "Tanggal Lahir : ".$tanggal_lahir."<br />"; $data_lengkap .= "Alamat : ".$alamat."<br />"; }// kemudian tampilkan semua informasi detil.echo "Informasi Detil mengenai <strong>$nama</strong> adalah : <br/>".$data_lengkap;?>Kita lihat di browser, silahkan di pilih kemudian apa yang terjadi, sudah cukup baik.namun kita lihat page title nya masih statis, dan belum muncul. Bagaimana untukmemunculkan page title sesuai dengan nama mahasiswa yang kita klik ???Kita cukup menambahkan html tag di bawah file detaildata.php tadi ... Isi seperti ini ...<?php// pertama adalah kita lakukan koneksi terlebih dahulu// antara php dan mysqlinclude "koneksi.php";// kemudian kita ambil nilai id yang ada pada url$id = $_REQUEST[id];// lalu kita buat query yang hanya dapat menampilkan informasi// mahasiswa yang kita klik saja$detail = "select * from tbl_mhsiswa where id_mhs=$id";// kita jalankan querynya$detail_query = mysql_query($detail);while ($hasil = mysql_fetch_array($detail_query)) {// lalu kita masukkan kedalam variable untuk mempermudah dalam// menampilkan data $nama = $hasil[nama_mhs] ; $jenis_kelamin = $hasil[jenis_kelamin]; $tanggal_lahir = $hasil[tgl_lahir]; $alamat = $hasil[alamat];Bab 5: Bekerja dengan Form 115Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 123. // kemudian kita sisipkan data yang akan ditampilkan dalam satu// variable $data_lengkap = "Nama : ".$nama."<br />"; $data_lengkap .= "Jenis Kelamin : ".$jenis_kelamin."<br />";// tanda titik ini berguna untuk menambahkan isi variable yang// sebelumnya agar tidak tertimpa// melainkan hanya menambahkan saja, dan tidak ditampilkan, namun akan// di tampilkan// di akhir dari coding halaman ini ... $data_lengkap .= "Tanggal Lahir : ".$tanggal_lahir."<br />"; $data_lengkap .= "Alamat : ".$alamat."<br />"; }// kemudian tampilkan semua informasi detil.?><html><head><title><?php echo "Informasi $nama"; ?></title></head><body><?php echo "Informasi Detil mengenai <strong>$nama</strong> adalah :<br />".$data_lengkap; ?></body></html>coba kita tes di browser, pertama adalah membuka halaman displaydata.php... kita klik,apa yang terjadi, titlenya otomatis berubah ...Bab 5: Bekerja dengan Form 116Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 124. Bab 6:Mengedit Databasedengan Form6.1 Insert Record Sebelumnya insert record telah di bahas dalam sub bab di bab sebelumnya, namundi sini saya akan coba jelaskan kembali berguna untuk mengulang materi sebelumnya,tapi saya akan coba bedakan contohnya. Di sini kita akan coba buat satu buah form yang benar-benar sangat lengkap.Namun sebelumnya kita akan buat database dan tablenya terlebih dahulu. Kita bisamemanfaakan phpmyadmin untuk lebih mudah dalam pembuatan table, tapi bagi andayang ingin menguasai query sql, saya akan coba jelaskan juga pembuatan tablenya dalambentuk query sql. Field yang kita butuhkan adalah sebagai berikut : field Type Size Attribut id_daftar int 10 auto_increment primary key tanggal_daftar date nama_pendaftar varchar 75 jns_kelamin varchar 15 lulusan_sekolah int 5 tgl_lahir date status varchar 20Bab 6: Mengedit Database dengan Form 117Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 125. pekerjaan varchar 125 alamat varchar 150 kelurahan varchar 75 kecamatan varchar 75 kota varchar 75 provinsi varchar 75 telp varchar 20Sehingga apabila kita buat ke dalam bentuk querynya adalah seperti ini, jika anda masihbelum mengerti silahkan kembali bab 3, yang membahas mengenai fungsi-fungsi mysql.Apabila anda ingin menggunakan command line (DOS) anda bisa menggunakan queryini :create database mahasiswa_db;use mahasiswa_db;create table tbl_daftar_mahasiswa(id_daftar int(10) auto_incrementprimary key, tanggal_daftar date, nama_pendaftar varchar(75),jns_kelamin varchar(15), status varchar(20), lulusan_sekolahvarchar(20), tahun_ajaran int(6), pekerjaan varchar(125), alamatvarchar(150), kelurahan varchar(75), kecamatan varchar(75), kotavarchar(75), provinsi varchar(75), telp varchar(20));Oke kita langsung jalankan saja di cmd, atau anda juga dapat menggunakan phpmyadmindi bagian menu sql (Query Windows) dalam database mahasiswa_db. Setelah beres,selanjutnya kita akan buat 1 buah form yang dapat menginputkan data-data mahasiswauntuk selanjutnya di masukkan ke dalam database mahasiswa_db.Pembuatan Form Insert Database ...Kita akan buat satu buah form yang dapat menginputkan data kemudian di insertkankedalam database. Terlebih dahulu kita siapkan filenya dengan nama form.insert.html<html><head><title>Form Insert</title></head><body><form action="insert.php" method="POST"><table border=1 width=35% cellpadding=2 cellspacing=2align=center><caption><h2>Formulir Pendaftaran Mahasiswa Baru</h2></caption>Bab 6: Mengedit Database dengan Form 118Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 126. <tr><td>Nama</td><td><input type="text" name="nama" size="30"maxlength="50"/></td></tr><tr><td>Jenis Kelamin</td><td><input type="radio" name="jenis_kelamin"value="pria"/><label for="jenis_kelamin">Pria</label><input type="radio" name="jenis_kelamin" value="wanita"/><labelfor="jenis_kelamin">Wanita</label></td></tr><tr><td>Status</td><td><select name="status"><option value="Pilih Status Anda">Pilih Status Anda</option><option value="menikah">Menikah</option><option value="single">Single</option></select></td></tr><tr><td>Lulusan Sekolah</td><td><input type="text" name="sekolah"size="30" maxlength="50"/></td></tr><tr><td>Tahun Ajaran</td><td><select name="tahun_ajaran"><option>Pilih Tahun Ajaran</option><option value="1995">1995</option><option value="1996">1996</option><option value="1997">1997</option><option value="1998">1998</option><option value="1999">1999</option><option value="2000">2000</option><option value="2001">2001</option><option value="2002">2002</option><option value="2003">2003</option><option value="2004">2004</option><option value="2005">2005</option><option value="2006">2006</option><option value="2007">2007</option><option value="2008">2008</option><option value="2009">2009</option><option value="2010">2010</option></select></td></tr><tr><td>Pekerjaan</td><td><input type="text" name="pekerjaan" size="30"maxlength="50"/></td></tr><tr><td>Alamat</td><td><textarea name="alamat" cols="30"rows="4"></textarea></td></tr><tr><td>Kelurahan</td><td><input type="text" name="kelurahan" size="30"maxlength="50"/></td></tr><tr><td>Kecamatan</td><td><input type="text" name="kecamatan" size="30"maxlength="50"/></td></tr>Bab 6: Mengedit Database dengan Form 119Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 127. <tr><td>Kota</td><td><input type="text" name="kota" size="30"maxlength="50"/></td></tr><tr><td>Provinsi</td><td><select name="provinsi"><option value="Pilih Provinsi Anda">Pilih Provinsi Anda</option><option value="Bali">Bali</option><option value="Bangka Belitung">Bangka Belitung</option><option value="Banten">Banten</option><option value="Bengkulu">Bengkulu</option><option value="Gorontalo">Gorontalo</option><option value="Irian Jaya Barat">Irian Jaya Barat</option><option value="Jabotabekdecipsawcib">Jabotabekdecipsawcib</option><option value="Jambi">Jambi</option><option value="Jawa Barat">Jawa Barat</option><option value="Jawa Tengah">Jawa Tengah</option><option value="Jawa Timur">Jawa Timur</option><option value="Kalimantan Barat">Kalimantan Barat</option><option value="Kalimantan Selatan">Kalimantan Selatan</option><option value="Kalimantan Tengah">Kalimantan Tengah</option><option value="Kalimantan Timur">Kalimantan Timur</option><option value="Kepulauan Riau">Kepulauan Riau</option><option value="Lampung">Lampung</option><option value="Lokasi Lain-lain">Lokasi Lain-lain</option><option value="Maluku">Maluku</option><option value="Maluku Utara">Maluku Utara</option><option value="Nangroe Aceh Darussalam">Nangroe AcehDarussalam</option><option value="Nusa Tenggara Barat">Nusa Tenggara Barat</option><option value="Nusa Tenggara Timur">Nusa Tenggara Timur</option><option value="Papua">Papua</option><option value="Riau">Riau</option><option value="Sulawesi Barat">Sulawesi Barat</option><option value="Sulawesi Selatan">Sulawesi Selatan</option><option value="Sulawesi Tengah">Sulawesi Tengah</option><option value="Sulawesi Tenggara">Sulawesi Tenggara</option><option value="Sulawesi Utara">Sulawesi Utara</option><option value="Sumatera Barat">Sumatera Barat</option><option value="Sumatera Selatan">Sumatera Selatan</option><option value="Sumatera Utara">Sumatera Utara</option><option value="Yogyakarta">Yogyakarta</option>Bab 6: Mengedit Database dengan Form 120Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 128. </select></td></tr><tr><td>No Telepon</td><td><input type="text" name="telepon" size="30"maxlength="50"/></td></tr><tr><td></td><td><input type="submit" name="kirim"value="Daftar!"/></td></tr></table></form></body></html>Setelah itu kita coba tes di browser, isi formulirnya kemudian tekan submit, dan ups...karena file insert.php belum di buat maka tampilannya pun seperti itu, oleh karena ituterlebih dahulu kita balik ke editor notepad++, kemudian disini kita ketikkan variable-variable yang telah dikirim melalui form.insert.html.Oke, kita buat file insert.php, kemudian untuk mengetahui apakah form yang telah dibuat tadi sudah benar-benar mengirim semua variablenya kedalam insert.php caranyaadalah dengan menampilkan semua variable yang sudah di pos, seperti ini :<?phpecho $_POST[nama]."<br/>";echo $_POST[jenis_kelamin]."<br/>";echo $_POST[status]."<br/>";echo $_POST[sekolah]."<br/>";echo $_POST[tahun_ajaran]."<br/>";echo $_POST[pekerjaan]."<br/>";echo $_POST[alamat]."<br/>";echo $_POST[kelurahan]."<br/>";echo $_POST[kecamatan]."<br/>";echo $_POST[kota]."<br/>";echo $_POST[provinsi]."<br/>";echo $_POST[telepon]."<br/>";?> Kemudian kita cek dengan mengisi kembali form inputan yang ada ... ya lakukanpengisian... kemudian tekan submit, dan hasilnya. Oke setelah semuanya berhasildiinputkan dan juga ditampilkan dalam insert.php, langkah selanjutnya yang harus kitalakukan adalah, menginsertkan ke database semua yang di inputkan tersebut, kita kembalikedalam file insert.php, langkah selanjutnya adalah kita coba insertkan ke databasedengan catatan sebelum dapat menginsertkan ke dalam database kita terlebih dahulukoneksikan antara si php dengan mysqlnya ... Pertama kita buat terlebih dahulu file koneksinya, dengan nama koneksi.phpBab 6: Mengedit Database dengan Form 121Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 129. <?php$host = "localhost";$username = "root";$password = "";$database = "mahasiswa_db";$koneksi = mysql_connect($host, $username, $password);$pilihdatabase = mysql_select_db($database, $koneksi);?>Lalu selanjutnya kita langsung buat file insert.php, diletakkan satu direktori dengan filekoneksi.php<?php// kita koneksikan dulu dengan file koneksi.phpinclude "koneksi.php";// kemudian kita buat variable-variable yang akan kita masukkan ke// dalam database nanti// diambil dari form inputan ...$tanggal_daftar = date("Y-n-d");$nama = $_POST[nama];$jenis_kelamin = $_POST[jenis_kelamin];$status = $_POST[status];$sekolah = $_POST[sekolah];$tahun_ajaran = $_POST[tahun_ajaran];$pekerjaan = $_POST[pekerjaan];$alamat = $_POST[alamat];$kelurahan = $_POST[kelurahan];$kecamatan = $_POST[kecamatan];$kota = $_POST[kota];$provinsi = $_POST[provinsi];$telepon = $_POST[telepon];// buat query untuk memasukkan hasil inputan tadi ke dalam database$query_insert = "insert into tbl_daftar_mahasiswa(tanggal_daftar,nama_pendaftar, jns_kelamin, status, lulusan_sekolah, tahun_ajaran,pekerjaan, alamat, kelurahan, kecamatan, kota, provinsi, telp)values($tanggal_daftar, $nama, $jenis_kelamin, $status,$sekolah, $tahun_ajaran, $pekerjaan, $alamat,$kelurahan,$kecamatan, $kota, $provinsi,$telepon);";// lalu jalankan querynya untuk langsung dapat memasukkannya kedalamBab 6: Mengedit Database dengan Form 122Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 130. // database.$insert = mysql_query($query_insert);// apabila query insert berjalan dengan baik,if($insert) {// maka echo "Data anda telah berhasil di input ke dalam database ..."; }// jika querynya gagal, atau ada yang tidak beres dengan koneksi antara// php dan mysqlelse {// maka echo "Gagal insert database ... "; }?> Oke setelah semua beres, yang perlu kita lakukan adalah mencobanya kembaliuntuk mengisi form inputan yang tadi. Masuk ke dalam browser ... dan kita isi ... lalukita kirim ... dan hasilnya... untuk membuktikan record dalam tbl_daftar_mahasiswa telahterisi kita akan coba buka dalam phpmyadmin. Record telah berhasil di inputkan kedalam database... Saya menghimbau kepada anda untuk memperhatikan secara teliti benar salahnyaquery yang akan digunakan dalam php untuk memanipulasi mysql database, karena jikaterjadi kesalahan semua yang diinputkan melalui form itu tidak akan bisa di insertkankedalam database. Oke setelah perintah insert telah berhasil, kita coba untuk menampilkan yang adadalam database dengan menggunakan html table. akan saya jelaskan di subbabberikutnya.Bab 6: Mengedit Database dengan Form 123Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 131. 6.2 Select Recordselect record, atau menampilkan isi dari suatu table, sama halnya dengan insert query,untuk dapat menampilkan isi table menggunakan php, terlebih dahulu anda harusmengkoneksikan antara php dengan mysql terlebih dahulu. select record benar-benarsangat bermanfaat kegunaannya, ketika anda menginputkan suatu artikel diblog dengansi programmer menggunakan perintah insert untuk dapat menginputkan artikel yang andaposting di blog, kemudian dengan select lah artikelnya dapat ditampilkan di halamanindex blog anda, atau di dalam kategori, kategori, sehingga jelasnya insert dan selectmerupakan perintah dasar yang benar-benar sangat bermanfaat dalam membuat aplikasiberbasis website menggunakan php dan mysql.oke, sebelumnya kita telah menginputkan data menggunakan form inputan ke dalamdatabase, selanjutnya kita akan coba menampilkan isi dari database tersebut. caranyaadalah menggunakan select, kita buat filenya terlebih dahulu ...dengan nama select.php, kita buat filenya 1 direktori dengan koneksi.php yang telahdibuat sebelumnya...<?php// kita lakukan koneksi dulu seperti biasanya ...include "koneksi.php";// buat query yang dapat menampilkan semua isi tbl_daftar_mahasiswa$select = "select * from tbl_daftar_mahasiswa order by id_daftar desc";// jadikan variable $select itu menjadi query yang siap di eksekusi// oleh mysql$select_query = mysql_query($select);?><html><head><title>Latihan BAB 6 - Select Record</title></head><body>// pembuatan table sebelumnya telah saya jelaskan...<table style="font-size:11px;font-family:arial;text-align:center;"border=1 width="80%" align=center ><caption><h1>Daftar Calon Mahasiswa Baru</h1></caption>Bab 6: Mengedit Database dengan Form 124Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 132. <tr><th>No</th><th>Tanggal</th><th>Nama</th><th>JenisKelamin</th><th>Status</th><th>Lulusan</th><th>Tahun</th><th>Pekerjaan</th><th>Alamat</th><th>Kelurahan</th><th>Kecamatan</th><th>Kota</th><th>Provinsi</th><th>Telepon</th><th>Action</th></tr><?php// kemudian kita tampilkan isi yang berada dalam database tadi ...while($select_result = mysql_fetch_array($select_query)){// kita ambil saatu persatu field yang berada dalamtbl_daftar_mahasiswa tadi ...$id = $select_result[id_daftar] ;$tanggaldaftar = $select_result[tanggal_daftar] ;$nama = $select_result[nama_pendaftar] ;$jeniskelamin = $select_result[jns_kelamin] ;$status = $select_result[status] ;$lulusan = $select_result[lulusan_sekolah] ;$tahunajaran = $select_result[tahun_ajaran] ;$pekerjaan = $select_result[pekerjaan] ;$alamat = $select_result[alamat] ;$kelurahan = $select_result[kelurahan] ;$kecamatan = $select_result[kecamatan] ;$kota = $select_result[kota] ;$provinsi = $select_result[provinsi] ;$telepon = $select_result[telp] ;// lalu kita tampilkan dalam bentuk table yang dinamis ke bawah// caranya adalah dengan menampilkan isi variable didalam tag-tag tdecho "<tr><td>$id</td><td>$tanggaldaftar</td><td>$nama</td><td>$jeniskelamin</td><td>$status</td><td>$lulusan</td><td>$tahunajaran</td><td>$pekerjaan</td><td>$alamat</td><td>$kelurahan</td><td>$kecamatan</td><td>$kota</td><td>$provinsi</td><td>$telepon</td>// lalu tutup dengan tag tr ...</tr>";}?>Bab 6: Mengedit Database dengan Form 125Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 133. </table></body></html>Oke sudah semua, kemudian kita jalankan file tersebut menggunakan browser ...Bab 6: Mengedit Database dengan Form 126Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 134. 6.3 Delete Record Oke, aksi selanjutnya yang akan kita buat adalah aksi delete. delete disininantinya akan digunakan untuk menghapus record yang dipilih... sebelumnya di bab 3saya telah menjelaskan syntax dasar dalam mendelete record, namun di sini kita akancoba memperdalam delete record ... kita masih menggunakan file yang sama yakniselect.php, namun kita akan coba menambahkan form di setiap barisnya untuk dapatmenjalankan aksi delete dan update record.<?phpinclude "koneksi.php";$select = "select * from tbl_daftar_mahasiswa order by id_daftar desc";$select_query = mysql_query($select);?><html><head><title>Latihan BAB 6 - Select Record</title></head><body><table style="font-size:11px;font-family:arial;text-align:center;"border=1 width="80%" align=center ><caption><h1>Daftar Calon Mahasiswa Baru</h1></caption><tr><th>No</th><th>Tanggal</th><th>Nama</th><th>JenisKelamin</th><th>Status</th><th>Lulusan</th><th>Tahun</th><th>Pekerjaan</th><th>Alamat</th><th>Kelurahan</th><th>Kecamatan</th><th>Kota</th><th>Provinsi</th><th>Telepon</th><th>Action</th></tr><?phpwhile($select_result = mysql_fetch_array($select_query)){$id = $select_result[id_daftar] ;$tanggaldaftar = $select_result[tanggal_daftar] ;$nama = $select_result[nama_pendaftar] ;$jeniskelamin = $select_result[jns_kelamin] ;$status = $select_result[status] ;$lulusan = $select_result[lulusan_sekolah] ;$tahunajaran = $select_result[tahun_ajaran] ;$pekerjaan = $select_result[pekerjaan] ;$alamat = $select_result[alamat] ;Bab 6: Mengedit Database dengan Form 127Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 135. $kelurahan = $select_result[kelurahan] ;$kecamatan = $select_result[kecamatan] ;$kota = $select_result[kota] ;$provinsi = $select_result[provinsi] ;$telepon = $select_result[telp] ;echo "<tr><td>$id</td><td>$tanggaldaftar</td><td>$nama</td><td>$jeniskelamin</td><td>$status</td><td>$lulusan</td><td>$tahunajaran</td><td>$pekerjaan</td><td>$alamat</td><td>$kelurahan</td><td>$kecamatan</td><td>$kota</td><td>$provinsi</td><td>$telepon</td><td>// kemudian kita siapkan sebuah form yang nantinya digunakan untuk// menjalankan aksi update dan delete// kita buat actionnya itu menuju url yang nanti url tersebut digunakan// untuk variable untuk// membantu aksi selanjutnya ...// lihat di sebelah sini ... hasilnya nanti adalah action.php?id=xx ...// nah id xx inilah yang nantinya// akan kita gunakan untuk membantu aksi selanjutnya seperti proses// delete, atau pun edit ...<form method="POST" action="action.php?id=$id"><inputtype="hidden" value="$id" name="id">// kita buat button untuk update<input type="submit" name="action" value="Update!"><br />// dan kita buat button untuk delete recordnya<input type="submit" name="action" value="Delete!"></form></td>// lalu tutup dengan tag tr ...</tr>";}?></table></body></html>setelah beres semua formnya, langkah selanjutnya adalah membuat halaman action.php,Bab 6: Mengedit Database dengan Form 128Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 136. halaman action.php digunakan untuk mendelete ataupun mengupdate record, dalam subbab ini saya hanya akan menjelaskan bagaimana melakukan delete record yang dipilih /disubmit kan tersebut, di bagian selanjutnya baru akan saya jelaskan bagaimana caramengupdate recordnya ...Oke, kita akan buat file action.php ...Di sini kita akan menggunakan url hasil dari table sebelumnya yakni :http://localhost/latihanbab6/action.php?id=xSi x ini lah yang akan kita manfaatkan, mengaksesnya dengan $_REQUEST[] langsungsaja ...<?php// pertama kita ambil aksinya, hal ini diambil berdasarkan dari action// form sebelumnya// kemudian kita jadikan huruf kecil semua dengan strtolower()$action = strtolower($_POST[action]);// kita ambil url id nya dengan$id = $_REQUEST[id];// lalu kita cocokkan ketika tombol delete yang ditekanif ($action == "delete") { // maka echo "Anda memilih aksi delete pada record $id..."; }// jika bukan tombol delete yang ditekanelse { // maka echo "Anda memilih aksi update..."; }?>Kita lihat di browser. Kemudian kita klik tombol delete pada salah satu baris, lalu apayang terjadi? Kita kembali ke notepad lalu kita selesaikan querynya ...Bab 6: Mengedit Database dengan Form 129Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 137. <?php// lakukan koneksi terlebih dahuluinclude "koneksi.php";// kemudian ambil aksi dari form$action = strtolower($_POST[action]);// lalu ambil id dari url$id = $_REQUEST[id];if ($action == "delete") { echo "Anda memilih aksi delete pada record $id... <br/>"; // buat querynya untuk mendelete record mahasiswa yang memiliki // id yang akan di delete $delete = "delete from tbl_daftar_mahasiswa where id_daftar = $id"; // jalankan querynya $delete_query = mysql_query($delete); // jika querynya berhasil maka record berhasil di hapus if ($delete_query) {echo "Record $id berhasil dihapus ...";} else {echo "Gagal menghapus record";} }else { echo "Anda memilih aksi update..."; }?>Kita jalankan di browser dan ... ???Bab 6: Mengedit Database dengan Form 130Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 138. 6.4 Update Record Di subbab ini saya menjelaskan bagaimana melakukan update database, masihmenggunakan contoh yang sama yaitu menggunakan database mahasiswa_db dantbl_daftar_mahasiswa. di dalam file action.php kita akan memberikan sedikit sentuhanuntuk dapat melakukan update record yang dipilih. Jika record update di pilih makatampilkan form, oleh karena itu di bagian baris yang berisi kalimat :echo "Anda memilih aksi update...";Di tambahkan menjadi ...<?php// kita includekana koneksi.php untuk menampilkan record yang akan// diupdateinclude "koneksi.php";$action = strtolower($_POST[action]);$id = $_REQUEST[id];if ($action == "delete"){echo "Anda memilih aksi delete pada record $id... <br/>";$delete = "delete from tbl_daftar_mahasiswa where id_daftar = $id";$delete_query = mysql_query($delete);if ($delete_query) echo "Record $id berhasil dihapus ...";else echo "Gagal menghapus record";}else{// buat query untuk menampilkan record yang dipilih ...$select = "select * from tbl_daftar_mahasiswa where id_daftar = $id";$select_query = mysql_query($select);// lalu sisipkan field yang akan ditampilkan ke dalam variable...while($select_result = mysql_fetch_array($select_query)) { $id = $select_result[id_daftar] ; $nama = $select_result[nama_pendaftar] ;Bab 6: Mengedit Database dengan Form 131Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 139. $jeniskelamin = $select_result[jns_kelamin] ; $status = $select_result[status] ; $lulusan = $select_result[lulusan_sekolah] ; $tahunajaran = $select_result[tahun_ajaran] ; $pekerjaan = $select_result[pekerjaan] ; $alamat = $select_result[alamat] ; $kelurahan = $select_result[kelurahan] ; $kecamatan = $select_result[kecamatan] ; $kota = $select_result[kota] ; $provinsi = $select_result[provinsi] ; $telepon = $select_result[telp] ;// kita tutup terlebih dahulu tagnya, karena kita akan membuat form// html?>// kita buat formnya disini ...// form update dan insert tidak terlalu berbeda,// yang jadi perbedaan adalah form update itu memiliki value yang// isinya itu// di ambil dari database ...<form action="update.php" method="POST"><table border=0 width=35% cellpadding=2 cellspacing=2align=center><caption><h2>Formulir Pendaftaran Mahasiswa Baru</h2></caption>// sengaja saya buat input dengan type hidden// hidden tidak akan tampil, namun nanti akan kita gunakan// dalam mengupdate record yang dipilih ...// dan valuenya kita isi dengan mengambil dari database yakni id_daftar// yang disisipkan kedalam// variable id<input type="hidden" name="id" size="30" value="<?php echo $id ; ?>"maxlength="50"/>// begitu juga dengan nama// kita tambahkan valuenya dengan mengambil isinya dari database<tr><td>Nama</td><td><input type="text" name="nama" value="<?php echo$nama ; ?>" size="30" maxlength="50"/></td></tr><tr><td>Jenis Kelamin</td><td><input type="radio" name="jenis_kelamin"value="pria"/><label for="jenis_kelamin">Pria</label>Bab 6: Mengedit Database dengan Form 132Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 140. <input type="radio" name="jenis_kelamin" value="wanita"/><labelfor="jenis_kelamin">Wanita</label></td></tr><tr><td>Status</td><td><select name="status"><option value="Pilih Status Anda">Pilih Status Anda</option><option value="menikah">Menikah</option><option value="single">Single</option></select></td></tr><tr><td>Lulusan Sekolah</td><td><input type="text" name="sekolah"value="<?php echo $lulusan ; ?>" size="30" maxlength="50"/></td></tr><tr><td>Tahun Ajaran</td><td><select name="tahun_ajaran"><option>Pilih Tahun Ajaran</option><option value="1995">1995</option><option value="1996">1996</option><option value="1997">1997</option><option value="1998">1998</option><option value="1999">1999</option><option value="2000">2000</option><option value="2001">2001</option><option value="2002">2002</option><option value="2003">2003</option><option value="2004">2004</option><option value="2005">2005</option><option value="2006">2006</option><option value="2007">2007</option><option value="2008">2008</option><option value="2009">2009</option><option value="2010">2010</option></select></td></tr><tr><td>Pekerjaan</td><td><input type="text" name="pekerjaan"value="<?php echo $pekerjaan ; ?>" size="30" maxlength="50"/></td></tr><tr><td>Alamat</td><td><textarea name="alamat" cols="30"rows="4"><?php echo $alamat ; ?></textarea></td></tr><tr><td>Kelurahan</td><td><input type="text" name="kelurahan"value="<?php echo $kelurahan ; ?>" size="30" maxlength="50"/></td></tr><tr><td>Kecamatan</td><td><input type="text" name="kecamatan"value="<?php echo $kecamatan; ?>" size="30" maxlength="50"/></td></tr><tr><td>Kota</td><td><input type="text" name="kota" size="30"value="<?php echo $kota ; ?>" maxlength="50"/></td></tr><tr><td>Provinsi</td><td><select name="provinsi"><option value="Pilih Provinsi Anda">Pilih Provinsi Anda</option>Bab 6: Mengedit Database dengan Form 133Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 141. <option value="Bali">Bali</option><option value="Bangka Belitung">Bangka Belitung</option><option value="Banten">Banten</option><option value="Bengkulu">Bengkulu</option><option value="Gorontalo">Gorontalo</option><option value="Irian Jaya Barat">Irian Jaya Barat</option><option value="Jabotabekdecipsawcib">Jabotabekdecipsawcib</option><option value="Jambi">Jambi</option><option value="Jawa Barat">Jawa Barat</option><option value="Jawa Tengah">Jawa Tengah</option><option value="Jawa Timur">Jawa Timur</option><option value="Kalimantan Barat">Kalimantan Barat</option><option value="Kalimantan Selatan">Kalimantan Selatan</option><option value="Kalimantan Tengah">Kalimantan Tengah</option><option value="Kalimantan Timur">Kalimantan Timur</option><option value="Kepulauan Riau">Kepulauan Riau</option><option value="Lampung">Lampung</option><option value="Lokasi Lain-lain">Lokasi Lain-lain</option><option value="Maluku">Maluku</option><option value="Maluku Utara">Maluku Utara</option><option value="Nangroe Aceh Darussalam">Nangroe AcehDarussalam</option><option value="Nusa Tenggara Barat">Nusa Tenggara Barat</option><option value="Nusa Tenggara Timur">Nusa Tenggara Timur</option><option value="Papua">Papua</option><option value="Riau">Riau</option><option value="Sulawesi Barat">Sulawesi Barat</option><option value="Sulawesi Selatan">Sulawesi Selatan</option><option value="Sulawesi Tengah">Sulawesi Tengah</option><option value="Sulawesi Tenggara">Sulawesi Tenggara</option><option value="Sulawesi Utara">Sulawesi Utara</option><option value="Sumatera Barat">Sumatera Barat</option><option value="Sumatera Selatan">Sumatera Selatan</option><option value="Sumatera Utara">Sumatera Utara</option><option value="Yogyakarta">Yogyakarta</option></select></td></tr><tr><td>No Telepon</td><td><input type="text" name="telepon" size="30"value="<?php echo $telepon ; ?>" maxlength="50"/></td></tr><tr><td></td><td><input type="submit" name="kirim"value="Update!"/></td></tr>Bab 6: Mengedit Database dengan Form 134Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 142. </table></form><?php }}?>Setelah semua beres, selanjutnya kita tinggal eksekusi dengan memilih tombol updatelalu kita coba lakukan update dan ?? Mantap!Bab 6: Mengedit Database dengan Form 135Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 143. Bab 7:Lebih Jauh dengan Form7.1 Validasi Hasil Input Di bagian ini saya akan jelaskan bagaimana cara seorang web developer itumengecek hasil inputan yang di lakukan oleh user, sebagai contohnya misalkan user akanmelakukan pendaftaran sebagai mahasiswa baru, namun form di bagian nomorteleponnya itu di kosongkan, sedangkan syarat untuk mendaftar adalah, bagian nomortelepon itu harus di isi, nah bagaimana menangani ini sehingga nanti jika ada user yangmengosongkan nomor telepon nya si user tersebut diperintahkan kembali untuk mengisiform bagian nomor telepon. Atau contoh lainnya misalkan ketika user menginputkan namanya pada nomortelepon, hal ini tentu saja salah, namun bagaimana cara untuk menangani ini, jadi ketikauser memasukkan nama pada inputan nomor telepon akan ditolak dan diberikanwarning, jika yang diinputkan itu salah. Saya akan coba jelaskan contoh kasus yangpertama, ketika kondisi si user itu mengosongkan salah satu bagian form. untukmengetahui kosong atau tidaknya suatu variable itu diwakilkan dengan fungsi !empty().Penulis akan coba jelaskan contoh kasusnya, pertama kita buat form nya terlebih dahulu :<html><head><title>Form Insert</title></head><body><form action="insert.php" method="POST"><table border=0 width=35% cellpadding=2 cellspacing=2align=center><caption><h2>Formulir Pendaftaran Mahasiswa Baru</h2><p><?php echo$warning ; ?></p>Bab 7: Lebih Jauh dengan Form 136Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 144. </caption><tr><td>Nama</td><td><input type="text" name="nama" size="30"maxlength="50"/></td></tr><tr><td>Jenis Kelamin</td><td><input type="radio" name="jenis_kelamin"value="pria"/><label for="jenis_kelamin">Pria</label><input type="radio" name="jenis_kelamin" value="wanita"/><labelfor="jenis_kelamin">Wanita</label></td></tr><tr><td>Alamat</td><td><textarea name="alamat" cols="30"rows="4"></textarea></td></tr><tr><td>No Telepon</td><td><input type="text" name="telepon" size="30"maxlength="50"/></td></tr><tr><td></td><td><input type="submit" name="kirim"value="Daftar!"/></td></tr></table></form></body></html>Ini form yang terdiri dari nama, jenis kelamin, alamat, dan nomor telepon. Kita lihat dibrowser selanjutnya kita akan buat untuk bagian validasinya, yakni file insert.php.<?php// jika user mengosongkan nama// ini juga berlaku jika anda mengosongkan semuanya ...// yang pertama kali di cek adalah bagian ini ...if (empty($_POST[nama])){ echo "Anda mengosongkan Nama...";}// jika user mengosongkan jenis kelaminelse if (empty($_POST[jenis_kelamin])){ echo "Anda mengosongkan jenis kelamin...";}// jika user mengosongkan alamatelse if (empty($_POST[alamat])){ echo "Anda mengosongkan alamat";Bab 7: Lebih Jauh dengan Form 137Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 145. }// ini berarti mengosongkan nomor teleponelse if (empty($_POST[telepon])){ echo "Anda mengosongkan no telepon ... ";}else{ echo "Semua terisi dan proses input ke database bisa di lakukandisini ... ";}?>lalu kita cek di browser dengan mengisi formnya, dan kita klik submit, dan apa yangterjadi ...Bab 7: Lebih Jauh dengan Form 138Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 146. 7.2 Memfilter Format yang salah Contoh dalam memfilter format yang salah bisa kita temui ketika kita mengisi formregistrasi di bagian inputan untuk email, ketika kita salah mengetik format email dengansalah, misalnya namaemail@yahoocom tanpa tanda titik setelah yahoo, maka akan adawarning jika format email yang kita masukkan itu salah, ada juga contoh kasus lainmisalnya ketika kita salah mengisi tanggal lahirnya, ada situs yang memberikan formatseperti ini 24-01-1987, namun kemudian kita mengisinya dengan 24-Januari-1987, makaakan ada warning jika format yang di isi itu salah. Solusinya adalah kita menggunakanregular expression, saya hanya menjelaskan sedikit saja regular expression sesuai dengancontoh kasus, karena untuk regular expression itu sendiri butuh satu bahasan terperincisaking banyaknya sub sub dalam regular expression. Regular expression merupakan suatu pola yang dapat mencocokan kalimat sesuaidengan format yang kita inginkan. Sebelum beranjak ke regular expression kita akancoba terlebih dahulu membuat form dan mengecek format data yang di inputkan, apakahdata yang diinput itu berupa angka atau numeric, huruf atau string, apakah data yang diinput itu sebuah array?? Kita buat form terlebih dahulu :<html><head><title>Form Check Input</title></head><body><form action="check_input.php" method="POST"><table border=0 width=35% cellpadding=2 cellspacing=2align=center><caption><h2>Formulir Pendaftaran Mahasiswa Baru</h2><p><?php echo$warning ; ?></p></caption><!-- di sini saya coba membuat 6 inputan, yang isinya ada yang terdiridari huruf saja dan ada yang terdiri angka saja --><tr><td>Nama</td><td><input type="text" name="nama" size="30"maxlength="50"/></td></tr><tr><td>Jenis Kelamin</td><td><input type="radio" name="jenis_kelamin"value="pria"/><label for="jenis_kelamin">Pria</label><input type="radio" name="jenis_kelamin" value="wanita"/><labelfor="jenis_kelamin">Wanita</label></td></tr><tr><td>Tanggal Lahir</td><td><input type="text" name="tanggal_lahir"size="30" maxlength="50"/></td></tr>Bab 7: Lebih Jauh dengan Form 139Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 147. <tr><td>Alamat</td><td><textarea name="alamat" cols="30"rows="4"></textarea></td></tr><tr><td>No Telepon</td><td><input type="text" name="telepon" size="30"maxlength="50"/></td></tr><tr><td></td><td><input type="submit" name="kirim"value="Daftar!"/></td></tr></table></form></body></html>Kemudian selanjutnya kita akan membuat satu buah file yang dapat mengecek, formatdata yang diinputkan tersebut apakah angka saja atau huruf saja atau terdapat kedua-duanya. Hal ini menentukan untuk proses selanjutnya. Kita buat satu halaman dengannama check_input.php<?php// kita cuma akan mengambil sampel untuk nama dan telepon saja...// selebihnya bisa anda praktikan nanti$nama = $_POST[nama];$telepon = $_POST[telepon];// jika nama yang di inputkan itu terdiri dari angka sajaif (is_numeric($nama)) {// maka berikan warning jika yang di masukkan itu bertipe numeric... echo "<strong>Nama yang anda masukkan bertipe numeric</strong>,silahkan isi kembali dengan string...<br />"; }// dan apabila nama yang diinputkan itu bertipe stringelse if (is_string($nama)) { echo "<strong>Nama yang anda masukkan bertipe string </strong> <br />"; }else { echo "Anda harus memasukkan nama dalam format string...<br />"; }Bab 7: Lebih Jauh dengan Form 140Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 148. // begitu juga dengan nomor telepon, apabila yang diinputkan itu// bertipe numericif (is_numeric($telepon)) {// maka ... echo "<strong>Nomor Telepon</strong> yang anda masukkan <strong>bertipe numeric</strong><br />"; }else {// maka echo "Anda harus memasukkan nama dalam format numeric...<br />"; }?>Regular expression Penggunaan regular expresion sebagai contohnya di temui dalam pengisian tanggallahir, mencocokan format tanggal lahir, sehingga inputan yang di masukkan oleh usernanti bisa seragam mengikuti format yang benar. seperti yang saya katakan sebelumnya,misalkan format yang kita inginkan ketika user menginput tanggal adalah 24-01-1987,ketika ada user yang menginput 24-Januari-1987 maka akan terdapat peringatan jikaformat yang di masukkan itu adalah salah. Solusinya adalah kita menggunakan regularexpression, pertama kita akan buat formnya terlebih dahulu ...<html><head><title>Form Check Input</title></head><body><form action="regex1.php" method="POST"><table border=0 width=35% cellpadding=2 cellspacing=2align=center><caption><h2>Formulir Pendaftaran Mahasiswa Baru</h2><p><?php echo$warning ; ?></p></caption><tr><td>Tanggal Lahir</td><td><input type="text" name="tanggal_lahir"size="30" maxlength="50"/></td></tr>Bab 7: Lebih Jauh dengan Form 141Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 149. <tr><td></td><td><input type="submit" name="kirim"value="Daftar!"/></td></tr></table></form></body></html>kemudian file regex1.php<?php// kita ambil variable yang di ambil dari form inputan, yakni// tanggallahir$tanggallahir = $_POST[tanggal_lahir];// kemudian kita buat pola dari tanggal lahir// apabila kita lihat di sini// ([0-9]{2})-([0-9]{2})-([0-9]{4})// ([0-9]{2})// kita tahu bahwa tanggal itu memiliki 2 digit yang isinya terdiri// dari angka 0 - 9// ([0-9]{2})// kita tahu bahwa bulan itu memiliki 2 digit yang isinya terdiri dari// angka 0 - 9// ([0-9]{4})// dan untuk tahun itu memiliki 4 digit angka yang terdiri dari angka 0// - 9// dan tanda -// itu membuat tanggalnya nanti memiliki bentuk seperti ini ... xx-xx-// xxxxif (!ereg ("([0-9]{2})-([0-9]{2})-([0-9]{4})", $tanggallahir,$bagiantanggal)) { // perintah !ereg digunakan untuk mencocokan tanggallahir // apakah sudah sesuai dengan formatnya // yang ditentukan // dan variable $bagiantanggal ini digunakan untuk // memetakan tanggal lahir yang di masukkan ...Bab 7: Lebih Jauh dengan Form 142Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 150. echo "Format yang anda masukkan salah ..."; }else { // sehingga hasilnya nanti seperti ini ... echo "Tanggal : $bagiantanggal[1]<br />"; echo "Bulan : $bagiantanggal[2]<br />"; echo "Tahun : $bagiantanggal[3]<br />"; }?>Kita coba lakukan testing di browser ... dan hasilnya ... begitu juga dengan format emailkita buat terlebih dahulu formnya<html><head><title>Form Check Input</title></head><body><form action="regex2.php" method="POST"><table border=0 width=35% cellpadding=2 cellspacing=2align=center><caption><h2>Formulir Pendaftaran Mahasiswa Baru</h2><p><?php echo$warning ; ?></p></caption><tr><td>Email</td><td><input type="text" name="email" size="30"maxlength="50"/></td></tr><tr><td></td><td><input type="submit" name="kirim"value="Daftar!"/></td></tr></table></form></body></html>Kemudian kita proses email yang di masukkan dalam file regex2.php ...<?php$email = $_POST[email];Bab 7: Lebih Jauh dengan Form 143Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 151. if (!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$", $email)) { echo "Alamat Email anda Salah ..."; }else { echo "Alamat Email yang anda masukkan adalah $email"; }?>anda bisa mendalami regex lebih dalam dengan membaca tutorial-tutorial yang sayabawakan di ilmuwebsite.com di dalam file latihan saya menyediakan satu file berisi 15pola regex yang sering digunakan oleh web developer. dan tentunya menggunakan php.Bab 7: Lebih Jauh dengan Form 144Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 152. 7.3 Mengupload fileDalam pembuatan aplikasi berbasis web, mengupload file merupakan sesuatu yangsangat di perlukan dalam php, syntax untuk mengupload file pun sudah di sediakan ... adasedikit perbedaan antara form yang biasa dengan form yang digunakan untukmengupload file. Terdapat satu atribut tambahan untuk form tersebut, kita coba akan buatterlebih dahulu form yang digunakan untuk mengupload file nantinya ...<html><head><title>Form Upload</title></head><body><form enctype="multipart/form-data" action="upload.php" method="post"><p><!-- MAX_FILE_SIZE digunakan untuk membatasi size/ukuran file yang akandi upload --><input type="hidden" name="MAX_FILE_SIZE" value="102400" /><input type="file" name="file" /><br/><input type="submit" value="upload!" /></p></form></body></html>Kita coba lihat dulu di browser. Oke, selanjutnya kita akan membuat sebuah file untukmenerima inputan dari form upload tersebut untuk selanjutnya di letakkan di serverdalam folder yang terpilih. dalam hal ini saya meletekkannya dalam folder upload, namunterlebih dahulu kita buat 1 buah folder dengan nama upload. Setelah beres kita coba buatscript untuk menyimpan file yang di upload ke dalam folder upload tersebut :<?php// ketika filenya dikirim ...if ( isset( $_FILES[file] ) ) {// file yang dikirim memiliki atribut sesuai dengan nama input file// pada formnya// tadi saya membuat input file upload dengan nama file// sehingga dalam mengakses nama file tersebut// kita cukup memanggil $_FILES[file][nama]// seperti iniBab 7: Lebih Jauh dengan Form 145Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 153. echo "name: ". $_FILES[file][name]."<br />";// begitu juga jika ingin mengetahui atribut yang lain seperti sizenya,// tmp_namenya,// type data yang di upload...// dan lain lain sebagainya .. echo "size: ". $_FILES[file][size]." bytes<br />"; echo "temp name: ".$_FILES[file][tmp_name]."<br />"; echo "type: ". $_FILES[file][type]."<br />"; echo "error: ". $_FILES[file][error]."<br />";// lakukan pemilihan file// disini hanya dapat menerima file dengan tipe image/jpeg// atau gmabar ...// jika gambar yang di upload itu bertipe jpep atau gambar if ( $_FILES[file][type] == "image/jpeg" ) {// kemudian ambil letak file temporary,// ini dilakukan karena ketika file itu di upload// server php dalam hal ini apache secara otomatis meletakkannya// sebagai temporary file $source = $_FILES[file][tmp_name];// kemudian buat target atau akan di letakkan di mana file tersebut $target = "./upload/".$_FILES[file][name];// setelah file temporarinya sudah di definisikan// dan kemudian file tujuan akhir, atau akan di letakkan di mana file// yang akan di upload tadi// selanjutnya adalah memindahkan file temporari tersebut ke dalam// folder tujuan, yakni folder upload move_uploaded_file( $source, $target );// untuk mendapatkan ukuran atau size dari image yang di upload ... $size = getImageSize( $target );// kemudian tampilkan image yang telah di upload tersebut ke dalam// halaman yang saat ini di akses ...// dalam hal ini file tersebut adalah upload.php $imageupload = "<p><img width="$size[0]" height="$size[1]"" . "src="$target" alt="uploaded image" /></p>"; echo $imageupload; }Bab 7: Lebih Jauh dengan Form 146Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 154. }?> Oke, langsung saja kita tes di browser ... dan hasilnya adalah ... file yang di uploadakan secara otomatis di kopikan kedalam folder upload, ini bisa anda lihat pada direktoric:xampphtdocsxxxupload. Oke setelah semua selesai anda bisa coba untukmengulangnya kembali agar anda semakin terbiasa dan mahir nantinya ... Selanjutnya saya akan bahas bab 8 mengenai pengiriman email menggunakan php.Bab 7: Lebih Jauh dengan Form 147Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 155. Bab 8:Mengirim Emailmenggunakan PHP8.1 Mulai mengirim email Ketika seorang user melakukan pendaftaran akun pada suatu website, secaraotomatis biasanya website tersebut mengirim email yang memberitahukan jika usertersebut telah terdaftar, dan perlu di lakukan aktivasi sebelum dapat digunakan. Begitujuga ketika pemberitahuan akan adanya news update, seorang admin website secaraotomatis mengirimkan berita melalui email secara otomatis. Fitur email biasanya di sediakan oleh hosting yang anda bayar, di localhost punanda bisa mengirim email dengan fasilitas mercury dari xampp, namun saya tidak akanmenjelaskan untuk setting email menggunakan mercury di localhost, karena untukmengirim email anda memerlukan DNS Server yang memiliki IP Publik tersendirisehingga dapat mengirim email, dan email yang di kirim pun jika DNS nya tidakteregistrasi maka akan di anggap sebagai bulk email atau spammer, oleh karena di sinisaya hanya jelaskan bagaimana mengirim email pada hosting. Oke pertama siapkanterlebih dahulu hostingya ... untuk percobaan anda dapat menggunakan hosting-hostingyang gratisan. Sebagai contohnya di sini saya akan menggunakanhttp://www.byethost.com/ Anda dapat melakukan registrasi terlebih dahulu di situ.Setelah beres, kita coba masuk ke dalam salah satu direktori. Terus kita buat filenyamail.basic.php , untuk mengirim email menggunakan php, syntaxnya adalah seperti ini :mail(to,subject,message,header,parameter)Bab 8: Mengirim Email Menggunakan PHP 148Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 156. sehingga di mail.php kita ketika seperti ini, sebagai contoh ...<?php$to = alkemail@gmail.com$subject = "Email Contoh";$message = "Ini adalah email Contoh ... ";$header = "From: <alk@bytehouse.com>";// kemudian untuk mengirim email$sent = mail($to, $subject, $message, $header);if($sent) { echo "Email contoh sudah terkirim..."; }else { echo "Gagal kirim email!"; }?>Bab 8: Mengirim Email Menggunakan PHP 149Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 157. 8.2 Mengirim email dalam bentuk HTML Antara Mengirim email bentuk biasa, dengan mengirim email dalam bentuk html,tidak terlalu berbeda, yang jadi perbedaan hanya di bagian headernya saja, di dalam emailformat html anda perlu menambahkan beberapa atribut ke dalam header. Di mana headerinilah yang berperan penting untuk menjelaskan kepada email reader itu sebagai emaildalam format html. Sebagai contohnya ... kita akan buat satu buah script yang dapatmengirim email menggunakan HTML.<?php$to = alkemail@gmail.com$subject = "Email Contoh";$message = "<h1>Ini adalah email Contoh</h1>... <br />Tutorial TerbaruWeb Development silahkan kunjungi ... <ahref=http://www.ilmuwebsite.com>Ilmuwebsite.com</a>";// Always set content-type when sending HTML email$header = "MIME-Version: 1.0" . "rn";$header .= "Content-type:text/html;charset=iso-8859-1" . "rn";$header .= From: <alk@bytehouse.com>. "rn";$header .= Cc: <myboss@example.com> . "rn";$sent = mail($to, $subject, $message, $header);if($sent) { echo "Email contoh sudah terkirim..."; }else { echo "Gagal kirim email!"; }?>oke, langsung saja kita coba ...Bab 8: Mengirim Email Menggunakan PHP 150Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 158. 8.3 Menyisipkan gambar dalam email format htmlUntuk menyisipkan gambar dalam email format html, anda cukup memanggil letakgambarnya saja, kemudian di letakkan di bagian src nya ... sama seperti ketika andamembuat halaman html yang memuat gambar. Kita buat script untuk mengirim email ..<?php$to = alkemail@gmail.com$subject = "Email Contoh";$message = "<h1>Ini adalah email Contoh</h1>... <br />Tutorial TerbaruWeb Development silahkan kunjungi ... <a href = http://www.ilmuwebsite.com >Ilmuwebsite.com </a> <br /> <img src=http://xxx.xxxx.xxxx/>";// Always set content-type when sending HTML email$header = "MIME-Version: 1.0" . "rn";$header .= "Content-type:text/html;charset=iso-8859-1" . "rn";$header .= From: <alk@bytehouse.com>. "rn";$header .= Cc: <myboss@example.com> . "rn";$sent = mail($to, $subject, $message, $header);if($sent) { echo "Email contoh sudah terkirim..."; }else { echo "Gagal kirim email!"; }?>Bab 8: Mengirim Email Menggunakan PHP 151Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 159. Bab 9:Autentikasi denganhtaccess, htpasswd,Session dan Cookies9.1 Menggunakan Session dan Cookies untuk halaman login Session dan Cookies boleh dibilang merupakan sesuatu yang sangat penting dalampembagian hak akses, antara user yang belum login, dengan user yang sudah login...dalam wordpress misalnya, cuma user yang sudah login saja yang bisa mempostingartikel, namun user yang belum login tidak bisa melakukannya. Contoh yang lain...misalkan dalam forum, anda tidak diperkenankan membuat thread baru jika anda belummelakukan login, mungkin contoh yang lainnya, anda tidak bisa membuat wall statusbaru jika anda belum login ke facebook anda. Semua berhubungan dengan login, namun apa yang berada di balik kode-kode logintersebut, hampir semua login pada aplikasi web atau website itu menggunakan sessiondan cookies untuk membedakan kondisi user yang sudah login dan belum login, namunsebelum mengetahui lebih lanjut, saya akan coba jelaskan terlebih dahulu apa itu sessiondan apa itu cookies...Session Session merupakan variable global yang jika diregistrasikan atau didefinisikanmaka variable tersebut dapat di akses di halaman manapun. ketika kita meregistrasikansession, maka php akan kepada browser untuk menyimpan session yang ada, sehinggaBab 9: Autentikasi dengan htaccess, htpasswd, Session dan Cookies 152Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 160. session disimpan oleh browser sementara mirip dengan pengandaian sebuah tiket masuk.setiap halaman php yang membutuhkan adanya login akan mengecek apakah variablesessionnya sudah diregistrasikan. jika sudah maka, halaman php tersebut akanmempersilahkan user dapat mengaksesnya... Oke, karena session memiliki tugas khusus dan session bertugas sebagai variableglobal yang dapat di akses di halaman mana saja, sehingga session pun membutuhkanfungsi tersendiri untuk dapat menjalankannya. Standarnya membuat session adalah seperti ini :<?php// fungsinya terlebih dahulusession_start();// dan standarnya setiap session_start digunakan// dan ketika user mengakses halaman tersebut biasanya memiliki// session_id tersendiri kita tesecho session_id();// session_id(() akan selalu berbeda setiap anda menjalankan browser?>kita akan buat 2 buah file, file pertama digunakan untuk meregistrasikan/mengesetsession, file yang kedua berguna sebagai halaman untuk mengetes apakah sessionnyatelah berfungsi dengan benar, jika benar maka file yang kedua itu dapat menampilkan isidari session yang sebelumnya telah diregistrasikan pada halaman pertama ...file pertama, session_reg_first.php :<?php// untuk membuat session, diperlukan fungsi khusus yang dapat// memproduksi session// yakni, dan jangan lupa untuk meletakkan sessio_start di baris paling// awal setelah <?phpsession_start();$_SESSION[first] = "saya adalah session";echo "Anda telah meregistrasikan session berisi <strong>".$_SESSION[first] . "</strong>";session_destroy();Bab 9: Autentikasi dengan htaccess, htpasswd, Session dan Cookies 153Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 161. ?><br /><a href="other_page.php">klik di sini untuk pindah halaman</a>kemudian file selanjutnya other_page.php :<?phpsession_start();echo "Anda telah membuat session di halaman sebelumnya, berisi<strong>" . $_SESSION[first]."</strong>";session_destroy();?>Kita coba tes di browser. Begitu juga jika anda ingin mengakses session yang telah dibuatpada halaman lain. Misalkan kita buat satu buah file sembarang yang file ini juga di cobauntuk mengakses. Kita beri nama file tersebut misalnya random.php<?php// jangan lupa untuk memasukkan fungsi session_start setiap akan// meregistrasi atau mengakses sessionsession_start();// kita coba akses variable session yang telah di setecho "isi dari session yang aktif ".$_SESSION[first];?>Menghapus atau menonaktifkan SessionAda satu pertanyaan bagaimana caranya untuk menonaktifkan atau menghilangkansession yang telah dibuat :<?phpsession_start();unset($_SESSION[first]);echo "Isi $_SESSION[first] adalah ... = " . $_SESSION[first];// jika ingin memusnahkan semua session yang ada// anda dapat menggunakan session_destroy// biasanya hal ini digunakan ketika proses logout terjadi// semua session yang ada benar-benar di hapus// penggunaanya adalah seperti inisession_destroy();Bab 9: Autentikasi dengan htaccess, htpasswd, Session dan Cookies 154Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 162. echo "<br />Semua session telah di hapus ...";?>CookieJika session itu akan berakhir ketika browser ditutup, namun jika cookie itu akan berakhirpada waktu yang ditentukan oleh web developer sebelumnya. Contoh penggunaan cookieadalah seperti ini :// pertama kita buat terlebih dulu file cookie1.php<?php// lalu di sini kita siapkan variable untuk cookienya$isicookie = "ini adalah isi dari cookie";// kemudian kita buat cookienya dengan lama waktu 1 jam misalnya ...// di hitung dengan menggunakan satuan waktu detiksetcookie("cookie1", $isicookie, time()+3600);// untuk dapat mengakses cookie anda dapat menggunakan sintaxecho $_COOKIE["cookie1"];?>Dan misalkan kita ingin mengakses cookie di halaman yang lain juga bisa, kita buathalaman lain untuk mengakses cookie :<?php// kemudian langsung akses variable cookienyaecho $_COOKIE["cookie1"];?>Begitu jika ingin menghapus atau menghilangkan cookie yang ada, kita buat satu buahfile lagi deletecookie.php<?php// hapus cookie yang ada dengan unsetunset($_COOKIE[cookie1]);echo $_COOKIE[cookie1];?>Bab 9: Autentikasi dengan htaccess, htpasswd, Session dan Cookies 155Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 163. Bab 10:Studi kasus SistemInformasi AdministrasiMahasiswa Setelah kita mendalami bagaimana menggunakan PHP dan MySQL pada bab-babsebelumnya, tentunya saat ini pengetahuan anda akan PHP dan MySQL jelas berbedaketika anda belum membaca ebook buatan penulis yang ganteng ini . Setidaknya yangsaya harapkan dari pembuatan ebook php ini adalah skill anda sekarang sedikitbertambah dari sebelumnya, jika saat ini masih terdapat kesamaan dengan sebelumnya,berarti saya menyarankan kepada anda untuk melihat ebook php ini dari awal sekali lagi,namun jika anda telah berkali kali melihat ebook php ini dan tidak ada penambahan skill,maka sebaiknya anda mengirimkan pertanyaan ke email saya di alkemail@gmail.com. Skill dasar hingga menengah untuk php dan mysql telah didapatkan, nah sekarangbagaimana mengimplementasi skill yang telah kita dapatkan sebelumnya. Oke, kita akanmembuat sistem informasi Administrasi Mahasiswa. Namun Sistem Informasi Yang satu ini pun memiliki beberapa fitur layaknyasebuah blog, anda dapat memasukkan berita/artikel, dan user bisa memberikan komentardari berita/artikel yang anda masukkan.Sistem Informasi Administrasi ini memiliki fitur antara lain : 1. Form Pendaftaran Mahasiswa (FrontEnd) 2. Daftar Calon Mahasiswa Baru (BackEnd)Bab 10: Studi kasus Sistem Informasi Administrasi Mahasiswa 156Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 164. 3. Form Pengisian Nilai Mahasiswa (BackEnd) 4. Daftar Nilai Mahasiswa (BackEnd) 5. Fitur News/Article Update Ala Blog (Frontend BackEnd) 6. Fitur Comment Article Ala Blog (FrontEnd)FrontEnd disini berarti, di peruntukkan untuk user/publik saja yang bisa melihat.Sedangkan BackEnd disini berarti, hanya si aadmin saja yang dapat mengakses, termasukdidalamnya menambah, melihat, mengedit, ataupun menghapus. (CRUD) Create, Read,Update, Delete.Bab 10: Studi kasus Sistem Informasi Administrasi Mahasiswa 157Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 165. 10.1 Merancang Sistem Informasi Hampir dalam semua bidang, ketika kita akan membuat satu produk, baik itu daribidang kimia, mesin, dan lain sebagainya, semua di rancang terlebih dahulu, sebelumakhirnya benar-benar di buat. Perancangan ini perlu karena, dalam perancangan inilahsemuanya benar-benar diperhitungkan secara matang. Dalam proses perancangan sistem informasi, yang harus dibuat pertama kalinyaadalah, desain dari aplikasi yang akan kita buat. Biasanya saya sendiri mengawalinyadengan pseudo code, artinya rancangan yang berada dalam otak kita, apa yang akan kitabuat, dan selanjutnya kita konversikan ke dalam desain interface. Di sini saya hanya akanmenjelaskan desain interface nya saja. Berdasarkan fitur-fitur yang kita inginkan, adabeberapa desain interface yang akan kita buat.Kita bagi berdasarkan peletakkan halaman, satu untuk admin dan satu untuk user/publicadmin Halaman Login Admin Halaman Pengisian Nilai Mahasiswa Halaman Daftar Nilai Mahasiswa Halaman Daftar Mahasiswa Halaman Daftar Calon Mahasiswa Baru Halaman Pembuatan/Penambahan/Pengeditan Artikel Baru Halaman Daftar Artikel Halaman User Edit+Delete+Add Halaman Edit+Delete Komentaruser/publik Halaman Login Halaman Registrasi User Baru Halaman Pendaftaran Mahasiswa Baru Halaman Komentar Halaman Melihat Nilai MahasiswaBab 10: Studi kasus Sistem Informasi Administrasi Mahasiswa 158Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 166. 10.2 Mempersiapkan databaseTable yang harus dipersiapkan dalam pembuatan sistem informasi berbasis web yangtelah kita rancang sebelumnya :tbl_cln_mhsiswatbl_mhsiswatbl_usertb_user_profiletbl_nilai_mahasiswatbl_artikeltbl_komentarcreate table tbl_cln_mahasiswa (id_daftar int(5) auto_increment primarykey, tanggal_daftar date, nama_pendaftar varchar(75), jns_kelaminvarchar(15), status varchar(35), lulusan_sekolah varchar(75),tahun_ajaran varchar(30), tgl_lahir date, pekerjaan varchar(120),alamat varchar(200), kelurahan varchar(45), kecamatan varchar(45), kotavarchar(45), provinsi varchar(45), telp varchar(50), emailvarchar(55), website varchar(75));create table tbl_mhsiswa (id_mahasiswa int(5) auto_increment primarykey, nama_mahasiswa varchar(75), jns_kelamin varchar(15), tgl_lahirdate, status varchar(35), jurusan varchar(75), nim int(15),lulusan_sekolah varchar(75), tahun_ajaran varchar(30), pekerjaanvarchar(75), alamat varchar(200), kelurahan varchar(45), kecamatanvarchar(45), kota varchar(45), provinsi varchar(75), telp varchar(50),email varchar(55), website varchar(75));create table tbl_user_profile (id_user int(5) auto_increment primarykey, nama varchar(75), tgl_lahir date, jns_kelamin varchar(15), statusvarchar(50), pekerjaan varchar(50), alamat varchar(200), kelurahanvarchar(75), kecamatan varchar(75), kota varchar(75), provinsivarchar(75), telp varchar(50), email varchar(55), website varchar(75));create table tbl_nilai_mahasiswa (id_nilai int(5) auto_incrementprimary key, nim int(20), mata_kuliah varchar(50), nilai_mahasiswavarchar(3), dosen_mata_kuliah varchar(50));create table tbl_artikel (id_artikel int(5) auto_increment primary key,tanggal_publish date, penulis varchar(50), judul_berita varchar(200),isi_berita text, status varchar(20));create table tbl_komentar (id_komentar int(5) auto_increment primarykey, id_berita_kampus int(5), tanggal_komentar date, statusBab 10: Studi kasus Sistem Informasi Administrasi Mahasiswa 159Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 167. varchar(20), nama varchar(75), isi_komentar text, email varchar (50),website varchar(50));create table tbl_user (id_user int(5) auto_increment primary key,username varchar(50), password varchar(128), level varchar(50));Atau bisa juga langsung melalui file latihan10.sql yang disertakan dalamfilelatihanbab10. Itu adalah daftar dari table yang dibutuhkan dalam membuat sistemadministrasi mahasiswa sederhana namun bersifat fundamental.Bab 10: Studi kasus Sistem Informasi Administrasi Mahasiswa 160Oleh : Loka Dwiartara | http://www.ilmuwebsite.com
- 168. 10.3 Mempersiapkan fungsi, variable, file yang dibutuhkan dalam pembuatan Sistem Informasi Sistem informasi itu membutuhkan banyak fungsi dalam pembuatannya. Fungsi-fungsi inilah yang kemudian menyusun tubuh dari sistem informasi, sebagai contohmisalnya dalam mempublish artikel nanti ada fungsi yang melihat apakah dalamdatabase itu statusnya published, atau draft, ketika published maka artikel pun akanditampilkan di halaman depan, jika draft, maka tidak tampil. Begitu juga fungsi untukmenginsertkan data kedalam database, sehingga masing-masing fungsi memiliki tugasnyamasing-masing. Sebelum merancang suatu aplikasi, dan sebelum membangun suatu aplikasi atausistem informasi secara utuh, yang harus dilakukan pertama kali adalah, mempersiapkanbagian-bagian yang dibutuhkan. Mulai dari pembuatan table, kemudian menyusun fungsiyang sesuai dengan tablenya. Setelah menyusun fungsi barulah kita menyusun codingnya. Kodenya sudah sayasertakan di dalam file.latihan.php.rar.
Rabu, 18 September 2013
MENGENAL PHP LEBIH DALAM
Nama Riyan Ardinasyah.
Tempat Tanggal Lahir : Tasikmalaya 30 Desember 1996
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar