P. 1
Dasar PHP

Dasar PHP

|Views: 124|Likes:
Published by Bobhadjir

More info:

Published by: Bobhadjir on Jan 30, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

12/06/2012

pdf

text

original

Sections

  • BAB II PHP - SINTAKS
  • BAB III PHP – OPERATOR
  • BAB IV MODULARITAS
  • BAB V ARRAY
  • BAB VI STATEMENT KONTROL
  • BAB VII BEKERJA DENGAN FORM
  • BAB VIII POST AND GET METHOD
  • BAB IX FUNCTION
  • BAB X OPERASI FILE
  • BAB XI OPERASI STRING
  • BAB XII FUNCTION DATE
  • BAB XIII BEKERJA DENGAN SESSION
  • BAB XIV BEKERJA DENGAN COOKIES
  • BAB XV PHP- MySQL
  • BAB XVI SQL INJECTION
  • BAB XVII MEMBUAT CMS SENDIRI

Jl. Alur Laut Blok NN No.

1 Plumpang, Jakart a Ut ara
============================================================================

SMK PERGURUAN CIKINI
WEB DESIGN

PHP

KOLEKSI : MUJIBBUR ROHMAN, S.Si.

Dasar-dasar Pemrograman PHP

BAB I. PHP – INTRODUCTION
Apa Itu PHP?
Berdasarkan informasi dari situs resmi PHP, “PHP.net”, PHP (PHP: Hypertext Prepocessor) merupakan bahasa pemrograman web yang dapat disisipkan dalam script HTML. Banyak sintaks di dalamnya yang mirip dengan bahasa C, Java dan Perl. Tujuan dari bahasa ini adalah

membantu para pengembang web untuk membuat web dinamis dengan cepat.
Ketika seseorang mengunjungi web berbasis PHP, web server akan memproses code-code PHP. Beberapa perintah atau code dari PHP tersebut selanjutnya ada yang diterjemahkan ke dalam HTML dan beberapa ada yang disembunyikan (misalnya proses kalkulasi dan operasi). Setelah diterjemahkan ke dalam HTML, web server akan mengirim kembali ke web browser pengunjung

tersebut.

Apa yang Bisa Dilakukan dengan PHP?
• • • • Mengurangi waktu untuk membuat web berskala besar Mampu menciptakan web interaktif Menciptakan berbagai tool untuk keperluan online (http://www.hotscripts.com/PHP/Scripts_and_Programs/) Mendukung e-commerce (shopping carts)

Modal Dasar Mempelajari PHP
Sebelum mempelajari PHP, Anda harus menguasai • HTML, • Dasar-dasar pemrograman (C/C++ lebih baik)

Aplikasi Yang Diperlukan
Untuk dapat bekerja dengan PHP, berikut ini adalah beberapa aplikasi yang diperlukan: • Web server (Apache, IIS, Personal Web Server/PWS) • PHP server (dapat didownload di PHP.net) • Database server (MySQL, Interbase, MS SQL, dll) • Web Editor (Dreamweaver, Frontpage, dll)
Anda dapat pula menggunakan tool aplikasi yang di dalamnya sudah terdapat web server (Apache), PHP server, dan MySQL yang terintegrasi menjadi satu. Tool tersebut dapat diinstal di PC sebagai sarana belajar PHP. Beberapa contoh tool tersebut diantaranya adalah Easyphp

(Easyphp.org), PHPTriad, AppServe, dll. PHP server dapat berjalan dengan baik di beberapa OS seperti Windows, Linux, dan Macintosh.

Disusun oleh: Rosihan Ari Yuana

1

Dasar-dasar Pemrograman PHP

BAB II PHP - SINTAKS
Kode-kode PHP dituliskan di antara tanda berikut ini: <?php ... ... ... ?> atau <? ... ... ... ?> Apabila Anda membuat kode PHP dan berencana akan mendistribusikan ke pihak/orang lain, maka usahakan untuk menggunakan sintaks <?php ... ?>. Hal ini dikarenakan untuk penggunaan kode yang menggunakan <? ?> terkadang tidak bisa dijalankan dalam server tertentu.

Menyimpan File PHP
Apabila Anda memiliki kode PHP yang disisipkan dalam HTML dalam suatu file dan menginginkan web server dapat menjalankannya, maka file tersebut harus disimpan dalam ekstensi .php. Apabila Anda menyimpannya dengan ekstensi .html atau .htm, maka kode PHP tersebut tidak akan diproses dan akan ditampilkan dalam web browser seperti apa adanya (berupa kode-kode). Contoh: <html> <head> <title>Halaman PHP pertamaku</title> </head> <body> <?php echo "Hello World!"; ?> </body> </html>

Disusun oleh: Rosihan Ari Yuana

2

echo "Hello World! ". Perhatikan contoh berikut ini. Contoh: <html> <head> <title>Halaman PHP </head> <body> <?php echo "Hello World! echo "Hello World! echo "Hello World! echo "Hello World! echo "Hello World! ?> </body> </html> pertamaku</title> ". Pada contoh tersebut diberikan tiga bentuk penulisan kode PHP yang berbeda namun akan dihasilkan tampilan yang sama dalam web browser. pergantian spasi akan diabaikan oleh PHP. ?> </body> </html> <html> <head> <title>My First PHP Page</title> </head> <body> <?php echo "Hello World! ". ". Contoh: <html> <head> <title>Halaman PHP pertamaku</title> </head> <body> <?php echo "Hello World! ". ". ".) Apabila Anda perhatikan contoh sebelumnya. ?> Disusun oleh: Rosihan Ari Yuana 3 . Pindah Spasi Seperti halnya HTML. Dengan kata lain. ".Dasar-dasar Pemrograman PHP Semicolon (. echo "Hello World! ". Tanda semicolon merupakan penanda akhir dari statement PHP dan harus ada. maka terdapat tanda titik koma (semicolon) pada akhir perintah echo. pergantian spasi dalam PHP tidak akan mempengaruhi tampilan hasilnya.

$sebuah_bilangan = 4. bahwa perintah echo digunakan untuk menampilkan teks ke dalam browser. Note: jangan lupa tanda dollar ($) Contoh: <?php $hello = "Hello World!". A-Z. ?> </body> </html> Variabel Misalkan dalam PHP kita akan menyimpan suatu nilai berupa angka atau string dalam suatu variabel.Dasar-dasar Pemrograman PHP </body> </html> <html> <head> <title>Halaman PHP pertamaku</title> </head> <body> <?php echo "Hello World! ". Suatu teks atau string dapat dituliskan di browser dengan langsung dituliskan dalam echo yang diapit oleh dua tanda petik ganda (quotes) Disusun oleh: Rosihan Ari Yuana 4 . Aturan Penamaan Variabel Berikut ini adalah beberapa aturan penulisan nama variabel: • • • Nama variabel harus diawali dengan huruf atau underscore (_) Nama variabel hanya boleh dituliskan dengan alpha numeric a-z. echo "Hello World! ". dapat dipisahkan dengan underscore Echo Seperti yang Anda lihat pada contoh-contoh kode PHP sebelumnya. caranya adalah membuat nama variabel terlebih dahulu kemudian diberikan suatu assignment pada nilai yang diinginkan. ?> Dari contoh di atas tampak bahwa dalam PHP. 0-9 dan underscore Nama variabel yang terdiri lebih dari satu kata. Perhatikan sintaks berikut ini $nama_variabel = nilai. $bilanganYangLain = 8. nama variabel tidak perlu dideklarasikan terlebih dahulu seperti halnya bahasa Pascal atau C/C++.

$huruf_ku = "a". maka berikan tanda slash “\” di depan quotes tersebut. ?> Pada contoh kode pertama di atas akan terjadi error karena dalam teks yang ditulis dalam echo terdapat tanda quotes. Dalam echo. echo $huruf_ku. ?> <?php echo "<font face=\"verdana\" size=\"4\">I love using PHP!</font>".. ?> Penting!!! Hati-hati dalam penulisan suatu string yang di dalamnya terdapat tanda petik ganda (quotes) menggunakan echo. ?> <?php echo "<font face='verdana' size='4'>I love using PHP!</h5>". Berikut ini adalah contohnya: Contoh: <?php $StringKu = "Hello!". Berikut ini adalah contoh-contoh di antaranya: Contoh: <?php $string_ku = "Hello. tanda quotes merupakan penanda awal dan akhir teks/string yang akan ditulis dengan echo. Menampilkan Nilai Variabel dengan Echo Nilai variabel dapat dengan mudah ditampilkan dengan menggunakan echo. sehingga Anda harus memperhatikan hal-hal berikut ini • • • Contoh: <?php echo "<font face="verdana" size="4">I love using PHP!</font>". echo $StringKu. Nama saya: ". Jangan menggunakan tanda quotes di dalam teks yang akan ditulis dengan echo Apabila Anda tetap ingin menuliskan tanda quotes dalam teks yang akan ditulis dengan echo.Dasar-dasar Pemrograman PHP atau menyimpan string atau teks terlebih dahulu dalam suatu variabel kemudian dituliskan dalam echo. Disusun oleh: Rosihan Ari Yuana 5 . Sedangkan untuk kode kedua dan ketiga tidak terdapat error dan akan dihasilkan output yang sama di browser. $bilangan_ku = 4. Selain itu. echo $bilangan_ku. echo "<h5>I love using PHP!</h5>". baik nilai yang berupa bilangan maupun string. dapat pula Anda gunakan tanda petik tunggal (apostrophes) untuk menggantikan tanda quotes pada teks. echo $string_ku.

Contoh: <?php $string_ku = "Hello. Berikut ini contoh menampilkan gabungan suatu nilai dari variabel yang berupa string. echo $string_ku. Kamu siapa? ". // echo "Namaku Faza!"..You can't see my PHP comments!".$baris_baru. Perintah ini dapat digunakan untuk komentar yang terdiri lebih dari satu baris.Dasar-dasar Pemrograman PHP ?> Catatan: Untuk menampilkan nilai variabel dengan echo tanpa menggunakan tanda quotes.$baris_baru. ?> Untuk menggabungkan beberapa string menjadi satu digunakan operator dot (. Nama saya Ari.$string_ku..$string_ku."Amalia"."Ari". Terdapat dua cara memberikan komentar dalam PHP. $baris_baru = "<br>". // Ini akan mencetak Hello World! echo "<br>Psst. echo "No way! My name is Ari-PHP Programmer!". // echo "nothing". Nama saya: ". */ ?> Diberikan tanda // di depan teks komentar. Nama saya Ari. echo "Hi. /* echo "My name is Humperdinkle!". Perintah ini hanya bisa berlaku untuk komentar dalam satu baris Diberikan tanda /* di depan teks komentar dan diakhiri dengan */. echo "Hi. komentar dalam suatu kode PHP tidak akan dieksekusi. Kamu siapa? ". Disusun oleh: Rosihan Ari Yuana 6 . ?> <?php /* Berikut ini adalah perintah untuk menuliskan Hello World */ echo "Hello World!". yaitu • • Contoh: <?php echo "Hello World!".) Komentar dalam PHP Seperti halnya bahasa pemrograman yang lain.

$pengurangan."<br>".2.Dasar-dasar Pemrograman PHP BAB III PHP – OPERATOR Dalam bahasa pemrograman secara umum. Selain dua operator itu masih banyak jenis operator yang lain dalam PHP yaitu: • • • Operator aritmatik Operator perbandingan Gabungan operator aritmatik dan assignment Operator Aritmatik Berikut ini adalah tabel operator aritmatik.". ?> Makna Penjumlahan Pengurangan Perkalian Pembagian Modulus Contoh 2 + 4 6 ."<br>". Misalkan: $x = 4.$perkalian. berikut ini adalah beberapa contoh penggunaan operator perbandingan dan hasilnya.$pembagian. $y = 5. $perkalian = 5 * 3. Anda telah mengenal operator “. Disusun oleh: Rosihan Ari Yuana 7 .2 5 * 3 15 / 3 43 % 10 Operator Perbandingan Perbandingan digunakan untuk menguji hubungan antara nilai dan atau variabel. echo "Menampilkan perkalian: 5 * 3 = ". Sampai saat ini. makna dan contohnya: Operator + * / % Contoh: <?php $penjumlahan = 2 + 4.2 = ". $pembagian = 15 / 3.$penjumlahan. echo "Menampilkan penjumlahan: 2 + 4 = ". echo "Menampilkan pengurangan: 6 . operator digunakan untuk memanipulasi atau melakukan proses perhitungan pada suatu nilai. Operator ini digunakan dalam suatu statement bersyarat yang selalu menghasilkan nilai TRUE atau FALSE."<br>". $pengurangan = 6 . $modulus = 5 % 2. echo "Menampilkan pembagian: 15 / 3 = ". $modulus."<br>". echo "Menampilkan modulus: 5 % 2 = " .” (menggabungkan string) dan “=” (proses assignment).

="hello". $my_str. atau $x = $x + 1. maka perintah yang dituliskan dapat berupa $counter = $counter + 1. Misalkan kita menginginkan proses increment dengan tingkat kenaikan 1. Operasi yang ekuivalen $x = $x + 2. perintah di atas dapat ditulis dalam satu perintah singkat sebagai $counter += 1.Dasar-dasar Pemrograman PHP Operator Makna == Sama dengan != Tidak sama dengan < > <= >= Lebih kecil dari Lebih besar dari Lebih kecil atau sama dengan dari Lebih besar atau sama dengan dari Contoh $x == $y $x != $y $x < $y $x > $y $x <= $y $x >= $y Hasil FALSE TRUE TRUE FALSE TRUE FALSE Kombinasi Operator Aritmatik dan Assignment Dalam pemrograman seringkali dijumpai proses yang melibatkan proses increment. ekuivalen dengan $x -= 1. $x = $x % 5. $x /= 2. dalam PHP. $x++. Operator Contoh += $x += 2. $x--.4. $x = $x * 3. Disusun oleh: Rosihan Ari Yuana 8 . "hello". atau $x = $x – 1. $x = $x / 2. Operator ini hanya digunakan pada proses increment maupun decrement dengan tingkat 1. $x = $x . Berikut ini adalah operator yang termasuk jenis ini: • • Contoh: <?php $x = 4.= $x -= 4. $x %= 5. -= *= /= %= . Berikut ini adalah bentuk-bentuk operator lain jenis ini. $my_str = $my_str . ekuivalen dengan $x += 1. $x++. Operator Pre/Post Increment dan Decrement Operator jenis ini merupakan pengembangan dari operator jenis sebelumnya. $x *= 3. Dari contoh di atas tampak bahwa operator yang digunakan (+=) merupakan gabungan dari operator aritmatik dan assignment.

?> Disusun oleh: Rosihan Ari Yuana 9 . $x = 4. $x--.Dasar-dasar Pemrograman PHP echo "$x. echo "$x.

Teknik yang digunakan adalah membuat menu link dalam suatu modul tersendiri kemudian modul tersebut dipanggil pada setiap halaman web yang diinginkan terdapat menu link di dalamnya. Include() Untuk memudahkan pemahaman.php">Contact Us</a> <br> index. ?> <p>Ini adalah halaman index</p> </body> </html> about.php">Links</a> <a href="contact. menu. kita tidak perlu membuat menu link di setiap halaman web yang ada.php <html> <body> <a href="index. diberikan contoh berikut. Modul-modul kecil tersebut dapat dipanggil sewaktu-waktu diperlukan. Dalam hal ini.Dasar-dasar Pemrograman PHP BAB IV MODULARITAS Suatu pemrograman yang baik seharusnya program yang besar dipecah menjadi programprogram yang kecil yang selanjutnya disebut modul.php">Home</a> <a href="about. dan contact pada setiap halaman web yang kita buat. links.php <?php include("menu.php"). Misalkan kita akan membuat menu link sejumlah 4 buah yaitu index. Dalam PHP juga mendukung konsep tersebut yang selanjutnya diberinama modularitas. Kita dapat menyisipkan isi suatu file/modul lain ke dalam file/modul tertentu.php"). ?> <p>Ini adalah halaman about</p> </body> </html> Dari teknik di atas tampak adanya kemudahan dalam membuat halaman web. about. Bayangkan seandainya kita Disusun oleh: Rosihan Ari Yuana 10 .php <?php include("menu.php">About Us</a> <a href="links. Terdapat 2 perintah/function untuk hal tersebut dalam PHP yaitu menggunakan include dan require.

:/usr/lib/php:/usr/local/lib/php') in include.php on line 2 Fatal error: main(): Failed opening required 'noFileExistsHere.Dasar-dasar Pemrograman PHP punya halaman web sejumlah 100 buah yang kesemuanya ingin diberi menu link tanpa menggunakan teknik di atas.php): failed to open stream: No such file or directory in include.php tidak ada. echo "Hello World!".php' for inclusion (include_path='.php): failed to open stream: No such file or directory in require. Maka dengan menggunakan include() akan dihasilkan tampilan: Warning: main(noFileExistsHere. tentu hal tersebut sangat merepotkan.php on line 2 Disusun oleh: Rosihan Ari Yuana 11 . echo "Hello World!". Berikut ini adalah kode HTML yang dihasilkan oleh browser ketika membuka halaman web index. kode pembangun web dipecah dalam modul-modul. Jadi apa perbedaannya? Sebaiknya mana yang kita gunakan? Perhatikan contoh berikut ini <?php include("noFileExistsHere. ?> dan hasilnya Warning: main(noFileExistsHere. namun ketika di browser akan terlihat menyatu.:/usr/lib/php:/usr/local/lib/php') in require.php").php <html> <body> <a href="index.php' (include_path='.php on line 2 Warning: main(): Failed opening 'noFileExistsHere.php").php">Contact Us</a> <br> <p>Ini adalah halaman index</p> </body> </html> Require() Cara penggunaan maupun fungsi dari require() sama dengan include().php on line 2 Hello World Selanjutnya kita akan gunakan require().php">Home</a> <a href="about. ?> dengan asumsi bahwa file noFileExistxHere. Meskipun secara teknis.php">About Us</a> <a href="links.php">Links</a> <a href="contact. <?php require("noFileExistsHere.

error yang dihasilkan hanya berupa Warning saja dan statement berikutnya masih dapat dijalankan. Disusun oleh: Rosihan Ari Yuana 12 .Dasar-dasar Pemrograman PHP Bandingkan kedua hasil di atas. Pada include(). Sedangkan pada require(). khususnya yang tercetak merah. Dengan demikian statement selanjutnya tidak akan dijalankan. Disarankan agar Anda menggunakan require() dengan harapan bahwa kode PHP yang Anda buat tidak akan diproses apabila terdapat file yang hilang atau tidak ada. error yang dihasilkan berupa Fatal Error. Hal ini terlihat bahwa teks Hello World! Masih ditampilkan di browser.

$gaji["Sally"] = 4000. Sedangkan berikut ini adalah contoh untuk menampilkan nilai dari suatu array berindeks numerik. 2. Berikut ini adalah contohnya. $karyawan[1]. "Clare". $gaji["Bob"] = 2000. 1. <? $karyawan[0] $karyawan[1] $karyawan[2] $karyawan[3] = = = = "Bob". $key dapat berupa suatu string. " & " . "Sally". Disusun oleh: Rosihan Ari Yuana 13 . yaitu " . "Sally". $gaji["Sally"] = 4000. $karyawan[2] . Array Berindeks Numerik Sintaks umum untuk menyatakan suatu array berindeks numerik beserta nilainya adalah $nama_array[$key] = value. … Contoh: $karyawan[0] $karyawan[1] $karyawan[2] $karyawan[3] = = = = "Bob".Dasar-dasar Pemrograman PHP BAB V ARRAY Dalam PHP. $karyawan[3]. "Charlie". "Clare". ?> Array Assosiatif Untuk array assosiatif. echo "Berikut ini adalah 2 orang karyawan saya. dan berikut ini adalah contoh kode untuk menampilkan nilai dari array assosiatif <? $gaji["Bob"] = 2000. Pada array assosiatif. $gaji["Clare"] = 0. $gaji["Charlie"] = 600. Dalam hal ini $key berupa bilangan bulat mulai dari 0. "Charlie". " & " . sintaksnya sama dengan array berindeks numerik namun perbedaannya adalah pada $key. echo "<br>Dua orang karyawan saya yang lain adalah " . indeks untuk array dapat berupa numerik dan dapat pula berupa suatu nilai atau yang sering disebut dengan array assosiatif. $karyawan[0] .

$gaji["Bob"] . $gaji["Clare"] = 0. $gaji["Sally"] . "dan Clare digaji . Disusun oleh: Rosihan Ari Yuana 14 . $gaji["Charlie"] .$" . "Sally digaji . "<br>".$" . "<br>". "Charlie digaji .$" . "<br>".Dasar-dasar Pemrograman PHP $gaji["Charlie"] = 600. $gaji["Clare"].$" . echo echo echo echo ?> "Bob digaji .

. statement2. . statement3.Dasar-dasar Pemrograman PHP BAB VI STATEMENT KONTROL Statement IF … Sintaks dari statement tersebut dalam PHP adalah if (syarat) { statement1. } Untuk menyatakan syarat. biasanya digunakan operator perbandingan seperti yang telah dibahas sebelumnya. Contoh: <? $my_name = "nada". statement2. } echo "Welcome to my homepage!". if ($my_name == "nada") { echo "Your name is ". statement4. } else { statement3. ?> Contoh: Disusun oleh: Rosihan Ari Yuana 15 . . statement4.$my_name. . . Bentuk lain dari sintaks IF adalah if (syarat) { statement1. } Untuk sintaks kedua di atas."!"<br>". Apabila syarat bernilai TRUE maka statement-statement yang diapit dengan tanda kurung kurawal akan dijalankan. dst akan dijalankan apabila syarat bernilai FALSE. .

dst akan dijalankan. . Contoh: <? $karyawan = "Bob". } elseif (syarat2) { statement21. . } . Sedangkan jika syarat1 FALSE maka selanjutnya akan dicek untuk syarat2. } elseif($karyawan == "Bob") { echo "Hello Bob!". dst baru akan dijalankan apabila semua syarat sebelumnya bernilai FALSE.Dasar-dasar Pemrograman PHP <? $number = 3. sedangkan jika syarat2 FALSE akan dicek syarat berikutnya (jika masih ada). . statement12. . } else { echo "Salah". statement2. . statement2. } Jika syarat1 bernilai TRUE. Statement1. maka statement11. if($karyawan == "Tanner") { echo "Hello Tanner!". Disusun oleh: Rosihan Ari Yuana 16 . if ($number == 4) { echo "Benar". . statement22. statement12 dst akan dijalankan. Jika syarat2 TRUE maka statemen21. . else { statement1. statement22. } ?> Terdapat pula bentuk sintaks berikutnya dari IF … yaitu dengan ditambahkan elseif if (syarat1) { statement11.

break. default: statementdefault1. statementdefault2. nilai dari variabel akan dicek pada setiap option yang ada (terletak di bagian case). } Statement SWITCH Sintaks dari statement ini adalah switch (variabel) { case option1: statement11. case option2: statement21. boleh tidak). case "Tokyo": echo " $900". Bagian default adalah optional (boleh ada. break. . break. case "Egypt": echo " $1750". . Contoh: <?php $tujuan = "Tokyo". break. . . echo "Biaya Perjalanan Menuju $tujuan adalah ". switch ($tujuan){ case "Las Vegas": echo " $500". maka statement-statement di bawah option tersebutlah yang akan dijalankan. break. break. } Pada sintaks di atas. break.Dasar-dasar Pemrograman PHP } else { echo "Hello!". . Disusun oleh: Rosihan Ari Yuana 17 . case "Amsterdam": echo " $1500". Jika ada option yang sama dengan nilai variabel. statement12. . . statement22. .

. case "Tokyo": echo " $900". break. default: echo " $100". selama syarat bernilai TRUE maka statement-statement di dalam while akan terus dijalankan secara berulang-ulang. Sedangkan apabila FALSE. Dengan kata lain. break. Disusun oleh: Rosihan Ari Yuana 18 . switch ($tujuan){ case "Las Vegas": echo " $500". break. . case "Amsterdam": echo " $1500". Apabila TRUE maka statement akan dijalankan. echo "Biaya Perjalanan Menuju $tujuan adalah ". statement. Perulangan baru akan berhenti apabila syarat bernilai FALSE. } Pada sintaks di atas. break. perulangan akan langsung berhenti. } <? Statement WHILE Statement ini digunakan untuk mengerjakan suatu statement secara berulang-ulang sampai suatu syarat dipenuhi.Dasar-dasar Pemrograman PHP case "Caribbean Islands": echo " $700". break. break. break. Sintaksnya adalah while (syarat) { statement. case "Caribbean Islands": echo " $700". terlebih dahulu akan dicek syarat nya apakah bernilai TRUE atau FALSE. } ?> Contoh: <?php $tujuan = "New York". Sebelum statement yang diulang-ulang dilakukan. case "Egypt": echo " $1750". yaitu apabila syaratnya langsung bernilai FALSE. statement dalam WHILE bisa jadi tidak akan pernah dilakukan.

echo "Rp. echo "<td><b>Harga</b></tr></td>". echo "</td></tr>". syarat. ?> Kode di atas akan menampilkan hasil di browser berupa tabel yang berisi jumlah sikat dan harganya. echo "<table border=\"1\" align=\"center\">". Statement FOR Statement FOR mirip dengan WHILE yang memiliki sintaks berikut ini for (inisialisasi counter. 1. . echo "</td></tr>".$harga_sikat * $jumlah_sikat. ". echo "</td><td>". echo $jumlah_sikat. echo "<table border=\"1\" align=\"center\">". increment/decrement counter) { statement. echo "Rp. Coba bandingkan dengan kode contoh while sebelumnya. echo "<tr><td><b>Jumlah Sikat</b></td>". for ($jumlah_sikat = 10. berikut ini adalah contoh kode dengan for untuk menghasilkan tampilan yang sama dengan contoh while sebelumnya (tentang jumlah sikat dan harganya). $jumlah_sikat = 10. ". } Disusun oleh: Rosihan Ari Yuana 19 . echo "<td><b>Harga</b></td></tr>". echo "<tr><td><b>Jumlah Sikat</b></td>". . echo "</td><td>".$harga_sikat * $jumlah_sikat.500. Jumlah sikat yang ditampilkan adalah kelipatan 10 dengan batas sampai 100 buah. dengan asumsi harga sebuah sikat adalah Rp. echo $jumlah_sikat. $jumlah_sikat+=10) { echo "<tr><td>". Contoh: <? $harga_sikat = 1500.Dasar-dasar Pemrograman PHP Contoh: <? $harga_sikat = 1500. $jumlah_sikat = $jumlah_sikat + 10. $jumlah_sikat <= 100. } Untuk memperjelas pemahaman tentang FOR. } echo "</table>". while ( $jumlah_sikat <= 100 ) { echo "<tr><td>".

<? $UsiaKaryawan["Lisa"] = "28". . $UsiaKaryawan["Grace"] = "34". ?> Statement Foreach Misalkan Anda punya data berupa array assosiatif yang akan diproses secara berulang-ulang. $UsiaKaryawan["Rachel"] = "46". misalkan Anda memiliki 5 orang karyawan dengan usianya masing-masing yang ditulis dalam kode PHP sebagai berikut $UsiaKaryawan["Lisa"] = "28". $UsiaKaryawan["Grace"] = "34". . . . $UsiaKaryawan["Jack"] = "16". $UsiaKaryawan["Rachel"] = "46"." th <br>".Dasar-dasar Pemrograman PHP echo "</table>". } ?> Statement DO WHILE Statement ini merupakan bentuk modifikasi dari WHILE. Disusun oleh: Rosihan Ari Yuana 20 . $UsiaKaryawan["Jack"] = "16". $UsiaKaryawan["Ryan"] = "35". } while (syarat). Usia: $umur". } Sebagai contoh. maka PHP menyediakan statement foreach yang mudah digunakan. Sintaksnya adalah: foreach(variabelarray as kunci => value) { statement. $UsiaKaryawan["Ryan"] = "35". Berikut ini adalah contoh kode PHP yang akan menampilkan semua karyawan beserta usianya dengan menggunakan foreach. Sintaksnya adalah sebagai berikut do { statement. foreach($UsiaKaryawan as $Nama => $umur) { echo "Nama Karyawan: $Nama.

do { echo "Mmmmm. Disusun oleh: Rosihan Ari Yuana 21 . terlebih dahulu syarat akan dicek.. Dilihat dari posisi statement yang diulang.. while($kue > 1) { echo "Mmmmm.Aku suka kue! Nyam. Prinsip kerja DO WHILE sama dengan WHILE yaitu statement akan terus dikerjakan selama syarat bernilai TRUE dan perulangan akan berhenti apabila FALSE."..nyam."... Sedangkan pada DO WHILE.nyam. sebelum statement yang diulang dikerjakan.. " dst tidak akan ditampilkan karena syaratnya langsung bernilai FALSE (perulangan berhenti). } while ($kue > 1).nyam. Aku suka kue! Nyam. } ?> <? $kue = 0. sebelum syarat dicek TRUE atau FALSE nya.nyam.Dasar-dasar Pemrograman PHP Coba bandingkan dengan sintaks WHILE sebelumnya. statement akan dikerjakan terlebih dahulu. Sedangkan pada WHILE. ?> Pada kode WHILE.. teks akan ditampilkan dahulu kemudian perulangan berhenti (syarat bernilai FALSE).. teks "Mmmm…. posisi statement yang diulang pada DO WHILE terletak di atas syarat... Dengan demikian. Perhatikan contoh berikut ini yang membandingkan DO WHILE dengan WHILE Contoh: <? $kue = 0.

Dasar-dasar Pemrograman PHP

BAB VII BEKERJA DENGAN FORM
Setelah kita belajar dasar-dasar perintah PHP, sekarang saatnya mengaplikasikannya pada aplikasi web. Biasanya PHP digunakan sebagai pengolah data yang diinputkan melalui form yang dibuat dengan HTML. Sebagai contoh, andaikan Anda memiliki toko virtual dalam web yang menjual alat-alat tulis seperti pensil, buku tulis, dan ballpoint. Berikut ini adalah salah satu bentuk kode HTML yang digunakan untuk membuat form pemesanan pembelian barang-barang tersebut. <html><body> <h2>Toko Alat Tulis Amalia</h2> <form action="proses.php" method="post"> <select name="barangpesanan"> <option>Pensil</option> <option>Buku Tulis</option> <option>Ballpoint</option> </select> Jumlah pesanan: <input name="jumlah" type="text"> <input type="submit" value="Submit"> </form> </body></html> Seperti yang Anda lihat pada kode HMTL di atas, perintah action="proses.php" digunakan untuk mengarahkan ke file PHP yang digunakan untuk memproses barang pembelian ketika tombol submit ditekan. Dalam form yang dihasilkan dari kode di atas terdapat 2 buah komponen input yaitu berbentuk combobox dan textbox. Untuk combobox, diberi nama “barangpesanan” (perhatikan perintah <select name="barangpesanan">) dan textbox diberi nama “jumlah” (perhatikan perintah <input name="jumlah" type="text">). Penjelasan mengenai method="post" akan dijelaskan pada bab berikutnya. Sedangkan berikut ini adalah salah satu contoh kode PHP untuk memproses input dari form di atas. Kode PHP ini disimpan dengan nama proses.php. <html><body> <?php $jumlah = $_POST['jumlah']; $barangpesanan = $_POST['barangpesanan']; echo "Anda memesan ". $jumlah . " " . $barangpesanan . ".<br>"; echo "Terima kasih atas kesediaan Anda memesan barang dari kami!"; ?> </body></html> Kalau Anda perhatikan, terdapat keterkaitan perintah $_POST['xxx']; dengan "xxx" pada name = "xxx" (nama komponen input).

Disusun oleh: Rosihan Ari Yuana

22

Dasar-dasar Pemrograman PHP

BAB VIII POST AND GET METHOD
Pada contoh sebelumnya (Bab 7), kita mengirim data input dari form menuju ke file PHP untuk diproses menggunakan metode post. Selain metode tersebut, terdapat pula metode get. Lantas perbedaannya apa? Kapan kita gunakan metode post atau get? Itulah yang akan dibahas pada bab ini. Untuk melihat perbedaan post dan get, kita akan sedikit mengubah file HTML form dan file PHP proses.php sebelumnya. <html><body> <h2>Toko Alat Tulis Amalia</h2> <form action="proses.php" method="get"> <select name="barangpesanan"> <option>Pensil</option> <option>Buku Tulis</option> <option>Ballpoint</option> </select> Jumlah pesanan: <input name="jumlah" type="text"> <input type="submit" value="Submit"> </form> </body></html> dan isi proses.php nya adalah <html><body> <?php $jumlah = $_GET['jumlah']; $barangpesanan = $_GET['barangpesanan']; echo "Anda memesan ". $jumlah . " " . $barangpesanan . ".<br>"; echo "Terima kasih atas kesediaan Anda memesan barang dari kami!"; ?> </body></html> Perbedaan kode HTML dan PHP di atas dengan sebelumnya adalah yang dicetak merah. Metode pengiriman data input dari form menggunakan get, dan dalam proses.php $_POST diganti dengan $_GET. Apabila aplikasi di atas dijalankan, maka secara sekilas hasil yang tampak sama dengan ketika digunakan metode post. Namun, coba perhatikan URL yang tampak ketika proses.php muncul. Pada URL tersebut terdapat tambahan ?barangpesanan=...&jumlah=... setelah nama file (proses.php). Titik-titik tersebut akan diisi dengan data sesuai dengan yang diinputkan pada form. Coba bandingkan dengan URL ketika digunakan metode post. Data isian pada form tidak ditampilkan pada URL. Sehingga inilah perbedaan antara keduanya. Dengan demikian, hendaknya kita jangan menggunakan metode get ketika akan memproses data input melalui form. Bayangkan seandainya form tersebut digunakan untuk login atau untuk keperluan yang menyangkut privasi. Apabila Anda gunakan metode get, maka semua input data

Disusun oleh: Rosihan Ari Yuana

23

Dasar-dasar Pemrograman PHP

akan ditampilkan pada URL. Bisa-bisa password Anda akan kelihatan di URL (jika terdapat input password ketika login). Untuk metode get, biasanya digunakan untuk input data melalui link (bukan melalui form). Untuk contoh aplikasinya dapat dilihat pada contoh-contoh aplikasi pada bab-bab berikutnya.

Disusun oleh: Rosihan Ari Yuana

24

PHP akan menampilkan teks yang di-echo-kan tersebut. } echo "Selamat datang di PT. Statement/perintah dari function dituliskan di dalam kurung kurawal {}. Nama function inilah yang dapat dipanggil sewaktu-waktu diperlukan. Nada Corp. myCompanyMotto(). seperti pada contoh berikut.Dasar-dasar Pemrograman PHP BAB IX FUNCTION Sebuah function merupakan sebuah nama yang kita berikan pada suatu blok program yang sewaktu-waktu dapat kita panggil dan gunakan. Perhatikan contoh berikutnya: Contoh: <?php function myCompanyMotto() { echo "Sabar adalah bagian dari keimanan". bisa di awal. ?> Pada contoh tersebut.. <br>". bagian paling bawah dari kode di atas merupakan cara memanggil function. } myCompanyMotto(). Berikut ini adalah contoh membuat sebuah function sederhana yang di dalamnya tidak ada statementnya. dan akhir dari keseluruhan bagian kode PHP. terdapat perintah echo di dalam function. Sebuah function dapat dipanggil berulang-ulang. ?> Pada contoh di atas. <?php function myCompanyMotto() { echo "Sabar adalah bagian dari keimanan". tengah. myCompanyMotto merupakan nama function. echo "Terima kasih atas kunjungan Anda<br>". <br>". Aturan membuat nama function sama dengan ketika membuat nama variabel (lihat di Bab II). echo "dan ingatlah selalu.. Sehingga begitu nama function dipanggil. Sebuah function dapat diletakkan di bagian manapun. Contoh: <?php function myCompanyMotto() { } myCompanyMotto(). Sedangkan perintah myCompanyMotto(). Disusun oleh: Rosihan Ari Yuana 25 .

Nilai yang dikembalian dapat berupa suatu bilangan (bulat. <?php function UcapanSalam($nama) { echo "Hallo ". } UcapanSalam("Ari". "!<br>". } ?> Pada contoh di atas. ?> Fungsi dengan Parameter Contoh function sebelumnya tidak menggunakan parameter. variabel $nama merupakan parameter dari function. ?> Pengembalian Nilai (Return Value) Sebuah function juga dapat mengembalikan suatu nilai. $nama . Peran parameter adalah sebagai input untuk function yang selanjutnya diolah oleh function tersebut. <?php function UcapanSalam($nama) { echo "Hallo ".Dasar-dasar Pemrograman PHP myCompanyMotto(). UcapanSalam("Budi"). maupun array. UcapanSalam("Amalia". Selanjutnya akan diberikan contoh penggunaan function dengan parameter. "Faza"). " mengucapkan salam kepada ". UcapanSalam("Fauzan"). Nilai dari variabel tersebut akan ditambahkan pada string yang di-echo-kan. real). UcapanSalam("Ahmad"). Berikut ini adalah contoh penggunaan function yang mengembalikan nilai. UcapanSalam("Nada". $nama . dll. ?> Jumlah parameter dari function boleh lebih dari satu. Function hanya dapat mengembalikan sebuah nilai saja. string. <?php function UcapanSalam($kepada. $dari) { echo $dari . "Ari"). <?php Disusun oleh: Rosihan Ari Yuana 26 . } UcapanSalam("Agus"). $kepada . "!<br>". Berikut ini contoh penggunaan parameter pada function. "Amalia"). "<br>". Untuk memisahkan antar parameter digunakan tanda koma. Berikut ini contohnya. UcapanSalam("Fauzan". "Nada").

$bil . bermakna nilai yang dikembalikan function Jumlahkan(3. echo "Nilai bil mula-mula adalah ". $y){ $hasil = $x + $y. $bil = Jumlahkan(3. return $hasil."<br>"."<br>". ?> Function Jumlahkan() di atas mengembalikan nilai dari variabel $hasil yang merupakan hasil penjumlahan dari nilai $x dan $y. $bil . 4) disimpan pada variabel $bil (dalam hal ini nilai $bil adalah 7). Disusun oleh: Rosihan Ari Yuana 27 . echo "Nilai bil setelah memanggil function adalah " . } $bil = 0. 4). Sedangkan perintah $bil = Jumlahkan(3. 4).Dasar-dasar Pemrograman PHP function Jumlahkan($x.

Berikut ini adalah contoh kode PHP untuk membuka file <? $nama_file = "test. 'a+'. Disusun oleh: Rosihan Ari Yuana 28 . ditulisi. Function die() akan menampilkan teks sebagai peringatan apabila proses membuka file gagal. Selain 3 cara membuka file tersebut. fclose($FileHandle). menulis. File yang telah ditutup tidak bisa untuk dibaca. terdapat pula cara lain membuka file yaitu dapat dibaca dan ditulisi (read/write: ‘r+’).Dasar-dasar Pemrograman PHP BAB X OPERASI FILE Pada bab ini akan dipaparkan bagaimana menggunakan perintah PHP untuk melakukan operasi file mulai dari proses membuka dan menutup file. Berikut ini adalah contoh kode PHP untuk menulis suatu string ke dalam file. File yang yang tidak ditutup kemungkinan dapat terjadi kerusakan pada strukturnya. $fh = fopen($nama_file. $FileHandle = fopen($NamaFile. maka function die() yang akan dijalankan. menambah isi. dan hanya untuk ditambahi isinya (append: ‘a’). Untuk bisa melakukan hal itu kembali. Berikut ini adalah contoh kode PHP untuk menutup file yang telah dibuka $NamaFile = "testFile. dan ditambah. <? $FileKu = "testFile. yaitu membuka file hanya untuk dibaca (read: ‘r’). hanya untuk ditulisi baru (write: ‘w’).txt". serta dapat dibaca dan ditambahi isinya (append: ‘a+’). 'w') or die("File tidak bisa dibuka"). 'a'. Apabila nama file yang akan dibuka ternyata salah. 'X') or die("File tidak bisa dibuka").txt". 'r+'. Membuka File Secara umum terdapat 3 cara membuka file. menghapus dan meng-upload file. Menulis ke File File yang telah dibuka dapat ditulisi dengan data di dalamnya. 'r'. hendaknya file tersebut juga ditutup ketika pemrosesan selesai. Setelah itu dilanjutkan dengan proses membaca. atau letak filenya yang tidak tepat. ?> dengan 'X' dapat diganti dengan 'w'. fclose($fh).txt". file terlebih dahulu harus dibuka lagi seperti sebelumnya. Menutup File Setelah file dibuka.

filesize($FileKu)). ?> Setelah Anda lihat di browser. Nilai tersebut menyatakan jumlah karakter awal yang dibaca dari file. echo $Data. fwrite($FileHandle. $DataString = "Hallo Amalia. echo $Data. $FileHandle = fopen($FileKu.txt tidak terdapat tag html <br> untuk pindah baris. $FileHandle = fopen($FileKu. 'r'). Anda juga dapat menggunakan function fgetc() untuk membaca file. Kita dapat menggunakan kode PHP untuk membaca file tersebut dan selanjutnya hasil pembacaan dapat ditampilkan di browser atau diproses lebih lanjut. fclose($FileHandle)..txt".. ternyata ganti baris pada isi file test.. Disusun oleh: Rosihan Ari Yuana 29 .txt". maka pada browser hanya akan menampilkan teks Selam Hal ini dikarenakan adanya nilai 5 pada fread(). fclose($FileHandle).txt". maka isi file yang lama (jika sebelumnya terdapat isi pada file tersebut) akan terhapus dan diganti dengan isi yang baru. $Data = fread($FileHandle. $DataString). fclose($FileHandle).txt yang isinya adalah sbb: Selamat berjumpa lagi kawan!! Senang bertemu Anda. Function ini membaca isi file karakter demi karakter. <? $FileKu = "test. ?> Apabila kode di atas dijalankan. \n". Membaca Isi File Misalkan kita memiliki file dengan nama test. Hal ini dikarenakan dalam file test. oleh perintah fread() akan dibaca dalam satu baris. Sedangkan apabila Anda menginginkan data yang lama pada suatu file tidak dihapus. <? $FileKu = "test. $DataString). <? $FileKu = "test. Meskipun teks dalam file tersebut ditulis dalam 2 baris.Dasar-dasar Pemrograman PHP $FileHandle = fopen($Fileku. 'r'). Berikut ini adalah contoh kode pembacaannya. 'w') or die("File gagal dibuka"). maka Anda gunakan mode append 'a+' atau 'a'. \n". ?> Apabila Anda menggunakan mode 'w' pada fopen(). gunakan function filesize().txt diabaikan. fwrite($FileHandle.. dan selanjutnya Anda menuliskan data pada file. Berikut ini adalah contoh penggunaannya. $DataString = "Hallo Faza dan Nada. Supaya seluruh isi file dapat dibaca. $Data = fread($FileHandle. 5).

echo $Data. Setiap kali pembacaan.txt". ?> Menambah Isi File Maksud dari menambah isi file di sini adalah. $buah2 = "Nanas\n". Berikut ini contohnya. mode pembukaan file nya menggunakan 'a' atau 'a+' dan fwrite() untuk menulis data ke dalam file. ?> Keterangan: Function fgetc() pada kode di atas diletakkan dalam perulangan. Misalkan kita mempunyai file buah. Disusun oleh: Rosihan Ari Yuana 30 . menambah data baru pada file (diasumsikan data sudah ada sebelumnya). 'a') or die("File tidak bisa dibuka"). Menghapus File Dalam PHP. fwrite($fh.txt yang isinya adalah sbb: Jeruk Apel Mangga Selanjutnya kita punya kode PHP sbb: <? $myFile = "buah. fclose($fh). Perintah \n (new line) digunakan untuk ganti baris pada file. $buah2). Berikut ini adalah contohnya. function untuk menghapus file adalah unlink().Dasar-dasar Pemrograman PHP $FileHandle = fopen($FileKu. } fclose($FileHandle).txt. $buah1). Selama belum end of file. proses pembacaan karakter akan berjalan terus. $buah1 = "Anggur\n". fwrite($fh. 'r'). unlink($myFile). ?> Kode di atas akan menambahkan 2 buah data baru ke file buah. $fh = fopen($myFile. while(!feof($FileHandle)) { $Data = fgetc($FileHandle). Untuk menambah isi file dalam PHP.txt". <? $myFile = "testFile. Function feof() digunakan untuk menyelidiki apakah pointer sudah berada di akhir dari file (end of file) atau belum. karakter yang dibaca akan ditampilkan di browser.

Langkah pertama untuk membuat aplikasi web guna upload file adalah membuat formnya terlebih dahulu. $uploadfile)) { echo "File telah berhasil diupload". } else { echo "File gagal diupload". if (move_uploaded_file($_FILES['userfile']['tmp_name'].Si. Selanjutnya kita membuat file upload. S. $_FILES['userfile']['name']. Disusun oleh: Rosihan Ari Yuana 31 .php" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> Nama File : <input name="userfile" type="file" /> <input type="submit" value="Upload" /> </form> Pada form di atas. sering kita menjumpai proses upload file ke server. Berikut ini akan dibahas cara melakukan hal itu. <?php $uploaddir = 'uploads/'. kita membatasi ukuran file yang dapat diupload adalah 30 Kb. $uploadfile = $uploaddir . } ?> KOLEK SI : M R RO UJIBBU HMAN. Berikut ini adalah salah satu contoh form dalam bentuk HTML <form enctype="multipart/form-data" action="upload.Dasar-dasar Pemrograman PHP Upload File Di beberapa aplikasi web.php untuk proses uploadnya.

echo "<br>Karakter 5 ke-$counter ada posisi . } ?> str_replace Function ini memiliki peran yang sama seperti ketika kita menggunakan fasilitas Replace All pada MS. echo "Posisi dari karakter 5 dalam string adalah $posisi". Meskipun demikian. while($offset = strpos($numberedString.Dasar-dasar Pemrograman PHP BAB XI OPERASI STRING strpos Function strpos() digunakan untuk menentukan posisi suatu substring dari sederetan string. Function ini akan menggantikan suatu string dengan string yang lain. echo "$ubahstring". "website". Contoh: $stringawal = "selamat datang di halaman web ini". Kelemahan dari strpos() adalah bahwa function tersebut hanya dapat menentukan posisi suatu substring pada pemunculan pertama. Pada pemunculan substring pada posisi yang berikutnya tidak akan terdeteksi. $stringawal).$offset". Disusun oleh: Rosihan Ari Yuana 32 . ?> Script di atas akan menghasilkan posisi karakter ‘5’ adalah di 4. $offset + 1)){ $counter++. Function ini akan mereturn bilangan integer yang merupakan urutan posisi substring tersebut. Anda masih tetap menggunakannya untuk mencari posisi yang lain dari suatu substring dengan sedikit melakukan pemrograman. Contoh: <? $stringku = "1234567890". "5"). $posisi = strpos($stringku. Word. $ubahstring = str_replace("web". NB: Ingat bahwa index dari array dalam PHP dimulai dari index ke – 0. $counter = 1. "5". Contoh: <? $stringku = "1234567890123456789012345678901234567890". $offset = 0.

"<br>". 'she'. 'sex'). 'her'. $rawstring). $malevals = array('son'. hindari peletakan substring di depan string lain dalam str_replace. The faculty simple adores he2 and you can often hear them say "Attah boy!" Daughter: Welcome Birmingham parent! Your daughter is a pleasure to have! We believe she is learning a lot. $femalevals = array('daughter'. $rawstring). 'she'. 'pronoun'. echo "Son: ". 'pronoun'. 'pronoun2'. $malevals = array('son'. $placeholders = array('offspring'. 'he'. 'girl'). array $placeholder berisi string-string dari $rawstring yang akan diganti. echo "Daughter: ". Hal ini dikarenakan efek str_replace dari string pronoun yang merupakan substring dari pronoun2.<br> The faculty simple adores pronoun2 and you can often hear them say \"Attah sex!\"<br>".Dasar-dasar Pemrograman PHP Function str_replace() juga dapat menggantikan beberapa string secara simultan sekaligus. Dan tampilan script di atas adalah sbb: Son: Welcome Birmingham parent! Your son is a pleasure to have! We believe he is learning a lot. $femalestr = str_replace($placeholders. Untuk menghindari efek kesalahan seperti itu. 'him'. ?> Pada script di atas. 'he'. 'girl'). $placeholders = array('offspring'. $malevals. 'him'. 'sex'). 'boy'). The faculty simple adores she2 and you can often hear them say "Attah girl!" Perhatikan string yang dicetak merah pada tampilan script tersebut. Seharusnya string pronoun2 akan diganti dengan him dan her. $femalevals. 'pronoun2'. Berikut ini hasil modifikasinya: <? $rawstring = "Welcome Birmingham parent! <br> Your offspring is a pleasure to have! We believe pronoun is learning a lot. Disusun oleh: Rosihan Ari Yuana 33 . Berikut ini contohnya: <? $rawstring = "Welcome Birmingham parent! <br> Your offspring is a pleasure to have! We believe pronoun is learning a lot. $femalestr. 'her'. $malestr . $malestr = str_replace($placeholders. $femalevals = array('daughter'. 'boy').<br> The faculty simple adores pronoun2 and you can often hear them say \"Attah sex!\"<br>".

$originalString <br>". echo "Daughter: ". $malestr .$upperCase". $femalestr = str_replace($placeholders. echo "Old string . $rawstring). ?> dan tampilannya adalah Son: Welcome Birmingham parent! Your son is a pleasure to have! We believe he is learning a lot. function ini mengubah semua karakter huruf dari string menjadi huruf kecil. Contoh: <? $originalString = "String Capitalization 1234". echo "Old string . The faculty simple adores him and you can often hear them say "Attah boy!" Daughter: Welcome Birmingham parent! Your daughter is a pleasure to have! We believe she is learning a lot. echo "Son: ".Dasar-dasar Pemrograman PHP $malestr = str_replace($placeholders. Disusun oleh: Rosihan Ari Yuana 34 . $femalestr. $upperCase = strtoupper($originalString). "<br>".STRING CAPITALIZATION 1234 strtolower Kebalikan dari strtoupper(). The faculty simple adores her and you can often hear them say "Attah girl!" strtoupper Function ini digunakan untuk mengubah semua karakter huruf dari suatu string menjadi kapital. echo "New String . $lowerCase = strtolower($originalString). ?> Hasilnya adalah Old string . $malevals. $femalevals.$originalString <br>". $rawstring).String Capitalization 1234 New String . Contoh: <? $originalString = "String Capitalization 1234".

?> Hasilnya adalah Old string .$ucTitleString".$titleString <br />". Selanjutnya potongan-potongan string ini akan disimpan dalam suatu array. fungsi ini digunakan untuk meledakkan/memecah suatu string menjadi potongan-potongan string yang kecil. Perhatikan contoh berikut ini Disusun oleh: Rosihan Ari Yuana 35 . ?> Hasilnya adalah: Old title . echo "New title . echo "New title .$titleString <br>". kemudian huruf pertama dari “help” diberikan perintah ucwords().A Title That Could Use Some HELP Bagaimana cara mengubah HELP menjadi Help (pada tampilan outputnya)? Perhatikan script modifikasi berikut ini <? $titleString = "a title that could use some hELP".$lowerCase".string capitalization 1234 ucwords Karakter huruf pertama dari suatu kata dalam string juga dapat diubah menjadi huruf kapital menggunakan function ini. ?> yaitu dengan cara mengubahnya (“hELP”) ke huruf kecil semua terlebih dahulu (“help”). explode Sesuai namanya “explode”. $ucTitleString = ucwords($titleString). $ucTitleString = ucwords($lowercaseTitle).Dasar-dasar Pemrograman PHP echo "New String . echo "Old title . echo "Old title . Contoh: <? $titleString = "a title that could use some hELP". $lowercaseTitle = strtolower($titleString).a title that could use some hELP New title .$ucTitleString".String Capitalization 1234 New String .

echo "Pecahan 3 = $hasil[2]". Contoh: Disusun oleh: Rosihan Ari Yuana 36 . echo " Phone Number = $PhoneNumber <br>". Contoh: <? $PhoneNumber = "800-555-5555". Karakter yang akan digunakan sebagai dinamit dapat ditentukan sendiri oleh programmer. koma dsb. echo "Pecahan 1 = $hasil[0]<br>". ?> Hasilnya adalah: Phone Number = 800-555-5555 Pecahan 1 = 800 Pecahan 2 = 555 Pecahan 3 = 5555 Pada perintah explode("-". $PhoneNumber). 2). Dengan demikian. $hasil = explode("-". echo "Pecahan 2 = $hasil[1]<br>". dapat berupa spasi. implode Kebalikan dari explode().Dasar-dasar Pemrograman PHP <? $PhoneNumber = "800-555-5555". $PhoneNumber. echo " Phone Number = $PhoneNumber <br>". echo "Pecahan 3 = $hasil[2]". 2). echo "Pecahan 1 = $hasil[0]<br>". $hasil = explode("-". $PhoneNumber. Jumlah pecahan string dari hasil ledakan dapat dibatasi dengan menambahkan jumlah batas ledakan sebagai paramater ketiga dari function explode(). di atas membatasi 2 buah pecahan string dari hasil ledakan. $PhoneNumber). karakter "-" dapat diibaratkan sebagai dinamitnya. echo "Pecahan 2 = $hasil[1]<br>". ?> Hasilnya adalah: Phone Number = 800-555-5555 Pecahan 1 = 800 Pecahan 2 = 555-5555 Pecahan 3 = Perintah explode("-". function implode() digunakan untuk menyatukan pecahan-pecahan string menjadi satu kesatuan string. Dinamit ini apabila diledakkan akan memecah string dari $PhoneNumber. tampak pada hasil bahwa pecahan ketiga tidak ada. di atas.

$pecahan). "I". $disatukandengandash = implode("-". I am Here! Hello-World.". echo "$disatukandenganspasi <br>". "am".Dasar-dasar Pemrograman PHP <? $pecahan = array("Hello". "Here!").-I-am-Here! Disusun oleh: Rosihan Ari Yuana 37 . echo "$disatukandengandash ". $disatukandenganspasi = implode(" ". "World. ?> Hasilnya adalah: Hello World. $pecahan).

"<br>". echo "Besok adalah tanggal ". $nextyear). date("d/m/y". second. date("d")+1. date("m") . ?> Lantas bagaimana kalau kita ingin menampilkan tanggal pada 2 hari mendatang? Berikut ini scriptnya. Hal ini disebabkan PHP merupakan server side programming. $tomorrow) . date("Y")+1). date("m")-1. date("d")+2. date("m"). month. 0. Contoh: <? echo date("m/d/y"). $duaharilagi). date("Y")). date("y")). minute. ?> Function mktime() digunakan untuk membuat timestamp. maka tampilan dari script di atas adalah 11/12/05 Kita dapat mengubah format tanggal dalam bentuk 12-11-05 dengan perintah <? echo date("d-m-y"). $lastmonth = mktime(0. echo "Sebulan lalu adalah tanggal ". 0. ?> Function date() digunakan untuk menampilkan tanggal pada saat itu (sesuai waktu server). Tanggal yang akan ditampilkan menyesuaikan waktu server. echo "Setahun lagi adalah tanggal ". date("m"). dengan sintaks: mktime(hour. 0. <? $duaharilagi = mktime(0. date("d/m/y". day. bukan waktu yang ada di client. date("d/m/y". date("d"). echo "Dua hari lagi adalah tanggal ". 0. "<br>". 0. 0.Dasar-dasar Pemrograman PHP BAB XII FUNCTION DATE Pada bab ini akan dibahas mengenai cara menampilkan tanggal ke dalam halaman web. ?> Disusun oleh: Rosihan Ari Yuana 38 . year) Contoh: <?php $tomorrow = mktime(0. 0. Misalkan pada saat itu adalah tanggal 12 Nopember 2005. date("d/m/y". "<br>". date("d"). 0. $lastmonth). date("Y")). $nextyear = mktime(0.

$today = date("m. $today = date("H:i:s").Dasar-dasar Pemrograman PHP Beberapa ini beberapa jenis timestamp yang dapat digunakan untuk mengatur format tampilan tanggal dan waktu Time: a A g G h H i s Day: d j D l w z Month: m n M F t Year: L Y y : 1 jika melompati tahun dan 0 jika tidak. : Format tahun 4 digit : Format tahun 2 digit. echo "$today". Bernilai antara 01.23. : Menit dengan 0 di depan.12. 2001. (28-31) : Hari dalam bulan (tanggal) dengan 0 di depan. Bernilai antara Sun-Sat : Hari dalam mingguan. Bernilai antara 0. $today = date("Ymd"). (Jan-Dec) : Nama bulan lengkap. : Hari dalam bulan (tanggal) tanpa 0 di depan.01 Disusun oleh: Rosihan Ari Yuana 39 . : Jam dengan 0 di depan (format 24 jam). Y"). Bernilai antara 1-31. echo "$today".10. echo "$today". Y. 5:16:18 pm $today = date("F j.12. Bernilai antara 0-6. Bernilai antara Sunday-Saturday : Hari dalam mingguan tanpa 0 di depan. $today = date("j. : am atau pm : AM atau PM : Jam tanpa 0 di depan. (January-December) : Jumlah hari dalam sebulan. Bernilai antara 0-365. Bernilai antara 01-31. (00-99) : Nomor bulan dengan 0 di depan (01-12) : Nomor bulan tanpa 0 di depan (1-12) : Singkatan dari bulan. Bernilai antara 1.23. Bernilai antara 00-59. : Jam tanpa 0 di depan (format 24 jam).y"). Bernilai antara 00-59. g:i a"). n. : Jam dengan 0 di depan. ?> Hasilnya adalah: March 10. Contoh: <?php // Misalkan hari ini adalah: 10 Maret 2001. Bernilai antara 00. echo "$today". : Detik dengan 0 di depan. : Hari dalam tahunan tanpa 0 di depan. echo "$today". 5:16 pm 03.d. : Hari dalam mingguan (disingkat).

2001 20010310 17:16:17 Disusun oleh: Rosihan Ari Yuana 40 .Dasar-dasar Pemrograman PHP 10. 3.

Sebuah halaman web.php>Hal 1</a> <a href=hal2. semua informasi tentang data tersebut akan hilang begitu halaman web direload. echo "Nama user Anda adalah: $username<br><br>".php>Hal 3</a>".Dasar-dasar Pemrograman PHP BAB XIII BEKERJA DENGAN SESSION Session digunakan untuk mengirim data ke beberapa halaman web.php>Hal 3</a>". ?> Hal2. echo "<a href=hal1.php <form action=submit.php <? echo "Ini adalah halaman 2<br>".php <? echo "Ini adalah halaman 1<br>". Contoh: Diberikan source code sbb.php>Hal 3</a>”. echo "<a href=hal1. mengenai perlunya menggunakan session.php>Hal href=hal3. echo "Nama user Anda adalah: $username<br><br>". ?> Hal1. echo “Nama user Anda adalah: $username<br><br>”. secara normal tidak akan mengirim suatu data dari halaman yang satu ke halaman yang lain. Dengan kata lain.php>Hal 1</a> <a href=hal2.php <? $username = $_POST[‘username’].php method=post> Username <input type=text name=username><input type=submit name=submit value=Submit> </form> Submit.php>Hal 1</a> <a href=hal2. ?> 2</a> <a 2</a> <a Disusun oleh: Rosihan Ari Yuana 41 . Form.php>Hal 2</a> <a href=hal3. Berikut ini akan diberikan contoh tentang penjelasan di atas. echo “<a href=hal1.php>Hal href=hal3.

data dapat disimpan dan selanjutnya dapat diakses di beberapa halaman web. echo "Nama user Anda adalah: $username<br><br>". user diminta melakukan login terlebih dahulu (memasukkan nama user) melalui form.php.php>Hal 2</a> <a href=hal3. web based mail. Begitu user mengakses 3 buah halaman web yang ada tersebut. Nama user akan disimpan dalam session. digunakan perintah $_SESSION['nama_session'] = data.php>Hal 3</a>".php <? echo "Ini adalah halaman 3<br>".Dasar-dasar Pemrograman PHP Hal3. atau melakukan logout. $username = $_POST['username']. <? session_start(). Disusun oleh: Rosihan Ari Yuana 42 . diharapkan nama user yang telah dimasukkan dalam form sebelumnya tetap ditampilkan dalam setiap halaman web yang diakses. Memulai PHP – Session Sebelum Anda menyimpan data dalam session. Contoh: Berikut ini adalah code dalam file submit. echo "<a href=hal1.php (contoh sebelumnya) yang telah dimodifikasi. terlebih dahulu harus memulai session. Hal ini dikarenakan hilangnya data/informasi dari nama user yang dimasukkan sebelumnya. Nah… di sinilah perlunya session. Selanjutnya akan muncul submit. Akan tetapi apa yang terjadi? Ternyata untuk ketiga halaman web yang diakses tersebut tidak menampilkan nama user. seperti online shopping. ?> Dengan file-file di atas.php>Hal 1</a> <a href=hal2. Data yang yang tersimpan dalam session bersifat temporary/ sementara. perintahnya adalah: session_start() Menyimpan Data ke dalam Session Untuk menyimpan data ke dalam session. e-banking. Penggunaan session sering diterapkan pada aplikasi web yang bersifat multiuser. Untuk memulai session.php yang menampilkan nama user yang dimasukkan tadi dan beberapa link ke halaman lain. Biasanya akan terhapus secara otomatis begitu user menutup browser. Dengan session. dll. $_SESSION['namauser'] = $username.

"<br><br>". digunakan perintah unset($_SESSION['nama_session']).$_SESSION['namauser']. caranya cukup menuliskan $_SESSION['nama_session']. echo "<a href=hal1. Hal1. echo "Ini adalah halaman 1<br>". echo "Ini adalah halaman 1<br>". ?> Hal3.php>Hal 2</a> href=hal3.php>Hal 2</a> href=hal3.php.php <? session_start().php>Hal 1</a> <a href=hal2. hal2.php>Hal 3</a>". echo "<a href=hal1.php>Hal 1</a> <a href=hal2.$_SESSION['namauser']. echo "Nama user Anda adalah: ". ?> <a <a <a Menghapus Data Session Untuk menghapus data yang tersimpan dalam suatu session.php sehingga dapat menampilkan nama user yang telah disimpan dalam session. echo "Ini adalah halaman 1<br>". "<br><br>".php <? session_start(). ?> Hal2.php>Hal 3</a>". echo "Nama user Anda adalah: ". Untuk memanggil data dalam session.php>Hal 3</a>". echo "<a href=hal1. selanjutnya dapat dipanggil kembali apabila diperlukan. ?> Memanggil Data yang Tersimpan dalam Session Setelah data disimpan dalam session.php <? session_start().php>Hal 2</a> <a href=hal3.php>Hal 1</a> <a href=hal2.php. Disusun oleh: Rosihan Ari Yuana 43 .php>Hal 1</a> <a href=hal2. echo "Nama user Anda adalah: ".$_SESSION['namauser'].Dasar-dasar Pemrograman PHP echo "Nama user Anda adalah: $username<br><br>". echo "<a href=hal1. "<br><br>".php>Hal 2</a> href=hal3.php>Hal 3</a>". dan hal3. Contoh : Berikut ini adalah code dari file hal1.

Biasanya menghapus data session yang terkait dengan username diterapkan pada proses logout.Dasar-dasar Pemrograman PHP Misalkan terdapat lebih dari satu session dan kita ingin menghapus semuanya. maka nama user yang dia masukkan akan disimpan dalam session. kita dapat melakukan cek apakah seorang user sudah melakukan login atau belum dengan melihat session. <? session_start(). Logikanya adalah. Dengan proses logout. dapat kita akali dengan menggunakan session. dengan catatan bahwa user lain yang sebelumnya login harus sudah me-logout. dalam hal ini adalah halaman 1. seorang user bisa saja langsung melakuan by pass ke tiga halaman tersebut tanpa login terlebih dahulu. masih kosong atau tidak. Script ini selanjutnya akan disisipkan pada setiap halaman yang diinginkan. Contoh: Kita akan membuat script untuk mencegah by pass dalam kasus sebelumnya. Cek. Dari script yang kita buat di atas. misalkan kita buat aturan bahwa untuk dapat mengakses halaman 1. if (!isset($_SESSION['namauser'])) { Disusun oleh: Rosihan Ari Yuana 44 . Tentu saja hal ini bisa berbahaya untuk aplikasi multiuser yang harus menjamin keamanan data dari para usernya. maka dengan kata lain username tidak akan disimpan dalam session (session untuk user masih kosong). 2. maka username yang telah tersimpan dalam session akan terhapus. apabila user melakukan login. user harus terlebih dahulu melakukan login.php <? session_start(). dan akan menghasilkan nilai FALSE apabila session masih kosong. dan 3. Untuk mencegah proses by pass tersebut. unset($_SESSION['namauser']). Dari hal ini. ?> Penerapan Session untuk Security Pada contoh kasus di atas. maka caranya dengan memberikan perintah session_destroy(). dan 3. Untuk melihat sebuah session masih kosong atau tidak dengan menggunakan perintah isset($_SESSION['nama_session']) Perintah di atas akan menghasilkan nilai TRUE apabila session sudah tidak kosong. 2. Contoh: Akan dibuat script untuk proses logout dari kasus di atas. Sedangkan apabila ada seorang user yang mencoba mem by pass.

exit. dan hal3.$_SESSION['namauser'].php. echo "Ini adalah halaman 3<br>". echo "Ini adalah halaman 3<br>".php>Hal 2</a> href=hal3.php>Hal 1</a> <a href=hal2. include "cek.$_SESSION['namauser']. include "cek.php>Hal 1</a> <a href=hal2. echo "<a href=hal1.php>Hal 3</a>". ?> Hal2.php". echo "Nama user Anda adalah: ". } ?> Dan berikut adalah script hal1.php>Hal 2</a> href=hal3. hal2.php yang sudah dimodifikasi Hal1.php>Hal 2</a> href=hal3.php>Hal 3</a>".php>Hal 3</a>". echo "<a href=hal1. echo "Nama user Anda adalah: ".$_SESSION['namauser']. "<br><br>".php".php>Hal 1</a> <a href=hal2. include "cek.Dasar-dasar Pemrograman PHP echo "Anda belum login". echo "Ini adalah halaman 3<br>". echo "<a href=hal1. "<br><br>". echo "Nama user Anda adalah: ".php <? session_start().php". ?> Hal3. "<br><br>".php <? session_start().php. ?> <a <a <a Disusun oleh: Rosihan Ari Yuana 45 .php <? session_start().

Sedangkan apabila sudah terhapus.Dasar-dasar Pemrograman PHP BAB XIV BEKERJA DENGAN COOKIES Cookies telah lama digunakan dalam internet yang digunakan oleh administrator web untuk menyimpan informasi user atau pengunjung di komputer user tersebut. caranya dengan menggunakan perintah setcookie(name. expiration). Biasanya value ini berupa username atau tanggal pengaksesan suatu halaman web. Sedangkan untuk mengambil informasi dari cookie. akan menghasilkan nilai FALSE. merupakan informasi atau data yang disimpan dalam cookie. setcookie(KunjunganTerakhir. maka secara otomatis cookie tersebut akan terhapus. Apabila lama penyimpanan sebuah cookie melebihi batas waktu ini. 2. Contoh: Pada contoh ini akan dibuat perintah PHP untuk membuat cookie yang digunakan untuk menyimpan data waktu kunjungan terakhir seorang user yang mengakses suatu halaman web. value. <?php $duabulanlagi = time() + 60 * 24 * 3600. $duabulanlagi). Cookie ini diberi batas waktu sampai 2 bulan (60 hari) penyimpanan. merupakan batas waktu penyimpanan cookie (dalam detik timestamp). Jadi jangan sampai nama cookie ini lupa. name. Perintah ini memiliki 3 buah argumen. merupakan nama dari cookie. value. Disusun oleh: Rosihan Ari Yuana 46 . Untuk mengecek apakah suatu cookie sudah terhapus atau belum menggunakan perintah isset($_COOKIE['nama_cookie']) Apabila cookie masih ada. Membuat Cookies Untuk membuat cookies. expiration. 3. maka perintah di atas menghasilkan TRUE. ?> Mengambil Informasi dari Cookie Apabila cookie belum terhapus. date("G:i . menggunakan perintah $_COOKIE['nama_cookie'] Contoh: Berikut ini contoh perintah PHP untuk menampilkan tanggal kunjungan terakhir user yang mengunjungi halaman web. maka kita dapat mengambil informasi dari cookie. yaitu 1. Nama cookie ini dapat dipanggil sewaktu-waktu untuk mendapatkan informasi.m/d/y").

$visit. echo "Kunjungan Anda terakhir pada .".Dasar-dasar Pemrograman PHP <?php if(isset($_COOKIE['KunjunganTerakhir'])) { $visit = $_COOKIE['KunjunganTerakhir']. ?> Disusun oleh: Rosihan Ari Yuana 47 . } else echo "Anda sudah 2 bulan lebih tidak mengunjungi web ini".

"admin". sedangkan apabila gagal akan menampilkan pesan kesalahan. mysql_select_db("test") or die(mysql_error()). echo "Connected to MySQL<br />". ?> Perintah di atas akan menampilkan Koneksi ke MySQL sukses apabila koneksi telah berhasil. echo "Koneksi ke MySQL Sukses<br>". merupakan password yang dimiliki username dalam rangka autentifikasi. Untuk melakukan koneksi. "username". dapat menghubungi server administrator. ?> Disusun oleh: Rosihan Ari Yuana 48 . echo "Connected to Database". selanjutnya kita dapat memilih database yang kita inginkan. Koneksi PHP ke MySQL Sebelum kita melakukan koneksi ke MySQL ada beberapa parameter yang harus kita ketahui terlebih dahulu. "1admin") or die(mysql_error()). merupakan nama user yang diberikan wewenang untuk mengakses database dalam MySQL Password. dibutuhkan: Server name. Untuk memperoleh informasi parameter di atas.Dasar-dasar Pemrograman PHP BAB XV PHP.MySQL MySQL merupakan salah satu DBMS open source yang paling populer pada saat ini. merupakan nama server atau no. Database name. Contoh: <?php mysql_connect("localhost". namun saat ini MySQL sudah banyak dikembangkan. Sedangkan perintah PHP untuk melakukan koneksi ke MySQL adalah <?php mysql_connect("nama server". Memilih Database Setelah koneksi berhasil. merupakan nama database dalam MySQL yang ingin kita akses. Adapun perintahnya menggunakan mysql_select_db(). IP server dimana MySQL tersebut diinstall Username. Meskipun dahulu MySQL pernah dikritisi karena tidak memiliki beberapa fitur yang ada dalam DBMS pada umumnya. "password") or die(mysql_error()).

?> Mengambil Data dari MySQL Mengambil data di sini terkait dengan penggunaan query SELECT. dan password: 1admin. <?php mysql_connect("localhost". UPDATE. mysql_query("CREATE TABLE example( id INT NOT NULL AUTO_INCREMENT. Berikut ini contoh script PHP untuk membuat tabel example dalam database test. username : admin. umur) VALUES('surti'. mysql_query("INSERT INTO example(nama.Dasar-dasar Pemrograman PHP Contoh di atas menggambarkan bagaimana cara melakukan koneksi ke MySQL dengan nama servernya localhost. ?> Pada contoh di atas. 30)"). Sedangkan berikut ini contoh script untuk menyisipkan 2 buah record/data ke tabel example. mysql_query("INSERT INTO example(nama. selanjutnya kita dapat memberikan perintah query seperti SELECT. dapat dilihat bahwa perintah PHP untuk menuliskan query ke MySQL adalah mysql_query("query"). mysql_select_db("test") or die(mysql_error()). <?php mysql_connect("localhost". CREATE. "1admin") or die(mysql_error()). "1admin") or die(mysql_error()). echo "Tabel sudah dibuat". umur) VALUES('budiman'. "admin". nama VARCHAR(30). Selanjutnya memilih database test. "admin". echo "Data sudah dimasukkan". umur INT) PRIMARY KEY(id)") or die(mysql_error()). Disusun oleh: Rosihan Ari Yuana 49 . Memberikan Query ke MySQL Setelah kita memilih database dimana kita akan bekerja. mysql_select_db("test") or die(mysql_error()). 20)"). DELETE. Berikut ini contoh untuk menampilkan record pertama dari tabel example.

$record['umur'].$record['nama']. } ?> Looping while di atas akan terus berjalan selama record masih ada untuk dibaca. "<br>". "1admin") or die(mysql_error()). mysql_select_db("test") or die(mysql_error()). "admin". <?php mysql_connect("localhost". ?> Output script di atas adalah: Namanya: budiman Umurnya: 20 Perintah di atas hanya akan menampilkan record pertama dari tabel example.$record['nama']. "admin". $result = mysql_query("SELECT * FROM example") or die(mysql_error()). // menyimpan record ke dalam variabel $data $record = mysql_fetch_array( $result ). // menampilkan data dari $record untuk setiap field echo "Namanya: ". bagaimana caranya untuk menampilkan record yang lebih dari satu? Untuk menampilkan record yang lebih dari satu. echo "Umurnya: ". "<br><br>". mysql_select_db("test") or die(mysql_error()). sangat dianjurkan untuk menginstall phpMyAdmin yang dapat diunduh melalui situs resminya di http://phpmyadmin. while ($record = mysql_fetch_array($hasil)) { echo "Namanya: ". $hasil = mysql_query("SELECT * FROM example") or die(mysql_error()). Lantas. kita gunakan looping. Perhatikan contoh berikut ini.$record['umur']. "<br>".sourceforge.net/ Disusun oleh: Rosihan Ari Yuana 50 .Dasar-dasar Pemrograman PHP <?php mysql_connect("localhost". echo "Umurnya: ". "1admin") or die(mysql_error()). Hasil dari script di atas adalah Namanya: budiman Umurnya: 20 Namanya: surti Umurnya: 30 Catatan: Untuk lebih memudahkan Anda dalam administrasi dan mengatur database dalam MySQL.

"<br>". Disusun oleh: Rosihan Ari Yuana 51 . $query = "SELECT * FROM customers WHERE username = '$name'". $query . $query = "SELECT * FROM customers WHERE username = '$name'". echo "Query Normal: " . Misalkan juga terdapat 2 user yaitu JOKO (password : JOKO) dan AMIR (password : AMIR). $query. Apa itu SQL Injection SQL injection merupakan perbuatan orang yang memberikan perintah SQL untuk dijalankan di mesin server SQL tanpa sepengetahuan Anda sebagai administrator. melainkan memberikan pemahaman supaya orang yang membaca menjadi eling lan waspodo. Query tersebut akan mendapatkan data yang diinginkan apabila memang terdapat user agus dan tidak akan mendapatkan data yang diinginkan apabila tidak terdapat user tersebut. // input user yang menggunakan SQL injection $name = "' OR 1 OR '1' = '1". Meskipun dalam bab ini dijelaskan cara melakukan teknik ini. akan tetapi penulis bukan bertujuan untuk mendidik orang untuk menjadi penjahat dalam dunia virtual. Berikut ini adalah contoh mekanisme SQL injection yang dapat terjadi pada proses login. Berikut ini adalah contohnya: <? $nama = "agus". Misalkan terdapat tabel user yang digunakan untuk menyimpan data user.Dasar-dasar Pemrograman PHP BAB XVI SQL INJECTION Pada bab ini akan dibahas mengenai apa itu SQL injection. Sedangkan untuk query injection pasti akan selalu mendapatkan paling sedikit satu record/ data dari tabel customers. cara melakukannya dan cara pencegahannya. Mengapa hal ini bisa terjadi? Hal ini dikarenakan dalam query injection terdapat perintah OR 1 yang selalu bernilai TRUE. ?> Tampilan script di atas adalah Query Normal: SELECT * FROM customers WHERE username = 'agus' Query Injection: SELECT * FROM customers WHERE username = '' OR 1' OR '1' = '1' Apabila query normal dijalankan di server SQL tentu saja tidak ada masalah karena akan mencari record dari tabel customers yang terkait dengan username agus. Proses injection biasanya dilakukan orang ketika memasukkan input melalui form dengan perintah atau kode tertentu. echo "Query Injection: " . yang di dalamnya terdapat 2 field yaitu username dan password.

Sekarang.Dasar-dasar Pemrograman PHP Diberikan form login sbb. $query = "SELECT * FROM user WHERE username = '$username' AND password = '$password'". $password = $_POST['password']. Perintah mysql_num_rows() akan menghasilkan jumlah record hasil pencarian. Selanjutnya jumlah baris record yang muncul tersebut dicek. <? mysql_connect("localhost". Login. $jmldata = mysql_num_rows($hasil). echo "$query<br>". jumlah baris record adalah 0.php sbb."root". Sedangkan apabila tidak ditemukan. $hasil = mysql_query($query). else echo "<h1>Login GAGAL</h1>"."root").php> Nama user <input type=text name=username><br> Password <input type=text name=password> <input type=submit name=submit value=Submit> </form> Dan file submit. Pastilah login akan sukses karena perintah SQL yang dijalankan adalah SELECT * FROM user WHERE username = 'xxx' AND password = '' OR 1 OR '1' = '1' yang akan menghasilkan TRUE Disusun oleh: Rosihan Ari Yuana 52 .php <form method=post action=submit. Login akan berhasil apabila ada record yang ditemukan atau jumlah baris recordnya tidak sama dengan 0. if ($jmldata != 0) echo "<h1>Login SUKSES</h1>". mysql_select_db("test"). Apabila ditemukan namauser dan password yang sesuai maka mysql_num_rows() akan menghasilkan jumlah baris record yang tidak sama dengan 0. $username = $_POST['username']. perhatikan apa yang terjadi apabila dalam form dimasukkan input sebarang nama user dan password berbentuk ' OR 1 OR '1' = '1. dan akan gagal jika jumlah baris recordnya 0. ?> Ide dari proses login di atas adalah mencari namauser dan password dalam tabel user berdasarkan username dan password yang dimasukkan melalui form.

Dengan kata lain karakter single quote yang diinputkan melalui form secara otomatis akan diubah menjadi backslash-single quote (\’). mysql_select_db("test"). Dengan demikian login akan gagal. if ($jmldata != 0) echo "<h1>Login SUKSES</h1>". $hasil = mysql_query($query). Catatan: Dalam MySQL."root"). Sehingga untuk kasus login di atas perintah SQL yang dijalankan adalah SELECT * FROM user WHERE username = 'xxx' AND password = '\' OR 1 OR \'1\' = \'1' sehingga akan menghasilkan FALSE karena password yang dicari adalah \' OR 1 OR \'1\' = \'1.Dasar-dasar Pemrograman PHP Cara Pencegahan SQL Injection Beruntunglah … sekarang PHP sudah dilengkapi dengan security (PHP rilis terbaru) dengan mengubah karakter single quote (‘) menjadi (\’). tanda single quote digunakan sebagai pengapit data/value yang berupa string. echo "$query<br>". Script berikut ini adalah modifikasi dari submit. <? mysql_connect("localhost". cara lain adalah menggunakan perintah mysql_real_escape_string().php pada kasus login di atas yang ditambahkan perintah mysql_real_escape_string(). ?> Disusun oleh: Rosihan Ari Yuana 53 . else echo "<h1>Login GAGAL</h1>". Apabila PHP Anda tidak mensupport metode tersebut (biasanya PHP rilis lama). $password = mysql_real_escape_string($_POST['password']). $username = mysql_real_escape_string($_POST['username']). $query = "SELECT * FROM user WHERE username = '$username' AND password = '$password'"."root". Sedangkan backslash-single quote merupakan tanda yang digunakan untuk menyatakan karakter single quote. Peran perintah ini sama dengan metode di atas yaitu mengubah single quote menjadi backslash-single quote. $jmldata = mysql_num_rows($hasil).

php. Biasanya CMS merupakan aplikasi yang terbuka untuk user.net/php. PRIMARY KEY (`idArtikel`) ) ENGINE=MyISAM. Administrator web tidak perlu mengatur konten secara offline kemudian mengupload kembali ke server. `fullname` varchar(30) NOT NULL. `password` varchar(32) NOT NULL. dapat dilaporkan via email ke rosihanarie@gmail.Dasar-dasar Pemrograman PHP BAB XVII MEMBUAT CMS SENDIRI What is CMS? CMS merupakan singkatan dari Content Management System merupakan bentuk teknologi web yang berbasis konten. Disusun oleh: Rosihan Ari Yuana 54 . artinya bahwa user dapat memiliki andil untuk menambah konten yang tentu saja hal ini juga dalam pengawasan administrator web. `isi` text NOT NULL. `username` varchar(10) NOT NULL. Aplikasi ini memungkinkan user untuk mengirim artikel apabila ia sudah terdaftar sebagai member dalam aplikasi tsb. Apabila terdapat bug atau error. `counter` tinyint(4) NOT NULL. `sinopsis` text NOT NULL. Berikut ini akan dibahas cara membuat aplikasi CMS untuk menampilkan kumpulan artikel. CREATE TABLE `user` ( `idUser` tinyint(4) NOT NULL auto_increment. `judul` text NOT NULL. akan tetapi hal tersebut dapat dilakukan secara online. `kategori` text NOT NULL. `date` varchar(10) NOT NULL.com Membuat Database Untuk keperluan ini. Hal ini dapat dilakukan karena semua konten tersimpan dalam database. `status` tinyint(4) NOT NULL. Catatan: Semua file script yang ditulis di sini dapat Anda unduh di http://rosihanari. Semua konten dimanajemen dengan sistematis melalui panel yang mudah dilakukan. diperlukan database dengan struktur sbb: Nama database : cms Selanjutnya buat tabel di dalam database cms tersebut dengan SQL command sbb: CREATE TABLE `artikel` ( `idArtikel` tinyint(4) NOT NULL auto_increment. `idUser` tinyint(4) NOT NULL.

w3. charset=iso-88591" /> <!-. karena semua desain layout diatur oleh CSS yang ada dalam folder tersebut. 'admin'.1//EN" "http://www.css" /> </head> <body> <div id="main"> <div id="links"> Disusun oleh: Rosihan Ari Yuana 55 .org/TR/xhtml11/DTD/xhtml11. '21232f297a57a5a743894a0e4a801fc3').php dari file layout tersebut.dtd"> <html xmlns="http://www. Sedangkan perintah ini untuk membuat username 'admin' dan passwordnya juga 'admin'.php caranya dengan mengcopy code html index. ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1. Untuk membuat file header. (layout nya pun hasil unduhan dari situs lain. silakan mengunduh layout template di http://rosihanari.w3. Selanjutnya paste kan ke halaman baru dari text editor lalu simpan dengan nama file header.**** Colour Scheme Stylesheet **** --> <link rel="stylesheet" type="text/css" href="style/colour2. INSERT INTO `user` VALUES (3.php <? session_start(). maklum si empunya gak bisa desain web. jangan menghapus folder style.php.php.net/php. Oya.php dan footer.css" /> <!-. Caranya adalah dengan membuka file index. (perhatikan teks yang berwarna merah) header.org/1999/xhtml" xml:lang="en"> <head> <title>template: home</title> <meta http-equiv="content-type" content="text/html.htm dari file yang diunduh tadi dengan notepad atau text editor lain.htm mulai dari paling atas sampai pada <div id="column2">.Dasar-dasar Pemrograman PHP PRIMARY KEY (`idUser`) ) ENGINE=MyISAM . buat file header. 'administrator'.**** Layout Stylesheet **** --> <link rel="stylesheet" type="text/css" href="style/style104_left.php tersebut dengan script di bawah ini. Selanjutnya. Membuat Layout Untuk mempermudah membuat layout dari aplikasi. Lalu sesuaikan script header. coz… gak punya jiwa seni).

php". else $status = "<a href=login. } ?> </div> <!-.apabila user belum login.dan menyembunyikan panel user bila user belum login --> <? if (isset($_SESSION['idUser'])) { if ($_SESSION['username'] == "admin") $adminpanel = "<li><a href=\"adminPanel.Dasar-dasar Pemrograman PHP <!-. $query = "SELECT * FROM artikel WHERE status = 1 ORDER BY idArtikel DESC LIMIT 0.php>login</a>".">".php?idArtikel=". else $adminpanel = ""."</a> </p>".sedangkan bila sudah login.link untuk registrasi user --> <li><a href="register.link untuk login maupun logout --> <!—. 3". while ($data3 = mysql_fetch_array($hasil)) { echo "<p><a href=view.menampilkan panel user apabila telah login --> <!-.$data3['judul'].php">arsip artikel</a></li> <!—.link untuk melihat arsip artikel --> <li><a href="articles. ?></li> </ul> </div> <div class="sidebaritem"> <h1>artikel terbaru</h1> <!-.**** INSERT LINKS HERE **** --> <!—Silakan menambahkan links sendiri --> <b>::</b> <a href="http://"><b>links</b></a> <b>::</b> <a href=""><b>links</b></a> <b>::</b> <a href=""><b>links</b></a> </div> <div id="logo"><h1>your company name</h1></div> <div id="content"> <div id="column1"> <div id="menu"> <h1>menu navigasi</h1> <ul> <li><a href="index.$data3['idArtikel']. echo $status.php">home</a></li> <!—.menampilkan 3 judul artikel terbaru --> <? include "dbconnect. link login akan muncul --> <!-. $userpanel = "<div id=\"addlinks\"> <h1>member menu</h1> Disusun oleh: Rosihan Ari Yuana 56 .php">register</a></li> <!—. $hasil = mysql_query($query).php>logout</a>".**** INSERT NEWS ITEMS HERE **** --> <!-. link logout muncul --> <li><? if (isset($_SESSION['idUser'])) $status = "<a href=logout.php\">admin panel</a></li>".

"root".php.php\">edit profile</a></li>". ?> <div class="sidebaritem"> <h1>information</h1> <!-.org/css-validator/check/referer">CSS</a> </div> </div> </body> </html> Membuat File Koneksi ke Database (MySQL) dbconnect. mysql_select_db($db). Disusun oleh: Rosihan Ari Yuana 57 .php <? $server $user $pass $db = = = = "localhost".com</a> | <a href="http://validator. echo $userpanel. caranya dengan mengcopy tag dari index.com">admin@admin. } else $userpanel = ""." </ul> </div>".$adminpanel.silakan isi informasi di sini --> <p> Informasi Anda<br> </p> </div> </div> <div id="column2"> Sedangkan untuk file footer.htm mulai dari </div> (setelah akhir dari content… ) sampai dengan tag terakhir. Jangan lupa ubah sendiri tentang copyright nya. $pass).Dasar-dasar Pemrograman PHP <ul> <li><a href=\"submitArticle.php\">kirim artikel</a></li> <li><a href=\"editProfile.org/check?uri=referer">XHTML 1. "cms". mysql_connect($server. footer.w3.1</a> | <a href="http://jigsaw.php </div> </div> <div id="footer"> copyright © 2007 web admin | <a href="mailto:admin@admin. "root". $user.w3.

web niki namung sampel kemawon kagem kuliah pemrograman web. yaitu username yang diinginkan.php <? include "header. ?> Membuat File Registrasi User Berikut ini file untuk registrasi user.php <? include "header.php".</h1><p>sugeng rawuh ing web kulo. ?> <h1>user registration</h1> <form action="regSubmit..php" method="post"> <div class="row"> <span class="formlabel">username</span> <span class="forminput"><input type="text" name="username" /></span> </div> <div class="row"> <span class="formlabel">nama lengkap</span> <span class="forminput"><input type="text" name="fullname" /></span> </div> <div class="row"> <span class="formlabel">password</span> <span class="forminput"><input type="password" name="password1" /></span> </div> <div class="row"> <span class="formlabel">ulangi password</span> <span class="forminput"><input type="password" name="password2" /></span> Disusun oleh: Rosihan Ari Yuana 58 . echo "<h1>welcome friends.php dengan isi sebarang. register.Dasar-dasar Pemrograman PHP ?> Membuat File Index Untuk keperluan file home.php". password serta konfirmasi password. silakan buat file index. web niki berbasis cms.. Terdapat 4 isian. include "footer. Berikut ini contohnya. nama lengkap.</p>".php". index.

$username $fullname $password1 $password2 = = = = $_POST['username']. } else echo "Password tidak sama".php".".Dasar-dasar Pemrograman PHP </div> <div class="row"> <span class="formlabel"></span> <span class="forminput"><input type="submit" value="submit" class="submit" /></span> </div> </form> <? include "footer.php untuk mengolah proses registrasi user. include "footer.php".php".php <? include "dbconnect. fullname.$fullname. $hasil = mysql_query($query). md5($_POST['password2']). include "header.php". '$fullname'. echo "<h1>status registrasi</h1>"."</b><br>Silakan Anda login terlebih dahulu". ?> Sedangkan berikut ini file regSubmit. $hasil = mysql_query($query). password) VALUES('$username'. echo "Selamat bergabung dengan kami <b>". } else echo "Nama username tersebut sudah ada. maka user akan diregister if ($data == 0) { $query = "INSERT INTO user(username. ?> Disusun oleh: Rosihan Ari Yuana 59 . $data = mysql_num_rows($hasil). md5($_POST['password1']). // cek konfirmasi password if ($password1 == $password2) { // cek apakah username sudah ada $query = "SELECT * FROM user WHERE username = '$username'". '$password1')". regSubmit. $_POST['fullname']. // bila user name belum ada.

$password = md5($_POST['password']). include "dbconnect. $data = mysql_fetch_array($hasil). $hasil = mysql_query($query). ?> <h1>user login</h1> <form action="loginSubmit. dapat dilihat pada script berikut ini login.php".php". Disusun oleh: Rosihan Ari Yuana 60 . ?> Sedangkan proses loginnya diatur oleh script loginSubmit.php loginSubmit. $username = $_POST['username']. // cek password dari database dengan yang dimasukkan ketika login // bila sama. maka login sukses dan muncul panel user if ($data['password'] == $password) { $_SESSION['idUser'] = $data['idUser'].php".php <? include "header. $query = "SELECT * FROM user WHERE username = '$username'".Dasar-dasar Pemrograman PHP Membuat File Login Untuk form loginnya.php <? session_start().php" method="post"> <div class="row"> <span class="formlabel">username</span> <span class="forminput"><input type="text" name="username" /></span> </div> <div class="row"> <span class="formlabel">password</span> <span class="forminput"><input type="password" name="password" /></span> </div> <div class="row"> <span class="formlabel"></span> <span class="forminput"><input type="submit" value="submit" class="submit" /></span> </div> </form> <? include "footer.

?> Disusun oleh: Rosihan Ari Yuana 61 .Dasar-dasar Pemrograman PHP $_SESSION['username'] = $data['username']. include "header.php\">kirim artikel</a></li> <li><a href=\"editProfile. $userpanel = "<div id=\"addlinks\"> <h1>member menu</h1> <ul> <li><a href=\"submitArticle.php\">admin panel</a></li>".php". } include "footer.php>login</a>". include "header."</b>. include "header.php". berikut ini adalah scriptnya logout. $status = "<a href=logout. echo "<h1>status login</h1>".php\">edit profile</a></li>".php>login</a>". include "footer. $status = "<a href=login. echo "<p>Password salah atau username tidak terdaftar</p>". echo "<h1>logout</h1>". $userpanel = "". echo "<h1>status login</h1>"." </ul> </div>". echo "<p>Selamat datang <b>".</p> <p>Anda berhak untuk mengirim artikel.php".$adminpanel.php <? session_start(). // bila username = admin.</p>". echo "<p>Anda sudah logout</p>".php".php". maka akan muncul panel admin if ($_SESSION['username'] == "admin") $adminpanel = "<li><a href=\"adminPanel. else $adminpanel = "".$data['fullname'].php>logout</a>". } else { $status = "<a href=login. ?> Membuat File Logout Untuk keperluan logout. session_destroy().

php <? session_start(). web programming.. Anda dapat menambah sendiri. Script untuk form kirim artikel adalah sebagai berikut Disusun oleh: Rosihan Ari Yuana 62 . dan programming. Dalam contoh ini. Membuat Fasilitas Kirim Artikel Fasilitas ini hanya diperuntukkan bagi user teregistrasi. fasilitas ini hanya untuk user terdaftar</p>".php". } ?> Kedua file tersebut akan diinclude kan ke setiap file yang terkait dengan user panel dan admin panel.php <? session_start()... include "footer.. // cek apakah user sudah login atau belum dan cek apakah user admin // atau bukan if (!isset($_SESSION['idUser']) || $_SESSION['username'] != "admin") { echo "<h1>warning</h1>". } ?> cekAdmin. cekUser.php". exit. dimisalkan terdapat 3 kategori artikel yaitu database. echo "<p>Maaf. exit.Dasar-dasar Pemrograman PHP Membuat File Cek User dan Admin File ini digunakan untuk mencegah proses by pass ke dalam user dan admin panel oleh orang lain yang tidak berhak. echo "<p>Silakan Anda register dahulu</p>". echo "<p>Maaf. // cek apakah user sudah login atau belum if (!isset($_SESSION['idUser'])) { echo "<h1>warning</h1>". fasilitas ini hanya untuk administrator</p>". include "footer.

include "header. $kategori = $_POST['kategori']. Disusun oleh: Rosihan Ari Yuana 63 . diperlukan file articlePost.php".Dasar-dasar Pemrograman PHP submitArticle.php <? session_start().php".php". ?> <form action="articlePost.php <? include "header.php" method="post"> <div class="row"> <span class="formlabel">Kategori</span> <span class="forminput"><select name="kategori" class="textarea"><option value="database">database</option><option value="programming">programming</option><option value="web programming">web programming</option></select></span> </div> <div class="row"> <span class="formlabel">Judul</span> <span class="forminput"><input type="text" name="judul" /></span> </div> <div class="row"> <span class="formlabel">Sinopsis</span> <span class="forminput"><textarea rows="5" cols="18" name="sinopsis" class="textarea"></textarea></span> </div> <div class="spacer">&nbsp.</div> <div class="row"> <span class="formlabel">Isi Artikel</span> <span class="forminput"><textarea rows="20" cols="3" name="isi" class="textarea"></textarea></span> </div> <div class="spacer">&nbsp.php".</div> <div class="row"> <span class="formlabel"></span> <span class="forminput"><input type="submit" value="submit" class="submit" /></span> </div> </form> <? include "footer. echo "<h1>submit article</h1>". include "cekUser.php articlePost.php". include "dbconnect. echo "<h1>submit article</h1>". include "cekUser.php". ?> Sedangkan untuk memproses artikel yang dikirim.

php <? session_start(). counter. '$judul'. Setting oleh perintah $status = 0. Sedangkan setting $counter = 0. '$kategori'. ?> <h1>edit profile</h1> <form action="editProfileSubmit. Admin berhak menolak. maksudnya adalah untuk menunjukkan berapa kali artikel tersebut telah dibaca oleh user. Membuat Fasilitas Edit Profile untuk User Fasilitas ini memungkinkan user untuk mengubah nama lengkapnya beserta passwordnya. $hasil = mysql_query($query). echo "<p>Artikel sudah disubmit</p>". // mencari data tentang user yang sedang login $query = "SELECT * FROM user WHERE idUser = ". $counter = 0. $isi = $_POST['isi']. '$tgl'. $hasil = mysql_query($query). sinopsis.".php" method="post"> Disusun oleh: Rosihan Ari Yuana 64 . include "footer.php". mengedit. '$sinopsis'. include "header. $data = mysql_fetch_array($hasil). status) VALUES(". include "dbconnect. kategori.php". Counter tersebut akan bertambah apabila artikel telah dibaca oleh public user. maupun menghapus artikel tersebut. editProfile. Karena baru saja dikirim tentu saja counternya sama dengan 0. $status = 0.Dasar-dasar Pemrograman PHP $judul = $_POST['judul'].php". isi. $query = "INSERT INTO artikel(iduser. $sinopsis = $_POST['sinopsis']. maksudnya adalah bahwa artikel tersebut belum ditampilkan untuk umum (msh bersifat private). $status)". // informasi tanggal kirim artikel $tgl = date("d/m/Y"). Status tersebut akan diubah menjadi 1 oleh admin apabila layak tampil (sudah direview).$_SESSION['idUser']. date.php". $counter. judul. include "cekUser. ?> Keterangan: Artikel yang dikirim oleh user selanjutnya akan direview oleh admin. '$isi'.$_SESSION['idUser'].

php".Dasar-dasar Pemrograman PHP <div class="row"> <span class="formlabel">nama lengkap</span> <span class="forminput"><input type="text" name="fullname" value="<? echo $data['fullname']. ?> Disusun oleh: Rosihan Ari Yuana 65 . } else echo "Password tidak sama".php". if ($password1 == $password2) { $query = "UPDATE user SET fullname = '$fullname'. echo "<h1>edit profile</h1>".php". $password2 = md5($_POST['password2']). $password1 = md5($_POST['password1']).php". ?> <? include "dbconnect. editProfileSubmit. include "cekUser. $fullname = $_POST['fullname']. include "header. ?>" /></span> </div> <div class="row"> <span class="formlabel">password baru</span> <span class="forminput"><input type="password" name="password1" /></span> </div> <div class="row"> <span class="formlabel">ulangi password baru</span> <span class="forminput"><input type="password" name="password2" /></span> </div> <div class="row"> <span class="formlabel"></span> <span class="forminput"><input type="submit" value="submit" class="submit" /></span> </div> </form> Script untuk memproses form edit profile di atas adalah di bawah ini. $hasil = mysql_query($query).php <? include "footer. echo "Profile sudah ter-update".php". include "footer.$_SESSION['idUser']. password = '$password1' WHERE idUser = ".

$hasil = mysql_query($query).$data['isi']. $query = "SELECT user. artikel.judul. include "dbconnect. echo "<p><b>kategori</b> : ".php".idUser = artikel."</p>". $query = "DELETE FROM user WHERE idUser = $idUser".idUser AND artikel. artikel.username. echo "<p><b>oleh</b> : ".$data['sinopsis'].$data['date']. $query = "DELETE FROM artikel WHERE idArtikel = "."</p>". } else if ($op == "viewArticle") { // lihat isi artikel yang telah masuk $idArtikel = $_GET['idArtikel'].$data['judul']. if ($op == "deleteUser") { $idUser = $_GET['idUser'].idArtikel = $idArtikel".php <? include "header. adminPanel. artikel. echo "<h3>". user WHERE user. echo "<p>". if (isset($_GET['op'])) { // hapus user $op = $_GET['op']. echo "<p><b>ditulis pada tanggal</b> : ".$data['username']. include "cekAdmin. $data = mysql_fetch_array($hasil).kategori. Berikut ini scriptnya."</p>"."</p>".date FROM artikel. menghapus.sinopsis.isi. Disusun oleh: Rosihan Ari Yuana 66 . Selain itu admin juga berhak menghapus user yang terdaftar.php". echo "<h1>admin panel</h1>". $hasil = mysql_query($query). } else if ($op == "deleteArticle") { // hapus artikel $idArtikel = $_GET['idArtikel']. mengeditnya. echo "<p><b>sinopsis</b> :<br> ". artikel."</p>".$idArtikel."</h3>".$data['kategori']. artikel. dan mengizinkan layak tampil (approve).php".Dasar-dasar Pemrograman PHP Membuat Admin Panel Keberadaan admin panel ini memungkinkan admin untuk melihat semua artikel yang sudah terkirim.

$data = mysql_fetch_array($hasil). $query = "SELECT * FROM artikel WHERE idArtikel = ". echo "<form action='".$data['sinopsis'].Dasar-dasar Pemrograman PHP $hasil = mysql_query($query). } else if ($op == "approveArticle") { // approve artikel yang layak tampil $idArtikel = $_GET['idArtikel'].</div> <div class='row'> <span class='formlabel'></span> <span class='forminput'><input type='submit' value='submit' class='submit' /></span> </div> </form>".</div> <div class='row'> <span class='formlabel'>Isi Artikel</span> <span class='forminput'><textarea rows='20' cols='3' name='isi' class='textarea'>"."</textarea></span> </div> <div class='spacer'>&nbsp. $query = "UPDATE artikel SET status = 1 WHERE idArtikel = ".$data['idArtikel']."</textarea></span> </div> <div class='spacer'>&nbsp."?op=articleUpdate' method='post'> <div class='row'> <span class='formlabel'>Kategori</span> <span class='forminput'><select name='kategori' class='textarea'><option value='database'>database</option><option value='programming'>programming</option><option value='web programming'>web programming</option></select></span> </div> <div class='row'> <span class='formlabel'>Judul</span> <span class='forminput'><input type='text' name='judul' value='". echo "<p>artikel sudah dihapus</p>".$idArtikel. echo "<p>artikel sudah diapprove</p>". $hasil = mysql_query($query).$data['isi']. Disusun oleh: Rosihan Ari Yuana 67 .$idArtikel.$data['judul']."' /></span> </div> <div class='row'> <span class='formlabel'>Sinopsis</span> <span class='forminput'><textarea rows='5' cols='18' name='sinopsis' class='textarea'>".$_SERVER['PHP_SELF']. } else if ($op == "editArticle") { // edit artikel $idArtikel = $_GET['idArtikel']. $hasil = mysql_query($query)."' /><input type='hidden' name='idArtikel' value='".

$sinopsis.$data['kategori'].$judul. echo "<p>artikel sudah diupdate</p>"."?op=deleteUser&idUser=". sinopsis = '"."</td><td>". } else { echo "<p><b>user administration</b></p>". echo "<table border=1>". $kategori = $_POST['kategori'].$data['username']. } echo "</table><br><br>".$data['idArtik el']. $hasil = mysql_query($query)."> delete</a></td></tr>". // menampilkan daftar semua artikel yang telah masuk $query = "SELECT * FROM artikel ORDER BY idArtikel". isi = '".$data['judul']. judul = '"."</td><td><a href=". echo "<tr><td><b>judul</b></td><td><b>kategori</b></td><td><b>status</b></td ><td><b>action</b></td></tr>"."'. } echo "<a href=". $hasil = mysql_query($query). echo "<tr><td><b>username</b></td><td><b>fullname</b></td><td><b>action</b>< /td></tr>"."' WHERE idArtikel = ". $query = "UPDATE artikel SET kategori = '".$data['fullname']. $isi = $_POST['isi']. $sinopsis = $_POST['sinopsis'].$data['idUser']."'. $hasil = mysql_query($query). while ($data = mysql_fetch_array($hasil)) { echo "<tr><td>". echo "<p><b>articles administration</b></p>".">view</a> <a Disusun oleh: Rosihan Ari Yuana 68 . while ($data = mysql_fetch_array($hasil)) { echo "<tr><td>".$kategori.$_SERVER['PHP_SELF'].$da ta['status']."</td><td>".$idArtikel."</td><td>".$_SERVER['PHP_SELF']. echo "<table border=1>".$_SERVER['PHP_SELF']. $judul = $_POST['judul']."?op=viewArticle&idArtikel="."</td><td><a href=".Dasar-dasar Pemrograman PHP } else if ($op == "articleUpdate") { // proses update artikel yang sudah diedit $idArtikel = $_POST['idArtikel']. // menampilkan semua user yang terdaftar $query = "SELECT * FROM user ORDER BY idUser".$isi."'.">kembali ke admin panel</a>".

"</a> </li>".Dasar-dasar Pemrograman PHP href=".$data['idArt ikel']."?op=deleteArticle&idArtikel=".php". echo "<h1>arsip artikel</h1>". while ($data = mysql_fetch_array($hasil)) { artikel. } include "footer. ?> Membuat File untuk Menampilkan Arsip Artikel Daftar artikel ini akan muncul ketika user mengklik menu arsip dikelompokkan berdasarkan kategorinya. ?> Setelah daftar artikel tampil. include "dbconnect. } echo "</ul>".php?idArtikel=". $query = "SELECT * FROM artikel GROUP BY kategori"."</p>".php". $hasil2 = mysql_query($query2).php". Disusun oleh: Rosihan Ari Yuana 69 .">edit</a></td></tr>".$data['kategori']. echo "<p>&nbsp. Tentu saja arsip artikel yang muncul adalah yang telah diapprove oleh admin.$_SERVER['PHP_SELF'].$data['idArtik el']. Berikut ini adalah scriptnya articles.">". Berikut ini script untuk menampilkan detail artikel.$data['idAr tikel']."?op=editArticle&idArtikel="."?op=approveArticle&idArtikel=". echo "<ul>".$_SERVER['PHP_SELF'].$data['kategori']. Tampilan daftar artikel ini akan echo "<p><b>kategori</b> : "."' ORDER BY idArtikel DESC".">delete</a> <a href=".php". $query2 = "SELECT * FROM artikel WHERE kategori = '". $hasil = mysql_query($query). while ($data2 = mysql_fetch_array($hasil2)) { echo "<li><a href=view.php <? include "header.">approve</a> <a href=".$data2['judul']. } echo "</table>".$data2['idArtikel']. } include "footer.$_SERVER['PHP_SELF']. user dapat membaca detail dari artikel tersebut dengan mengklik judulnya.</p>".

"<b>oleh</b> : ". $hasil2 = mysql_query($query2).$data['isi'].$data['judul'].$data['date']."<br>".php".kategori.username."<br>"."<br>". "<p>".idUser AND artikel. echo echo echo echo echo echo "<h1>".$idArtikel.counter FROM artikel."</h1>".$data['username']. artikel. "<b>ditulis pada tanggal</b> : ". include "footer. $idArtikel = $_GET['idArtikel'].sinopsis. "<b>telah dibaca</b> : ".idUser = artikel.php". "<p><b>kategori</b> : ". $query = "SELECT user. $data = mysql_fetch_array($hasil). artikel. include "dbconnect.php <? include "header.$data['kategori']. // counter jumlah berapa kali telah dibaca akan bertambah $counter = $data['counter']+1.judul. $hasil = mysql_query($query). Disusun oleh: Rosihan Ari Yuana 70 .php". artikel. Semoga bermanfaat. artikel.idArtikel = $idArtikel".$counter. user WHERE user. artikel." WHERE idArtikel = ".isi. // mengupdate counter $query2 = "UPDATE artikel SET counter = ". ?> Demikian petunjuk praktis dan singkat dalam pembuatan aplikasi CMS sederhana. artikel."</p>".$counter." kali</p>".date.Dasar-dasar Pemrograman PHP view.

Si. 1 Plumpang. Alur Laut Blok NN No. Jakart a Ut ara ======================================================================= SMK PERGURUAN CIKINI WEB DESIGN PHP KOLEKSI : MUJIBBUR ROHMAN. S. .Jl.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->