Menciptakan
Halaman PHP
Menulis Program PHP Pertama
Ini merupakan program PHP paling sederhana.
Statemen PHP, echo, merupakan salah
satu fungsi PHP yang paling umum digunakan. Fungsi ini dipakai untuk
mengirimkan teks (atau nilai variabel atau lainnya) ke penjelajah web (web browser).
Contoh
|
Menggunakan
echo
|
Cobalah fungsi echo berikut untuk melihat hasilnya.
1.
Masukkan program berikut dalam editor teks favorit
Anda (Notepad, Simple Text, Notepad++, atau lainnya), dan simpan dengan nama programpertama.php.
<html>
<head>
<title> Program PHP Paling Sederhana </title>
</head>
<body>
<?php
echo "Saya, adalah sahabat
Anda.";
?>
</body>
</html>
2.
Buka program ini menggunakan browser Anda. Di layar,
akan ditampilkan seperti ini:
3.
Sekarang buka kode HTML kembali, sehingga Anda dapat
melihat apa yang terjadi dengan potongan kode PHP. Seperti yang dapat Anda
lihat, potongan kode PHP telah hilang, seperti tampak berikut:
4.
Sekarang, tambahkan baris yang disoroti berikut,
sehingga Anda dapat mengamati bagaimana kode PHP Anda bekerja.
<html>
<head>
<title> Program PHP Paling Sederhana
</title>
</head>
<body>
<?php
echo
"Saya, adalah sahabat Anda.";
echo
'Dan kita akan belajar hari Ju\'mat.';
?>
</body>
</html>
Menggunakan HTML Untuk Memperkaya
Halaman Web
Seperti Anda perhatikan pada
contoh sebelumnya, penggunaan kode PHP untuk menampilkan teks menghasilkan
halaman yang tampak kaku. Anda dapat membuatnya lebih profesional dengan
menambahkan beberapa kode HTML. HTML disisipkan di dalam blok PHP Anda
menggunakan statemen echo.
Contoh
|
Menggunakan
HTML di dalam blok PHP
|
1.
Modifikasilah baris-baris yang disoroti pada programpertama.php:
<html>
<head>
<title> Program PHP Paling Sederhana
</title>
</head>
<body>
<?php
echo "<h1>Saya, adalah sahabat Anda. </h1>";
echo '<h2>Dan kita akan belajar hari Ju\'mat.
</h2>';
?>
</body>
</html>
2.
Simpanlah file Anda, dan tampilkan kembali pada browser. Layar Anda akan tampak menjadi
seperti berikut:
Menggunakan Konstanta
Anda dapat mendefinisikan sebuah
nilai yang akan ditugaskan kepada suatu konstanta menggunakan fungsi PHP define(). Begitu Anda mendefinisikan
sebuah konstanta, kontanta tersebut tidak dapat diubah.
Contoh
|
Menggunakan
konstanta
|
1.
Buka editor teks Anda, dan ketikkan program berikut:
<html>
<head>
<title> Situs Film Favorit </title>
</head>
<body>
<?php
define ('FILMFAV', 'Maleficient');
echo 'Film Favorit saya adalah ';
echo FILMFAV;
?>
</body>
</html>
2.
Simpan file ini dengan nama situsfilm.php, dan buka dengan browser. Anda akan melihat tampilan
berikut:
Menggunakan Variabel
Variabel dinotasikan dengan tanda
dollar ($) dan bersifat case-sensitive (dengan kata lain, $datasatu dan
$Datasatu diperlakukan sebagai variabel yang berbeda). Huruf pertama dalam
variabel haruslah tanda garis-bawah (underscore)
atau huruf, dan tidak bisa berupa angka.
Contoh
|
Menggunakan
variabel
|
1.
Bukalah editor teks Anda, dan lakukan beberapa
perubahan pada file situsfilm.php
(ditandai dengan sorotan) berikut:
<html>
<head>
<title> Situs Film Favorit
</title>
</head>
<body>
<?php
define
('FILMFAV', 'Maleficient');
echo 'Film
Favorit saya adalah ';
echo
FILMFAV;
echo
'<br/>';
$ratingfilm
= 5;
echo
'Rating yang saya berikut untuk film ini adalah: ';
echo
$ratingfilm;
?>
</body>
</html>
2.
Simpan file tersebut dan akses lewat browser Anda. Pada layar, akan
ditampilkan berikut:
Contoh lain penggunaan variabel
diberikan oleh kode berikut:
<?php
$ratingfilmku = 5;
$ratingfilmmu= 7;
$ratingfilmnya = 2;
$ratingfilmdia = 1;
$reratarating = (($ratingfilmku + $ratingfilmmu
+ $ratingfilmnya
+ $ratingfilmdia) / 4);
echo ‘Rerata rating film untuk film
ini adalah: ‘;
echo $reratarating;
?>
PHP juga memiliki sejumlah fungsi
pustaka (built-in) yang bisa dipakai
untuk variabel, seperti:
D
rand($min,
$max): Menghasilkan sebuah angka acak.
D
ceil($value): Menghasilkan integer terdekat dengan melakukan
pembulatan ke atas.
D
floor($value): Menghasilkan integer terdekat dengan melakukan
pembulatan ke bawah.
Melewatkan Variabel Antar Halaman
Web
Metode pertama dalam melewatkan
variabel antar halaman adalah melalui URL halaman. Anda tentu telah melihat URL
semacam ini:
http://www.domainku.com/berita/artikel/politik.php?id=12345
Ini merupakan sebuah contoh
pelewatan variabel melalui URL. Hal ini menandakan bahwa artikel dnegan nomor
ID “12345” dipilih untuk program politik.php.
Teks yang berada setelah URL dinamakan dnegan query string.
Anda dapat pula menggabungkan
beberapa variabel di dalam suatu URL menggunakan operator ampersand (&),
seperti pada contoh berikut:
http://www.domainku.com/berita/artikel/politik.php?id=12345&lang=en
Ini akan meminta file dengan ID
“12345” dan bahasa (language) yang
diminta sama dengan “en” untuk english.
Ada beberapa kekurangan dalam
melakukan pelewatan variabel melalui sebuah URL:
D
Setiap pihak dapat melihat nilai-nilai variabel,
sehingga informasi sensitif menjadi tidak aman.
D
Pengguna dapat mengubah nilai variabel dalam URL dan
mencoba beberapa kombinasi. Hal ini menyebabkan situs web Anda berpotensi untuk
digunakan untuk kepentingan lain.
D
Pengguna juga bisa mengambil informasi lama
menggunakan URL dengan variabel-variabel yang tertanam di dalamnya.
Contoh
|
Menggunakan
variabel URL
|
1.
Modifikasilah file situsfilm.php Anda sebagai berikut (perubahan ditandai dengan
sorotan):
<html>
<head>
<title> Situs Film Favorit
</title>
</head>
<body>
<?php
//hapus baris ini define
('FILMFAV', 'Maleficient');
echo 'Film Favorit saya
adalah ';
echo $_GET['filmfav'];
echo '<br/>';
$ratingfilm = 5;
echo 'Rating yang saya
berikut untuk film ini adalah: ';
echo $ratingfilm;
?>
</body>
</html>
2.
Simpan file situsfilm.php
Anda, dan buka suatu dokumen baru pada editor teks.
3.
Ketikkan kode berikut:
<html>
<head>
<title> Cari Film Favoritku!
</title>
</head>
<body>
<?php
echo '<a
href="situsfilm.php?filmfav=Maleficient">';
echo 'Klik di sini untuk
melihat informasi film favoritku!';
echo '</a>';
?>
</body>
</html>
4.
Simpan file ini dengan namafilm1.php, dan buka file tersebut dengan browser. Pada layar
Anda, akan ditampilkan berikut:
5.
Sekarang klik link tersebut dan amati apa yang
terjadi.
Karakter Spesial dalam URL
Pelewatan variabel melalui sebuah
URL memiliki situasi khusus jika terdapat spasi, ampersand, atau karakter
spesial lain pada nilai variabel. Untungnya, terdapat fungsi khusus untuk
mempertahankan integritas nilai variabel. Fungsi tersebut adalah urlencode() untuk digunakan ketika
pelewatan nilai variabel melalui sebuah URL. Jika Anda ingin mengubah film
favorit Anda dari “Maleficient” menjadi “Fast and Furious”, maka Anda akan
menggunakan urlencode() untuk mengkodekan nilai dan menyisipkan karakter
spesial HTML yang tepat. Untuk mencobanya, lakukan langkah-langkah berikut:
1.
Lakukan beberapa perubahan pada file film1.php seperti terlihat pada
baris-baris tersorot:
<html>
<head>
<title> Cari Film Favoritku!
</title>
</head>
<body>
<?php
//tambahkan
baris ini:
$filmfavku
= urlencode('Fast and Furious');
//ubah
baris ini:
echo
"<a href=\"situsfilm.php?filmfav=$filmfavku\">";
echo 'Klik
di sini untuk melihat informasi film favoritku!';
echo
'</a>';
?>
</body>
</html>
2.
Simpan file tersebut, dan buka kembali dengan browser
Anda. Sekarang klik link untuk menampilkan halaman seperti ditampilkan berikut:
Melewatkan Variabel dengan Sesi
Sesi pada dasarnya merupakan
sekelompok variabel temporer yang eksistensinya dipertahankan sampai browser
ditutup. Informasi sesi mencakup ID sesi dan mencakup informasi apakah pengguna
yang memiliki otorisasi log in ke situs atau tidak. Informasi ini disimpan
secara temporer untuk program PHP Anda ketika Anda ingin menengok ke belakang.
Setiap sesi ditugasi sebuah ID
sesi yang unik, yang mengikat informasi secara bersama-sama. ID sesi Anda dapat
dilewatkan melalui URL atau melalui penggunaan cookie. Meskipun, dengan alasan
keamanan, direkomendasikan agar melewatan ID sesi melalui sebuah cookie sehingga
tersembunyi dari mata manusia, jika cookie tidak diaktifkan, maka metode
pendukung yang bisa dilakukan adalah melalui URL.
Pengaturan ini ditentukan dalam
file php.ini. Jika Anda ingin
memaksa pengguna untuk melewatkan variabel melalui cookie, maka Anda perlu
menetapkan baris berikut:
session.use_only_cookies = 1
Selain itu, Anda perlu memastikan
sebelum menggunakan sesi bahwa php.ini telah dimodifikasi untuk menunjukkan
path yang valid untuk session.save_path.
Selanjutnya, yang perlu Anda lakukan
untuk memulai sebuah sesi dalam PHP adalah memanggil fungsi session_start(). Tetapi pertama-tama,
Anda perlu memutuskan informasi apa yang akan disimpan dalam sesi Anda. Segala
sesuatu yang telah disimpan dalam database dapat diambil/dibaca dan disimpan
secara temporer bersama dengan informasi sesi Anda. Biasanya, informasi
tersebut berupa nama pengguna dan informasi login. Pengenal sesi dapat pula
disimpan di dalam array variabel.
Contoh
|
Melewatkan
nama pengunjung web
|
Ikuti langkah-langkah berikut:
1.
Ubahlah file film1.php
untuk mencantumkan baris-baris tersorot berikut:
<?php
session_start();
$_SESSION['username'] =
'rismon12345';
$_SESSION['authuser'] = 1;
?>
<html>
<head>
<title> Cari Film Favoritku!
</title>
</head>
<body>
<?php
$filmfavku = urlencode('Fast
and Furious');
echo "<a
href=\"situsfilm.php?filmfav=$filmfavku\">";
echo 'Klik di sini untuk
melihat informasi film favoritku!';
echo '</a>';
?>
</body>
</html>
2.
Simpan file film1.php
Anda.
3.
Buka file situsfilm.php
untuk melakukan beberapa perubahan pada baris-baris tersorot berikut:
<?php
session_start();
//memeriksa apakah pengguna
telah login dengan password yang valid
if ($_SESSION['authuser'] !=
1) {
echo 'Maaf, tetapi Anda tidak memiliki ijin
untuk melihat halaman ini!';
exit();
}
?>
<html>
<head>
<title> Situs Film Favorit
</title>
</head>
<body>
<?php
echo 'Selamat datang ke
situs kami, ';
echo $_SESSION['username'];
echo '! <br/>';
echo 'Film Favorit saya
adalah ';
echo $_GET['filmfav'];
echo '<br/>';
$ratingfilm = 5;
echo 'Rating yang saya
berikut untuk film ini adalah: ';
echo $ratingfilm;
?>
</body>
</html>
4.
Klik link pada film1.php,
dan Anda akan melihat teks untuk situsfilm.php seperti ditampilkan berikut:
Melewatkan Variabel dengan Cookie
Cookie merupakan beberapa bit informasi yang disimpan
pada komputer dari pengunjung situs web Anda. Memang ada kekhawatiran tentang
penggunaan cookie. Dalam teori, cookie dapat dipakai untuk mendapatkan
informasi seperti alamat IP dan sistem operasi seseorang, tetapi cookie
utamanya digunakan hanya untuk menyimpan informasi. Beberapa perusahaan
periklanan online telah mengembangkan teknologi untuk menggunakan cookie dalam
menjejak kebiasaan penjelajahan browser Anda, dan banyak orang memandang hal
ini sebagai serangan terhadap privasi, jadi cukup banyak orang memilih untuk
tidak mengaktifkan fitur ini pada web browser mereka. Selain itu, karena cookie
disimpan pada sebuah direktori bernama, seseorang dengan akses ke komputer
orang lain (baik melalui mekanisme hack atau melalui hubungan fisikal langsung)
dapat membuka file-file cookie dan informasi seputar pemiliki komputer
tersebut. Oleh karena itu, bukanlah ide yang baik untuk menyimpan informasi
pribadi pada sebuah komputer.
Karena pengunjung situs Anda bisa saja menon-aktifkan
atau secara sengaja menghapus file-file cookie dari komputernya, mengandalkan
informasi cookie bukanlah ide yang terbaik dalam sudut pandang pengembangan
web.
Jadi mengapa pengembang web
menggunakan cookie? Keuntungan dalam menyimpan informasi pada cookie jauh lebih
banyak daripada penggunaan sesi. Sesi sendiri tidak dapat mempertahankan
informasi melebihi panjang waktu jendela browser dibuka.
Begitu jendela browser ditutup,
sesi akan kehilangan semua informasi yang dikandungnya. Cookie, di sisi lain,
dapat berada di dalam komputer seseorang sesuai dengan pengaturan yang
dilakukan oleh pengembang. Dengan menggunakan cookie, pengguna tidak perlu mengetik-ulang
informasi yang diperlukan untuk mengunjungi situs Anda.
Disebutkan sebelumnya bahwa sesi
sendiri tidak dapat menyimpan informasi untuk waktu yang lama. Namun, Anda
dapat mengubah keterbatasan ini jika Anda menggunakan sesi bersamaan dengan
cookie. Jika sesi Anda melewatkan variabel menggunakan cookie, maka Anda dapat
menetapkan rentang hidup cookie tersebut menjadi lebih lama dari rentang hidup
browser, menggunakan konfigurasi session.cookie_lifetime
pada file php.ini Anda.
Untuk mengatur sebuah cookie, Anda
dapat menggunakan fungsi setcookie().
Dengan mengatur sebuah cookie, Anda dapat menentukan informasi berikut:
D
Nama cookie.
D
Nilai cookie (seperti nama pengguna).
D
Waktu dalam satuan detik untuk menentukan kapan
rentang hidup cookie berakhir. (Waktu ini didasarkan pada UNIX timestamp,
tetapi Anda dapat menetapkannya menggunakan sintaks time()+60*60*24*365, yang menetapkan rentang hidup cookie selama
setahun. Informasi ini bersifat opsional, bila tidak diatur, rentang hidup
cookie berakhir ketika jendela browser ditutup).
D
Path (direktori dimana cookie akan disimpan). Ini juga
bersifat opsional.
D
Domain (domain yang dapat mengakses cookie ini). Ini
juga bersifat opsional.
D
Bendere untuk menentukan apakah sebuah cookie perlu
memiliki koneksi HTTPS yang aman atau tidak (nilai default adalah 0; untuk
mengaktifkan fitur ini, ditetapkan nilai 1).
Anda dapat menetapkan setiap
pengaturan ini sebagai berikut:
setcookie ($name[, $value[, $expire[,
$path[, $domain[, $secure]]]]])
Contoh
|
Mengatur
Cookie
|
Pada latihan ini, Anda akan
memiliki sebuah situs web yang mengatur komputer rismon sehingga ia tidak perlu
lagi mengetikkan namanya (rismon12345) setiap kali ia mengunjungi situs web
tersebut. Untuk melakukannya, ikuti langkah-langkah berikut:
1.
Modifikasilah file film1.php Anda seperti ditunjukkan berikut:
<?php
setcookie('username',
'Rismon', time() + 60);
session_start();
//hapus
baris ini: $_SESSION['username'] = 'rismon12345';
$_SESSION['authuser']
= 1;
?>
<html>
<head>
<title> Cari Film Favoritku!
</title>
</head>
<body>
<?php
$filmfavku
= urlencode('Fast and Furious');
echo
"<a href=\"situsfilm.php?filmfav=$filmfavku\">";
echo 'Klik
di sini untuk melihat informasi film favoritku!';
echo
'</a>';
?>
</body>
</html>
2.
Simpan file tersebut.
3.
Lakukan perubahan pada file situsfilm.php Anda:
<?php
session_start();
//memeriksa
apakah pengguna telah login dengan password yang valid
if
($_SESSION['authuser'] != 1) {
echo 'Maaf, tetapi Anda tidak memiliki ijin
untuk melihat halaman ini!';
exit();
}
?>
<html>
<head>
<title> Situs Film Favorit
</title>
</head>
<body>
<?php
echo
'Selamat datang ke situs kami, ';
echo
$_COOKIE['username'];
echo '!
<br/>';
echo 'Film
Favorit saya adalah ';
echo
$_GET['filmfav'];
echo
'<br/>';
$ratingfilm
= 5;
echo
'Rating yang saya berikut untuk film ini adalah: ';
echo
$ratingfilm;
?>
</body>
</html>
4.
Simpan file tersebut.
5.
Tutup jendela browser Anda dan buka jendela browser
yang baru (untuk mengantisipasi bila Anda memiliki informasi sesi lain dari
contoh sebelumnya). Kemudian buka file film1.php.
Klik link dan layar Anda akan menampilkan berikut:
Melewatkan Informasi dengan Form
Form membuat situs web Anda menjadi benar-benar
interaktif; form mengambil data dari pengguna dan mengirimkannya ke suatu
tempat untuk disimpan, dimanipulasi, dan kemudian hasilnya dikirimkan kembali
ke pengguna.
Bila Anda tidak familiar dengan sintaks form, atau
jika Anda memerlukan referensi cepat, berikut diberikan diskusi singkat
mengenai form. Form dikodekan dalam HTML. Form memuat empat komponen, yaitu:
D
Tag line
pembuka: Diindikasikan oleh <form>. Tag line ini mencakup
sebuah atribut action dan sebuah
atribut method. Sebuah aksi
memberikan form suatu URL atau path ke program lain yang akan mengambil data
dalam form. Sebuah metode (GET atau POST) memberitahu form bagaimana data
akan dibawa. (POST merupakan metode
yang umum digunakan karena lebih aman; metode ini tidak melewatkan informasi
dalam URL).
D
Isi form,
termasuk bidang-bidang masukan: Bidang masukan merupakan tempat di mana pengguna
mengetikkan informasi (atau memilih pada kasus kotak periksa (check box) atau tombol radio (radio button)). Bidang masukan harus
memuat atribut type dan name, dan dapat pula memuat atribut
lain seperti maxlength. Tipe dari
sebuah bidang masukan umumnya adalah:
D
Teks:
Digunakan untuk memuat 2 sampai 2000 karakter. Parameter yang dipakai untuk
membatasi jumlah karakter yang bisa diterima pada sebuah bidang masukan adalah maxlength. Untuk memuat jumlah karakter
yang lebih besar, Anda bisa menggunakan bidang masukan textarea menggantikan text.
D
Kotak
periksa (Check box):
Dipakai agar pengguna dapat membuat satu atau lebih pilihan dari sejumlah
pilihan yang ada. Pilihan diindikasikan dengan atribut value.
D
Tombol
radio (radio button):
Dipakai agar pengguna dari memilih dari suatu daftar pilihan, tetapi hanya
dibolehkan satu pilihan. Pilihan diindikasikan dengan atribut value.
D
Seleksi: Juga
dikenal dengan drop-down box. Dipakai
agar pengguna dari memilih dari suatu daftar pilihan. Pilihan diindikasikan dengan pasangan option/value.
D
Password:
Menyembunyikan yang diketikkan oleh pengguna di balik karakter-karakter
asterisk.
D
Beberapa
tombol yang dibuat oleh pengguna: Tombol-tombol tersebut
biasanya dinamai dengan submit atau reset atau lainnya.
D
Tag line
penutup: Diindikasikan dengan tag </form>.
Contoh
|
Menggunakan
form untuk mendapatkan informasi
|
Karena program Anda secara lambat
laun membesar (memanjang), untuk latihan ini, penulis merekomendasikan agar
Anda menggunakan editor teks yang memiliki nomor baris pada dokumen Anda. Hal
ini semata-mata untuk memudahkan Anda dalam mengidentifikasi perubahan pada
kode yang diberikan.
1.
Buka file film1.php
dan lakukan beberapa perubahan berikut:
<?php
//hapus
baris ini: setcookie('username', 'Rismon', time() + 60);
session_start();
$_SESSION['username']
= $_POST['user'];
$_SESSION['userpass']
= $_POST['pass'];
$_SESSION['authuser']
= 0;
//memeriksa
informasi username dan password
if
(($_SESSION['username'] == 'Rismon') and
($_SESSION['userpass'] == '12345')) {
$_SESSION['authuser'] = 1;
}
else {
echo 'Maaf, Anda tidak diijinkan untuk
membaca halaman ini';
exit();
}
?>
<html>
<head>
<title> Cari Film Favoritku!
</title>
</head>
<body>
<?php
$filmfavku
= urlencode('Fast and Furious');
echo
"<a href=\"situsfilm.php?filmfav=$filmfavku\">";
echo 'Klik
di sini untuk melihat informasi film favoritku!';
echo
'</a>';
?>
</body>
</html>
2.
Sekarang lakukan beberapa perubahan pada file situsfilm.php berikut:
<?php
session_start();
//memeriksa
apakah pengguna telah login dengan password yang valid
if
($_SESSION['authuser'] != 1) {
echo 'Maaf, tetapi Anda tidak memiliki ijin
untuk melihat halaman ini!';
exit();
}
?>
<html>
<head>
<title> Situs Film Favorit </title>
</head>
<body>
<?php
echo
'Selamat datang ke situs kami, ';
//hapus
baris ini: echo $_COOKIE['username'];
echo
$_SESSION['username'];
echo '!
<br/>';
echo 'Film
Favorit saya adalah ';
echo
$_GET['filmfav'];
echo
'<br/>';
$ratingfilm
= 5;
echo
'Rating yang saya berikut untuk film ini adalah: ';
echo
$ratingfilm;
?>
</body>
</html>
3.
Tulis sebuah file baru:
<?php
session_unset();
?>
<html>
<head>
<title> Silahkan Log In
</title>
</head>
<body>
<form method="post"
action="film1.php">
<p> Masukan username Anda:
<input type="text"
name="user"/>
</p>
<p> Masukkan password Anda:
<input type="password"
name="pass"/>
</p>
<p>
<input type="submit"”
name="submit" value="Submit"/>
</p>
</form>
</body>
</html>
4.
Simpan file ini dengan nama login.php.
5.
Buka file tersebut pada jendela browser Anda. Layar
Anda akan menampilkan berikut:
6.
Log in dengan username Rismon dan password 12345.
Layar Anda akan menampilkan berikut:
7.
Jika username atau password salah, maka layar Anda
akan menampilkan berikut:
Menggunakan if/else
Anda telah melihat bagaimana
menugaskan pelbagai nilai kepada variabel. Pada titik tertentu pada skript
Anda, Anda perlu melakukan aksi tertentu berdasarkan nilai dari sebuah
variabel. Sebagai contoh, perhatikan variabel $password. Jika pengguna memberikan password yang tepat, maka Anda
memberikannya akses ke situs. Jika sebaliknya pengguna memberikan password yang
salah, maka Anda akan memintanya untuk mencoba lagi atau tidak memberikannya
ijin sama sekali. Anda dapat menggunakan statemen if untuk menentukan aksi yang akan diambil skript Anda berdasarkan
nilai dari suatu variabel. Dan jika Anda menambahkan statemen else pada suatu if, Anda akan membuka peluang untuk terjadinya aksi lain.
Menggunakan Statemen if
Sintaks untuk statemen if adalah
sebagai berikut:
if(kondisi) aksi yang akan diambil jika kondisi bernilai true;
Seperti pada contoh:
if($pasarsaham > 10000) echo ‘Horeee! Ekonomi membaik!’;
Jika aksi yang akan dilakukan
lebih panjang dari suatu statemen sederhana, maka Anda perlu menggunakan kurung
kurawal ({ dan }) untuk mengapit aksi tersebut:
if($pasarsaham
> 10000) {
echo ‘Horeee! Ekonomi membaik!’;
$perasaan = ‘bahagia’;
$pensiun = ‘semakin
besar’;
}
Operator
Operator-operator yang dipakai
untuk membandingkan dua nilai sama dengan yang digunakan pada matematika dasar.
Berikut diberikan operator-operator yang dipakai pada PHP:
Operator
|
Sintaks
|
Sama dengan
|
==
|
Tidak sama
dengan
|
!=
atau <>
|
Lebih besar
dari
|
>
|
Lebih kecil
dari
|
<
|
Lebih besar
atau sama dengan
|
>=
|
Lebih kecil
atau sama dengan
|
<=
|
Sama dengan,
kecocokan tipe data AND (kedua operand integer atau kedua operand string)
|
===
|
Tidak sama
dengan, ketidak-cocok-an tipe data OR
|
!==
|
Contoh
|
Menggunakan
if
|
1.
Bukalah editor teks Anda, dan ketikkan program
berikut:
<html>
<head>
<title> Berapa banyak hari pada bulan
ini? </title>
</head>
<body>
<?php
date_default_timezone_set('Singapore');
$bulan =
date('n');
if ($bulan
== 1) { echo '31'; }
if ($bulan
== 2) { echo '28 (Kecuali jika tahun leap)'; }
if ($bulan
== 3) { echo '31'; }
if ($bulan
== 4) { echo '30'; }
if ($bulan
== 5) { echo '31'; }
if ($bulan
== 6) { echo '30'; }
if ($bulan
== 7) { echo '31'; }
if ($bulan
== 8) { echo '31'; }
if ($bulan
== 9) { echo '30'; }
if ($bulan
== 10) { echo '31'; }
if ($bulan
== 11) { echo '30'; }
if ($bulan
== 12) { echo '31'; }
?>
</body>
</html>
2.
Simpan file tersebut dengan nama tanggal.php. Anda kemudian menjalankannya pada browser untuk
mendapatkan tampilan berikut:
Contoh
|
Menggunakan
if/else
|
1.
Bukalah editor teks Anda, dan ketikkan program
berikut:
<html>
<head>
<title> Apakah tahun ini tahun leap?
</title>
</head>
<body>
<?php
date_default_timezone_set('Singapore');
$tahunleap
= date('L');
if
($tahunleap == 1) {
echo 'Horee...! Ini merupakan tahun leap';
}
else {
echo 'Maaf, ini bukan tahun leap.';
}
?>
</body>
</html>
2.
Simpan file tersebut dengan nama tahunleap.php. Anda kemudian menjalankannya pada browser untuk
mendapatkan tampilan berikut:
Menggunakan include untuk Menjadikan Kode
Efisien
Apakah Anda bosan mengetikkan hal
yang sama berulang-ulang? Pembuat PHP telah menyediakan fungsi include agar Anda terhindar dari
kebosanan ini.
Contoh
|
Menambahkan
pesan selamat datang
|
1.
Buka editor teks Anda, dan ketikkan kode berikut:
<div
style="text-align: center">
<p> Selamat datang ke situs kami!
<br/>
<?php
date_default_timezone_set('Singapore');
echo 'Hari
ini ';
echo
date('F d');
echo ', ';
echo
date('Y');
?>
<br/>
</div>
2.
Simpan file ini dengan nama header.php.
3.
Untuk menyertakan file ini dalam ketiga file situs web
film, tambahkan baris berikut, tepat setelah tag <body>, pada file login.php, film1.php, dan situsfilm.php:
<?php include
'header.php'; ?>
4.
Simpan semua file tersebut.
5.
Jika Anda membuka file login.php, Anda akan melihat layar seperti berikut:
Menggunakan Fungsi untuk Menjadikan Kode
Efisien
Sama seperti include, fungsi juga
dapat menjadikan kode Anda lebih efisien dan lebih mudah didebug. Fungsi adalah
blok kode yang dapat dipanggil di sembarang tempat di dalam program Anda.
Fungsi memampukan Anda untuk mengeksekusi baris-baris kode tanpa perlu
mengetik-ulangnya setiap kali Anda menggunakannya. Fungsi dapat dipakai untuk
menetapkan dan memperbarui nilai variabel. Anda juga dapat memakai fungsi untuk
dieksekusi bila kriteria tertentu terpenuhi.
Contoh
|
Bekerja
dengan fungsi
|
1.
Buka file film1.php
Anda, dan modifikasilah seperti ditunjukkan pada teks yang disorot berikut:
<?php
session_start();
$_SESSION['username']
= $_POST['user'];
$_SESSION['userpass']
= $_POST['pass'];
$_SESSION['authuser']
= 0;
//memeriksa
informasi username dan password
if
(($_SESSION['username'] == 'Rismon') and
($_SESSION['userpass'] == '12345')) {
$_SESSION['authuser'] = 1;
} else {
echo 'Maaf, Anda tidak diijinkan untuk
membaca halaman ini';
exit();
}
?>
<html>
<head>
<title> Cari Film Favoritku! </title>
</head>
<body>
<?php
include 'header.php'; ?>
<?php
$filmfavku
= urlencode('Fast and Furious');
echo
"<a href=\"situsfilm.php?filmfav=$filmfavku\">";
echo 'Klik
di sini untuk melihat informasi film favoritku!';
echo
'</a>';
?>
<br/>
<a href="situsfilm.php?jumlahfilm=5"> Klik
di sini untuk melihat 5 film terbaik. </a>
<br/>
<a href="situsfilm.php?jumlahfilm=10"> Klik
di sini untuk melihat 10 film terbaik. </a>
</body>
</html>
2.
Sekarang, modifikasilah file situsfilm.php seperti ditunjukkan berikut:
<?php
session_start();
//memeriksa apakah pengguna
telah login dengan password yang valid
if ($_SESSION['authuser'] !=
1) {
echo 'Maaf, tetapi Anda tidak memiliki ijin
untuk melihat halaman ini!';
exit();
}
?>
<html>
<head>
<title>
<?php
if (isset($_GET['filmfav']))
{
echo ' - ';
echo $_GET['filmfav'];
}
?>
</title>
</head>
<body>
<?php include
'header.php'; ?>
<?php
function daftarfilm_1() {
echo '1. Maleficient <br/>';
echo '2. Fast and Furious <br/>';
echo '3. The Holy Grail <br/>';
echo '4. Die Hard <br/>';
echo '5. Matrix <br/>';
}
function daftarfilm_2() {
echo '6. Terminator 2 <br/>';
echo '7. Star Trek <br/>';
echo '8. Battle Ship <br/>';
echo '9. Godfather <br/>';
echo '10. Mummy <br/>';
}
if (isset($_GET['filmfav']))
{
echo 'Selamat datang ke situs kami, ';
echo $_SESSION['username'];
echo '! <br/>';
echo 'Film Favorit saya adalah ';
echo $_GET['filmfav'];
echo '<br/>';
$ratingfilm = 5;
echo 'Rating yang saya berikut untuk film
ini adalah: ';
echo $ratingfilm;
}
else {
echo 'Daftar ';
echo $_GET['jumlahfilm'];
echo ' film terbaikku adalah: ';
echo ' <br/>';
daftarfilm_1();
if ($_GET['jumlahfilm'] == 10) {
daftarfilm_2();
}
}
?>
</body>
</html>
3.
Sekarang, Anda perlu mengisi form pada file login.php sebelum Anda bisa melihat
perubahan yang ada. Anda kemudian log in
sebagai Rismon dan menggunakan
password 12345. File film1.php Anda akan tampak sebagai
berikut:
Tentang Array
Anda telah belajar tentang
variabel dan bagaimana ia digunakan, tetapi bagaimana jika Anda memerlukan
lebih dari satu nilai yang akan ditugaskan pada variabel itu? Hal ini
diselesaikan dengan array. Array tidak lain merupakan suatu daftar informasi
yang dipetakan dengan kunci-kunci dan disimpan dalam satu nama variabel.
Perhatikan informasi berikut:
Nama
Depan
|
Nama
Belakang
|
Usia
|
|
Suami
|
Albert
|
Einstein
|
58
|
Istri
|
Mileva
|
Einstein
|
54
|
Jadi, array hanyalah suatu baris
informasi, dan kunci-kuncinya merupakan kepala-kepala kolom. Kunci adalah
pengenal yang dipakai untuk mengorganisasi informasi dan untuk kemudahan akses.
Dengan array, Anda dapat menyimpan
pelbagai informasi yang berelasi dalam satu nama variabel, seperti ini:
<?php
$suami = array(‘namadepan’ =>
’Albert’,
‘namabelakang’ => ’Einstein’,
‘usia’ => ’58’);
echo $suami[‘namadepan’];
?>
Perhatikan bagaimana Anda
menggunakan =>, bukan =, untuk menugaskan nilai kepada kunci array. Semua
informasi Albert disimpan dalam nama variabel suami. Dengan menggunakan kunci “namadepan”, Anda dapat membaca atau mengetahui nama depannya.
Anda tidak harus menyimpan semua
nilai pada saat bersamaan, seperti pada contoh sebelumnya. Anda dapat
menugaskan setiap anggota array secara langsung, mengakses kuncinya dengan cara
berikut:
<?php
$suami[‘namadepan’] = ‘Albert’;
$suami[‘namabelakang’] = ‘Einstein’;
$suami[‘usia’] = 58;
? >
Hal ini akan memberikan efek yang
sama dengan contoh sebelumnya.
Anda juga dapat memiliki array di
dalam array (dikenal pula dengan array multidimensi). Pada contoh sebelumnya,
Anda memiliki dua orang pada satu tabel. Perhatikan kode berikut:
<?php
$table[1] = array(‘suami’ = >
array(‘namadepan’ => ‘Albert’,
‘namabelakang’
=> ‘Einstein’,
‘usia’ =
> 58),
‘istri’ = > array(‘namadepan’
=> ‘Mileva’,
‘namabelakang’
=> ‘Einstein’,
‘usia’ =>
54));
?>
Dan jika seseorang bertanya pada
Anda, “Hei, siapakah nama kedua orang yang diduduk di satu meja tersebut?” Anda
akan dengan mudah menampilkan informasi tersebut dengan beberapa statemen echo sederhana.
<?php
echo $table[1][‘suami’][‘namadepan’];
echo ‘ dan ‘;
echo $table[1][‘istri’][‘namadepan’];
?>
Skript ini akan menghasilkan
keluaran “Albert dan Mileva”.
Jika Anda ingin menyimpan suatu
daftar informasi dan tidak memedulikan urutan penyimpanannya, maka Anda tidak
perlu secara eksplisit memberikan kunci; PHP dapat secara otomatis menugaskan
kunci-kunci numerik yang diawali dengan integer 0. Perhatikan kode berikut:
<?php
$rasa[] = ‘mangga’;
$rasa[] = ‘durian’;
$rasa[] = ‘nanas’;
?>
Array ini dapat diakses seperti
ini:
<?php
echo $rasa[0]; //menampilkan “mangga”
echo $rasa[1]; //menampilkan “durian”
echo $rasa[2]; //menampilkan “nanas”
?>
Mengurutkan Array
Salah satu pekerjaan yang akan
sering Anda lakukan pada array adalah mengurutkan nilai-nilainya. PHP
menyediakan banyak fungsi yang mengurutkan nilai-nilai array dengan mudah.
Berikut merupakan beberapa fungsi pengurutan array:
D
sort($array):
Mengurutkan sebuah array dengan tatanan nilai menaik.
D
rsort($array):
Mengurutkan sebuah array dengan tatanan nilai menurun.
D
asort($array):
Mengurutkan sebuah array dengan tatanan nilai menaik dengan tetap
mempertahankan hubungan kunci/nilai.
D
arsort($array):
Mengurutkan sebuah array dengan tatanan nilai menurun dengan tetap
mempertahankan hubungan kunci/nilai.
Contoh
|
Mengurutkan
array
|
Sebelum dilanjutkan, Anda akan
melihat bagaimana pengurutan array dilakukan PHP. Ketikkan program berikut pada
editor teks Anda, dan simpan dengan nama pengurutan.php.
<?php
$rasa[] = 'mangga';
$rasa[] = 'durian';
$rasa[] = 'nanas';
sort($rasa);
print_r($rasa);
?>
Keluaran akan tampak seperti ini:
Perintah foreach
PHP juga menyediakan perintah foreach yang dapat diterapkan pada
setiap nilai dalam sebuah array. Sintaks untuk perintah foreach seperti ini:
<?php
$rasa[] = 'mangga';
$rasa[] = 'durian';
$rasa[] = 'nanas';
echo ‘Rasa favoritku adalah: <br/>’;
foreach ($rasa as $rasaku) {
//baris kode ini akan dieksekusi sepanjang masih ada nilai dalam $rasa
echo $rasaku ‘<br/>’;
}
?>
Contoh
|
Menjumlahkan
array
|
1.
Lakukan beberapa perubahan pada file situsfilm.php berikut:
<?php
session_start();
//memeriksa apakah pengguna
telah login dengan password yang valid
if ($_SESSION['authuser'] !=
1) {
echo 'Maaf, tetapi Anda tidak memiliki ijin
untuk melihat halaman ini!';
exit();
}
?>
<html>
<head>
<title>
<?php
if (isset($_GET['filmfav']))
{
echo ' - ';
echo $_GET['filmfav'];
}
?>
</title>
</head>
<body>
<?php include
'header.php'; ?>
<?php
$arrayfilmfav =
array('Maleficient',
'Fast and Furious',
'The Holy Grail',
'Die Hard',
'Matrix',
'Terminator 2',
'Star Trek',
'Battle Ship',
'Godfather',
'Mummy');
//hapus baris-baris ini
function daftarfilm_1() {
echo '1. Maleficient <br/>';
echo '2. Fast and Furious <br/>';
echo '3. The Holy Grail <br/>';
echo
'4. Die Hard <br/>';
echo '5. Matrix <br/>';
}
function daftarfilm_2() {
echo '6. Terminator 2 <br/>';
echo '7. Star Trek <br/>';
echo '8. Battle Ship <br/>';
echo '9. Godfather <br/>';
echo '10. Mummy <br/>';
}
//akhir baris-baris yang
dihapus
if (isset($_GET['filmfav']))
{
echo 'Selamat datang ke situs kami, ';
echo $_SESSION['username'];
echo '! <br/>';
echo 'Film Favorit saya adalah ';
echo $_GET['filmfav'];
echo '<br/>';
$ratingfilm = 5;
echo 'Rating yang saya berikut untuk film
ini adalah: ';
echo $ratingfilm;
}
else {
echo 'Daftar 10 film terbaikku adalah: <br/>';
if (isset($_GET['sorted'])) {
sort($arrayfilmfav);
}
echo '<ol>';
foreach ($arrayfilmfav as $film) {
echo '<li>';
echo $film;
echo '</li>';
}
echo '</ol>';
//hapus baris-baris ini
echo 'Daftar ';
echo $_GET['jumlahfilm'];
echo ' film terbaikku adalah: ';
echo ' <br/>';
daftarfilm_1();
if ($_GET['jumlahfilm'] == 10) {
daftarfilm_2();
}
//akhir baris yang dihapus
}
?>
</body>
</html>
2.
Ubahlah file film1.php
seperti berikut:
<?php
session_start();
$_SESSION['username']
= $_POST['user'];
$_SESSION['userpass']
= $_POST['pass'];
$_SESSION['authuser']
= 0;
//memeriksa
informasi username dan password
if
(($_SESSION['username'] == 'Rismon') and
($_SESSION['userpass'] == '12345')) {
$_SESSION['authuser'] = 1;
} else {
echo 'Maaf, Anda tidak diijinkan untuk
membaca halaman ini';
exit();
}
?>
<html>
<head>
<title> Cari Film Favoritku! </title>
</head>
<body>
<?php
include 'header.php'; ?>
<?php
$filmfavku
= urlencode('Fast and Furious');
echo
"<a href=\"situsfilm.php?filmfav=$filmfavku\">";
echo 'Klik
di sini untuk melihat informasi film favoritku!';
echo
'</a>';
?>
<br/>
<!--hapus baris-baris berikut
<a href="situsfilm.php?jumlahfilm=5"> Klik
di sini untuk melihat 5 film terbaik. </a>
<br/>
<a href="situsfilm.php?jumlahfilm=10"> Klik
di sini untuk melihat 10 film terbaik. </a>
akhir baris yang dihapus-->
<a href="situsfilm.php"> Klik
di sini untuk melihat 10 film favoritku. </a>
<br/>
<a
href="situsfilm.php?sorted=true"> Klik di sini untuk
melihat 10 film favoritku yang terurut secara
alfabetik. </a>
</body>
</html>
3.
Sekarang Anda log in dengan file login.php (dengan nama Rismon dan password 12345), dan ketika Anda
mengklik daftar 10 film, Anda akan melihat tampilan berikut:
Perintah while
Berikut merupakan sebuah contoh
bagaimana Anda dapat menggunakan perintah while.
Kode ini menghitung dari 1 sampai 5 dan menampilkan setiap angka pada baris
yang terpisah. Pertama-tama, sebuah variabel $angka ditetapkan menjadi 0. Variabel ini kemudian ditambah 1
setiap kali loop beriterasi. Perintah while memeriksa apakah nilai dari $angka kurang dari 5. Setelah lima kali
iterasi, nilai dari $angka adalah 6,
sehingga loop berhenti.
<?php
$angka = 0;
while ($angka < 5) {
$angka = $angka + 1;
echo $angka;
echo ‘<br/>’;
}
?>
Kode berikut melakukan hal yang
sama, tetapi menggunakan loop do/while.
Kode ini bekerja persis sama, kecuali bahwa kondisi diperiksa di akhir loop.
Dengan loop while, ada kemungkinan
bahwa kondisi bernilai false dan kode di dalam tubuh while tidak pernah dieksekusi. Tetapi dengan pemeriksaan di akhir
loop, seperti loop do/while, kode di
dalam loop tersebut akan selalui dieksekusi sedikitnya sekali.
<?php
$angka = 0;
do {
$angka = $angka + 1;
echo $angka;
echo ‘<br/> ’;
} while ($angka < 5);
?>
Contoh
|
Menggunakan
fungsi while
|
1.
Lakukanlah beberapa perubahan pada program film1.php seperti berikut:
<?php
session_start();
$_SESSION['username']
= $_POST['user'];
$_SESSION['userpass']
= $_POST['pass'];
$_SESSION['authuser']
= 0;
//memeriksa
informasi username dan password
if
(($_SESSION['username'] == 'Rismon') and
($_SESSION['userpass'] == '12345')) {
$_SESSION['authuser'] = 1;
} else {
echo
'Maaf, Anda tidak diijinkan untuk membaca halaman ini';
exit();
}
?>
<html>
<head>
<title> Cari Film Favoritku!
</title>
</head>
<body>
<?php
include 'header.php'; ?>
<?php
$filmfavku
= urlencode('Fast and Furious');
echo
"<a href=\"situsfilm.php?filmfav=$filmfavku\">";
echo 'Klik
di sini untuk melihat informasi film favoritku!';
echo
'</a>';
?>
<br/>
<!-- hapus baris-baris berikut
<a href="situsfilm.php"> Klik
di sini untuk melihat 10 film favoritku. </a>
<br/>
<a
href="situsfilm.php?sorted=true"> Klik di sini untuk
melihat 10 film favoritku yang terurut
secara alfabetik. </a>
akhir
baris yang dihapus -->
<br/>
Atau pilih berapa banyak film yang Anda suka:
<br/>
<form method="post"
action="situsfilm.php">
<p> Masukkan jumlah film (sampai
dengan 10):
<input type="text"
name="jum" maxlength="2" size="2"/>
<br/>
Centang untuk mengurutkan secara
alfabetik:
<input type="checkbox"
name="sorted"/>
</p>
<input type="submit"
name="submit" value="Submit"/ >
</form >
</body>
</html>
2.
Lakukanlah beberapa perubahan pada program situsfilm.php seperti berikut:
<?php
session_start();
//memeriksa apakah pengguna telah login dengan
password yang valid
if ($_SESSION['authuser'] != 1) {
echo
'Maaf, tetapi Anda tidak memiliki ijin untuk melihat halaman ini!';
exit();
}
?>
<html>
<head>
<title>
<?php
if (isset($_GET['filmfav'])) {
echo ' - ';
echo
$_GET['filmfav'];
}
?>
</title>
</head>
<body>
<?php include 'header.php'; ?>
<?php
$arrayfilmfav = array('Maleficient',
'Fast and Furious',
'The Holy Grail',
'Die Hard',
'Matrix',
'Terminator 2',
'Star Trek',
'Battle Ship',
'Godfather',
'Mummy');
if (isset($_GET['filmfav'])) {
echo
'Selamat datang ke situs kami, ';
echo
$_SESSION['username'];
echo '!
<br/>';
echo 'Film
Favorit saya adalah ';
echo
$_GET['filmfav'];
echo
'<br/>';
$ratingfilm = 5;
echo
'Rating yang saya berikut untuk film ini adalah: ';
echo
$ratingfilm;
}
else {
echo
'Daftar ' . $_POST['jum'] . ' film favoritku ';
if
(isset($_POST['sorted'])) {
sort($arrayfilmfav);
echo '(terurut secara alfabetik)';
}
echo
' adalah: <br/>';
//
hapus baris-baris berikut
echo
'<ol>';
foreach ($arrayfilmfav as $film) {
echo '<li>';
echo $film;
echo '</li>';
}
echo
'</ol>';
// akhir baris yang dihapus
$jumdaftar
= 0;
echo
'<ol>';
while
($jumdaftar < $_POST['jum']) {
echo '<li>';
echo $arrayfilmfav[$jumdaftar];
echo '</li>';
$jumdaftar = $jumdaftar + 1;
}
echo
'</ol>';
}
?>
</body>
</html>
3.
Sekarang Anda log in dengan file login.php (dengan nama Rismon dan password 12345), masukkan jumlah
film yang Anda inginkan. Anda juga bisa mencentang kotak periksa yang
disediakan untuk mengurutkan array. Pada layar akan ditampilkan berikut:
No comments:
Post a Comment