Anda di halaman 1dari 136

BAB 1

PENDAHULUAN
Saat ini, semakin banyak pengguna internet yang sudah
mempunyai web site sendiri, baik itu yang menggunakan web hosting
gratis, dari ISP, fasilitas pendidikan ataupun yang mempunyai nama
domain sendiri. Namun sebagian besar situs yang mereka buat
adalah web site yang statis. Mengapa? Salah satu jawabannya adalah
bahwa mereka belum mengetahui cara pembuatan halaman web
yang dinamis. Memang masih banyak pemakai internet yang baginya,
bisa mengakses internet atau bisa membuat homepage sendiri (statis)
sudah merupakan suatu kebanggaan tersendiri. Memang kita dapat
membuat halaman web yang baik dan atraktif dan hanya dengan
mengunakan tag-tag atau sintaks HTML murni. Namun rasanya situs
anda belumlah cukup profesional tanpa adanya salam dinamis, Hit
Counter, Feedback Form, Buku Tamu, dan aplikasi database.
Masih banyak pemakai internet yang merasa takut terhadap
bagaimana rumitnya membuat sebuah program atau script yang
menghasilkan halaman web yang dinamis. Padahal sesungguhnya
untuk

membuat

situs

yang

dinamis

dan

interaktif,

tidaklah

dibutuhkan kemampuan pemrograman yang tinggi.


Mempelajari bahasa script pada dasarnya tidak berbeda
dengan mempelajari bahasa pemrograman lainya. Bagi Anda yang
mempunyai latar belakang sebagai programmer, tentulah lebih
mudah untuk memahami dan menguasainya dalam waktu singkat.
Namun bagi Anda yang tidak mempunyai latar belakang sebagai
seorang programmer, jangan berkecil hati dan bersabarlah. Buku ini
dibuat

dan

disusun

sedemikian

rupa

guna

menyederhanakan

pemrograman yang demikian kompleks sehingga menjadi mudah


dicerna dan dipahami oleh semua orang dalam membangun web site
yang interaktif dan dinamis, termasuk bagi Anda yang tidak
mempunyai latar belakang programmer sebelumnya.
Bahasa script ada banyak macamnya, diantaranya mungkin
sudah sering Anda dengar seperti CGI Script, Java Script, VB Script,
ASP, PHP dan lain-lain. Didalam buku ini, jenis program yang akan
kita bahas adalah PHP, dengan beberapa pertimbangan antara lain
bahwa PHP memiliki beberapa kelebihan yang tidak dimiliki oleh
bahasa-bahasa sejenisnya. PHP mudah dibuat dan cepat dijalankan.
PHP dapat berjalan pada Web Server yang berbeda dalam Sistem
Operasi yang berbeda pula. PHP dapat berjalan pada sistem operasi
UNIX, Windows dan Macintosh. selain itu, PHP adalah salah satu
bahasa Serve-side yang paling populer saat ini berdasarkan hasil
survey dari Netcraft, setara dalam jumlah pemakaian dengan mod _
perl, dibawah CGI dan ASP.
Buku ini adalah sebuah buku panduan yang sangat praktis
dan padat yang akan membahas mengenai aturan-aturan dasar
script PHP, dasar-dasar pemrograman PHP, fungsi-fungsi dasar PHP
dan Integrasinya dengan database MySql yang pada tujuannya agar
Anda bisa memahami dengan cepat dan praktis bagaimana membuat
berbagai macam program atau script PHP yang akan memjadikan
situs Anda menjadi sebuah situs yang dinamis dan interaktif.
Anda akan mempelajari bagaimana menampilkan Hari, Tanggal
serta Jam saat situs Anda dikunjungi oleh seseorang. Penampilan
waktu tersebut bukan hanya dalam format bahasa Inggris, namun
dengan manipulasi data Anda bisa menampilkannya dalam format
bahasa Indonesia. Selain itu Anda bahkan bisa memberi ucapan
2

salam

yang dinamis yang tergantung kapan orang tersebut

mengunjungi situs Anda. Contoh salam dinamis adalah Selamat Pagi,


Selamat Siang, Selamat Sore, atau Selamat Malam.
Pada tahap selanjutnya, Anda akan menggunakan fasilitas
yang melibatkan keterlibatan pengunjung serta pemrosesan file dan
email. Pada tahapan ini Anda akan mempelajari bagaiman membuat
Formulir Masukan yang memungkinkan Anda memperoleh input dari
pengunjung untuk selanjutnya diproses bagaimana mestinya serta
membuat Hit Counter, Buku Tamu / Guest Book, Feedback Forn dan
Formulir Pesanan/Pembelian yang kesemuanya akan membuat situs
Anda menjadi situs yang interaktif.
Kemudian, Anda akan diperkenalkan metode cookies dan
session untuk menyimpan variabel dan pada tahap terakhir kita akan
belajar menginterasikan database (MySql) dengan script PHP. Disini
akan diajarkan tehnik dasar untuk memasukan, menampilkan,
mengupdate, serta menghapus data pada database.

BAB 2
PERSIAPAN SEBELUM MEMULAI
Sebelum memulai pelajaran PHP Anda ada hal yang sebaiknya
Anda lakukan agar proses balajar Anda berjalan lancar. yakni
Instalasi Web Server.
2.1 Instalasi Web Server
Agar Anda dapat melihat script Anda tanpa harus melakukan
up-load ke Web Server, maka Anda harus meng-install Web Server
Apache, Php dan MySql di dalam komputer atau PC Anda terlebih
dahulu, sehingga pengetesan script bisa dilakukan di PC Anda
sendiri. Kebutuhan perangkat keras komputer yang dibutuhkan
adalah minimal komputer dengan processor 486 Mhz, dengan RAM
16 MB. Sedangkan perangkat lunak yang dibutuhkan adalah sistem
operasi Windows 95/98/ME, Windows NT/2000, XP serta browser
Minimal Microsoft Internet Explorer 4.01. Disini tidak akan dijelaskan
bagaimana cara menginstall web server tersebut, sebab kita sudah
bisa menginstallnya dengan mudah melalui CD smartPHP. Penjelasan
rinci

menginstall

melalui

CD

SmartPHP

bisa

dilihat

di

file

petunjuk.txt pada CD tersebut.


2.2. Menggunakan File-File Contoh
Untuk mempercepat proses belajar, telah disediakan source
code script PHP di dalam CD SmartPHP sehingga Anda tidak perlu
bersusah payah mengetik ulang script yang terdapat di buku ini.
Yang perlu Anda lakukan adalah memahami script PHP tersebut
kemudian langsung mempraktekkannya.

BAB 3
PENGENALAN STRUKTUR PROGRAM PHP
Setelah Anda telah mempersiapkan segala sesuatunya, kini
saatnya kita akan memulai bermain dengan script PHP. Namun
sebelum kita memulai ada beberapa aturan-aturan dasar yang harus
Anda perhatikan. Silahkan lihat dibawah ini.
3.1. Aturan Dasar Script PHP
Pembuatan

script

PHP

sangatlah

mudah.

Anda

bisa

membuatnya dengan cepat menggunakan teks editor Notepad


ataupun editor teks lainya. Dalam penulisan script PHP, ada
beberapa aturan dasar yang harus Anda perhatikan diantaranya
adalah:

Fungsi-fungsi yang telah ada atau yang telah disediakan oleh


PHP adalah tidak case sensitive (tidak membedakan antara
huruf kecil dan huruf besar).

Variabel dalam PHP adalah case sensitive, olehnya itu Anda


harus berhati-hati dalam penulisan dan pemakaian variabel.
Variabel ditandai dengan adanya tanda dollar sign ($).

Penulisan script PHP diawali dengan tanda < (tanda lebih kecil)
dan diakhiri > (tanda lebih besar). Ada tiga cara penulisan
script PHP yaitu:

1. <?
Script PHP dituliskan disini
?>

2. <?php
Script PHP dituliskan disini.
?>
3. <SCRIPT LANGUAGE = php>
Script PHP dituliskan disini
</ SCRIPT>
Cara penulisan yang pertama adalah cara penulisan yang akan
sering kita gunakan di dalam buku ini karena lebih singkat. Cara
yang kedua digunakan untuk kombinasi dengan XML, sedangkan
cara terakhir atau cara yang ketiga digunakan untuk mengantisipasi
editor-editor yang tidak bisa menerima cara pertama dan kedua,
seperti Microsoft Frontpage. Setiap akhir baris dari sintaks PHP
selalu ditandai dengan tanda ; (titik koma). Pada saat merekam
dokumen script Anda, simpanlah dengan ekstension .PHP
Jika Anda bermaksud untuk menuliskan komentar didalam script
Anda, gunakan salah satu cara dibawah ini.
/* komentar dituliskan disini.*/
atau
// komentar dituliskan disini.

3.2. Struktur Dokumen Script PHP


Menuliskan dokumen script PHP sangat sederhana, lihatlah
contoh berikut ini:
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<?
Script PHP dituliskan disini..
?>
</BODY>
</HTML>
3.3. Mulai Bermain Dengan Script PHP
Untuk mulai dengan sebuah dokumen PHP, buatlah dokumen
sederhana dibawah ini dimana hasilnya berupa tulisan Hello, saya
sedang belajar PHP pada layar browser.
hello.php
<HTML>
<HEAD> </HEAD>
<BODY>
<?
print ("Hello, saya sedang belajar PHP");
?>
</BODY>
</HTML>

Setelah selesai, simpan dengan nama file hello.php pada working


direktori:
C:\myserver\scripts\
Jika Anda menyimpan ditempat atau pada direktori lain terkecuali
sub direktori \scripts\, maka script PHP Anda tidak dikenali dan
tidak bisa dijalankan oleh web browser.
3.4. Melihat Hasil Script PHP
Untuk melihat dari hasil dokumen yang Anda buat, maka Anda
harus menempatkannya file-file dokumen tersebut didalam direktori
C:\myserver\scripts\ ini. Olehnya itu jika Anda menyimpannya pada
direktori lain, maka salinlah dokumen-dokumen tersebut ke dalam
direktori C:\myserver\scripts\ ini.
Untuk melihat dari hasil script dokumen yang baru saja Anda
buat dengan nama file hello.php tersebut diatas, maka terlebih
dahulu pastikan bahwa file tersebut telah berada dalam direktori
C:\myserver\scripts\. Setelah itu, nyalakan web server kemudian
bukalah Web Browser Anda dan pada address bar dari browser ketik:
http://localhost/hello.php

Jika semuanya berjalan lancar, maka hasilnya adalah sebagai


berikut:

Jika anda tidak mendapatkan hasil seperti yang diharapkan, maka


periksalah segala sesuatunya sebelum anda melanjutkan pelajaran
berikutnya.

BAB 4
DASAR-DASAR PEMROGRAMAN PHP
Dalam

bab

ini

Anda

akan

mempelajari

dasar-dasar

pemrograman PHP. Tidak semua fasilitas dari PHP akan dibahas,


namun pembahasan dibatasi hanyapada item-item, perintah dan
fungsi-fungsi yang akan banyak digunakan dalam buku ini guna
menjaga kesederhanaan dan tidak membuat Anda menjadi bingung
oleh kerumitan-kerumitan pemrograman PHP. Jika Anda bermaksud
untuk mengetahui lebih dalam mengenai PHP, Anda bisa mencari
buku khusus yang membahas mengenai pemrograman PHP lebih
detail.
4.1. Variable
dalam setiap bahasa pemrograman, selalu dikenal istilah
variable. Variable adalah sebuah istilah tempat untuk menyimpan
data yang nilainya dapat berubah-ubah. Variable ditandai atau selalu
diawali dengan adanya tanda dollar sign ( $ ). Variable dalam PHP
adalah case sensitive (membedakan antara huruf kecil dan huruf
besar), oleh karena itu itu Anda harus hati-hati dalam penulisan dan
pemakaian nama variable. Variable dengan nama $abc berbeda
dengan variable $Abc. Contoh penggunaan variabel:
<?
$nama = Dani;
$umur = 8 tahun;
$Nilai = 10;
?>

10

4.2. Type Data


PHP mengenal tiga macam data yakni string, integer dan
floating point. String diapit oleh tanda petik ganda ( ) atau tanda
petik tunggal ( ). Tipe data floating point lebih dikenal dengan nama
double dan selalu dalam bentuk desimal. Contoh penulisan tipe data
dalam PHP adalah sebagai berikut:
Tipe data string:
$nama = Dani;
$umur = 8 tahun;
Tipe data integer:
$Nilai = 10;
$jumlah = 5;
Tipe data floating point (double):
$total = 10.00;
$jarak = 35.15;

4.3. Konstanta
Konstanta adalah variable nilainya tidak pernah berubah atau
tetap. Konstanta ini dideklarasikan dan diberi nilai pada awal
program dan nilainya tetap selama program berjalan.
PHP

telah

mendefinisikan

beberapa

konstanta

seperti

contohnya konstanta TRUE yang telah diberi nilai 1 dan FALSE yang
bernilai 0 dan beberapa konstanta-konstanta lainya.

11

Selain itu Anda juga dapat membuat sendiri konstanta atau lebih
dari PHP. Cara pendeklarasian konstanta adalah sebagai berikut:
define(nama_konstanta, nilai);
contoh penulisan konstanta:
define(NAMA, John Tralala);
define(JABATAN, Direktur);
echo Namaku adalah NAMA dan jabatanku adalah JABATAN;
perintah diatas akan menampilkan teks : Namaku adalah John
Tralala dan jabatanku adalah Direktur.
4.4. Operator
Sebagaimana

dalam

pembahasan

pemrograman

lainya,

didalam PHP dikenal ada beberapa operator. Operator adalah simbol


yang digunakan untuk memanipulasi data. Di dalam buku ini kita
hanya akan membahas operator yang sering digunakan guna
menjaga

kesederhanaan

buku

ini.

Operator-operator

tersebut

diantaranya adalah:

12

Penambahan

Pengurangan

Perkalian

Pembagian

Modulus

++

Inkrementasi

--

Dekrementasi

==

Sama dengan

!=

Tidak sama dengan

<

Lebih kecil

>

Lebih besar

<=

Lebih kecil sama dengan

>=

Lebih besar sama dengan

AND

Logika AND

OR

Logika OR

Penggabungan string

Penugasan

Mengacu pada variable

13

Lihat script berikut ini, kemudian jalankan pada browser:


operator.php
<HTML>
<HEAD> </HEAD>
<BODY>
<?
/* Pemberian Nilai Variabel */
$A=10;
$B=5;
$Nama_Depan_Saya="Andi";
$Nama_Tengah_Saya="Rahman";
$Nama_Belakang_Saya="Hutabarat";
/* Penggunaan Operator */
$Penjumlahan=$A+$B;
$Pengurangan=$A-$B;
$Hasil_Kali=$A*$B;
$Hasil_Bagi=$A/$B;
$Nama_Lengkap=$Nama_Depan_Saya.$Nama_Tengah_Saya.$Nama_Belakang_Saya;
/* Mencetak Nilai-Nilai Variabel */
print ("Nilai A = $A <BR>\n");
print ("Nilai B = $B <P>\n");
print ("Nama depan saya : $Nama_Depan_Saya <BR>\n");
print ("Nama tengah saya :$Nama_Tengah_Saya <BR>\n");
print ("Nama belakang saya: $Nama_Belakang_Saya <P>\n");
print
print
print
print
print

("Hasil penjumlahan antara A dan B adalah: $Penjumlahan <BR>\n");


("Hasil dari A dikurangi B adalah: $Pengurangan <BR>\n");
("Hasil perkalian antara A dan B adalah: $Hasil_Kali <BR>\n");
("Hasil dari A dibagi B adalah: $Hasil_Bagi <BR>\n");
("Nama lengkap saya adalah: $Nama_Lengkap <BR>\n");

?>
</BODY>
</HTML>

14

4.5. Kontrol Pencabangan


Pencabangan adalah melakukan suatu proses jika kondisi yang
ditentukan terpenuhi. Di dalam PHP dikenal tiga macam perintah
percabangan yaitu:
-

IF

IF ELSE

SWITCH

Di bawah ini kita akan membahas satu-persatu


4.5.1. IF
Perintah IF adalah kontrol percobaan yang akan melakukan
serangkaian perintah jika kondisi yang diberikan padanya terpenuhi
atau bernilai benar.
Cara penulisanya adalah sebaai berikut:
If(kondisi)
{
serangkaian perintah yang akan dijalankan jika kondisi
terpenuhi
}
untuk memudahkan Anda dalam memahaminya, silahkan lihat
contoh berikut ini:

15

Kontrol_if.php
<HTML>
<HEAD> </HEAD>
<BODY>
<?
$A=1;
$B=2;
if ($A < $B)
{
print("A lebih kecil dari B");
}
?>
</BODY>
</HTML>

Script diatas akan berjalan seperti ini.


. Apakah A yang bernilai 1 lebih kecil dari B yang bernilai 2?
. Jika jawabanya adalah YA, maka tulislah pada layar browser

lebih kecil dari B.


Jalankan script tersebut dan lihat hasilnya pada Browser Anda.
Cobalah ganti nilai $A=3; lalu rekam dan panggil script tersebut lalu
bandingkan hasilnya dengan yang pertama tadi.
4.5.2. IF ELSE
Perintah ini hampir sama dengan perintah IF di atas, bedanya
kalau perintah IF tidak melakukan proses apa-apa jika kondisinya
tidak terpenuhi, sedangkan IF ELSE mempunyai pilihan proses
yang akan dilakukan jika kondisinya tidak terpenuhi.
Cara penulisanya adalah sebagai berikut:

16

If(kondisi)
{
serangkaian perintah yang akan dijalankan jika
kondisi terpenuhi;
}
else
{
serangkaian perintah yang akan dijalankan jika kondisi
tidak terpenuhi;
}
Lihat contoh berikut ini :
Kontrol_if_else.php
<HTML>
<HEAD> </HEAD>
<BODY>
<?

?>

$A=3;
$B=2;
if ($A < $B)
{
print("A lebih kecil dari B");
}
else
{
print("A lebih besar dari atau sama dengan B");
}

</BODY>
</HTML>

17

Script diatas akan berjalan seperti ini.


.

Apakah A yang bernilai 3 lebih kecil dari B yang bernilai 2?

Jika jawabanya adalah YA, maka tulislah pada layar browser A

lebih kecil dari B.


.

Jika jawabanya adalah TIDAK, maka tulislah pada layar browser A

lebih besar dari atau sama dengan B.


4.5.3. SWITCH
Perintah SWITCH digunakan jika pencabangan yang akan
dilakukan lebih dari dua. Jika anda perhatikan pada perintah IF atau
IF ELSE, maka pilihan prosesnya hanya ada dua jika kondisi
bernilai YA atau TIDAK. Bagaimana jika kondisi mempunyai nilai
yang banyak? Yang bukan hanya sekedar YA atau TIDAK? Tentu saja
secara logika Anda bisa membuat IF di dalam IF akan tetapi ini akan
membuat script Anda menjadi rumit dan susah dikontrol. Olehnya
itu

sebagai

alternatif,

PHP

menyediakan

perintah

kontrol

pencabangan SWITCH ini.

18

Cara penulisanya adalah sebagai berikut:


Switch(kondisi)
{
case konstanta 1:
serangkaian perintah 1;
break;
case konstanta 2:
serangkaian perintah 2;
break;
case perintah 3:
serangkaian perintah 3;
break;
case perintah 4:
serangkaian perintah 4;
default:
serangkaian perintah;
}
Perintah SWITCH akan mendeteksi nilai dari kondisi dan
membandingkanya dengan nilai kostanta pada tiap tiap case.
perbandingan dimulai dari konstanta 1 sampai dengan konstanta
terakhir. Jika ditemukan nilai yang sama maka serangkaian perintah
akan dijalankan pada case yang bersangkutan sampai ditemukan
peryataan break. Peryataan break ini akan mengakhiri perintah
SWITCH. Jika tidak ditemukan nilai yang sama antara nilai kondisi
dan nilai nilai kostanta, maka serangkaian perintah pada default
akan dijalankan.

19

Contoh :
kontrol_case.php
<HTML>
<HEAD> </HEAD>
<BODY>
<?

$A=3;
switch($A)
{
case 1:
print("A
break;
case 2:
print("A
break;
case 3:
print("A
break;
case 4:
print("A
break;
case 5:
print("A
break;
default:
print("A
}

mempunyai nilai = 1");


mempunyai nilai = 2");
mempunyai nilai = 3");
mempunyai nilai = 4");
mempunyai nilai = 5");
mempunyai nilai selain 1,2,3,4,5");

?>
</BODY>
</HTML>

Buat, rekam dan jalankan sript diatas dan amati hasilnya dengan
mengganti ganti nilai variable $A.

20

4.6. Kontrol Pengulangan


Di dalam membuat program, terkadang Anda ingin agar perintah
dilakukan secara berulang ulang. Anda tidak perlu menuliskan
perintah

sebanyak

pengulangan

tersebut,

namun

Anda

bisa

menggunakan perintah perintah pengulangan. Perintah perintah


tersebut adalah: FOR, WHILE dan DO WHILE
4.6.1 FOR
Perintah pengulangan FOR adalah perintah pengulangan yang paling
sederhana, dimana tidak ada pengujian kondisi. Yang perlu Anda
masukkan hanyalah nilai awal dan nilai akhir dari variable
penghitung. Anda bisa menggunakan perintah FOR untuk membuat
pengulangan yang sudah diketahui jumlahnya.
Cara penulisanya:
For ( nilai_awal, nilai_akhir, inkrementasi/dekrementasi)
{
serangkaian perintah yang akan diulang;
}
Untuk memudahkan Anda dalam memahami konsep pengulangan
dengan FOR ini, silahkan lihat contoh berikut:
kontrol_for.php
<HTML>
<HEAD>
<TITLE>Contoh Penggunaan FOR</TITLE>
</HEAD>
<BODY>

21

<?
print ("Bilangan bulat dari 1 hingga 10 adalah: <BR>\n");

?>

for ($bilangan=1; $bilangan<=10; $bilangan++)


{
print ("$bilangan <BR>\n");
}

</BODY>
</HTML>

Jalankan script diatas dan lihat hasilnya pada browser.


4.6.2 WHILE
Perintah pengulangan WHILE adalah perintah pengulangan
yang akan dilakukan selama kondisi terpenuhi atau selama kondisi
bernilai TRUE. Pengulangan akan berhenti jika kondisi tidak
terpenuhi lagi atau kondisi bernilai FALSE. Satu hal yang harus
diperhatikan bahwa untuk masuk ke proses pengulangan, maka
kondisi harus dibuat TRUE terlebih dahulu.
Cara penulisanya adalah:
While (kondisi)
{
serangkaian perintah yang akan diulangi;
}

22

Perhatikan contoh berikut:


kontrol_while.php
<HTML>
<HEAD>
<TITLE>Contoh Penggunaan WHILE</TITLE>
</HEAD>
<BODY>
<?
print ("Bilangan bulat dari 1 hingga 10 adalah: <BR>\n");
$bilangan=1;
while ($bilangan<=10)
{
print ("$bilangan <BR>\n");
$bilangan++;
}
?>
</BODY>
</HTML>

Jalankan script diatas dan lihat hasilnya pada browser. Ada hal
yang harus Anda perhatikan dalam menggunakan WHILE, bahwa
harus ada kondisi yang menyebabkan proses pengulangan akan
berhenti. Jika tidak maka proses pengulangan akan berjalan terus
tanpa ada hentinya.
4.6.3 DO WHILE
Sebenarnya perintah ini mirip dengan printah WHILE, yang
membedakannya adalah letak dari pemeriksaan kondisinya. Kalau
pada perinah WHILE, pemeriksaan kondisi dilakukan sebelum
memasuki proses perulangan, maka pada DO WHILE pmeriksaan
kondisi dilakukan setelah proses perulangan berlangsung. Dengan
demikian pada perintah DO WHILE, proses pengulangan akan
23

berlangsung minimal satu kali sekalipun kondisi tidak terpenuhi,


sedangkan pada perintah WHILE proses pengulangan tidak akan
pernah terjadi jika kondisi tidak terpenuhi. Cara penulisannya:
Do
{
serangkaian perintah pengulangan;
}
while(kondisi)
Perhatikan contoh berikut:
kontrol_do_while.php
<HTML>
<HEAD>
<TITLE>Contoh Penggunaan DO...WHILE</TITLE>
</HEAD>
<BODY>
<?

print ("Bilangan bulat dari 1 hingga 10 adalah: <BR>\n");


$bilangan=1;
do
{

print ("$bilangan <BR>\n");


$bilangan++;

}
while ($bilangan<=10);
?>
</BODY>
</HTML>

Jika Anda menjalankan kondisi diatas, maka hasilnya akan


sama pada contoh sebelumnya yang menggunakan perintah WHILE,
jadi sebenarnya banyak cara memprogram untuk mendapat hasil
yang sama.
24

BAB 5
FUNGSI-FUNGSI DASAR PHP
Seperti pada beberapa bahasa pemrograman lainnya, dalam
PHP pun anda bisa membuat sendiri fungsi-fungsi tertentu sesuai
dengan kebutuhan anda. Namun PHP juga telah menyediakan
fungsi-fungsi bulit-in yang siap pakai. Ada begitu banyak fungsifungsi built-in yang disediakan

oleh PHP, namun pada section ini

kita hanya akan membahas mengenai fungsi-fungsi built-in PHP yang


akan kita gunakan di dalam buku ini.
5.1. Mencetak / menampilkan Ke layar Browser
Untuk mencetak atau menampilkan sesuatu ke layar browser
pada saat script dijalankan, gunakan fungsi-fungsi di bawah ini :
Echo string-1, string-2, string-n
Fungsi echo akan mengirim satu atau lebih parameter yang
dipisahkan oleh tanda baca koma ke layar browser.
Contoh :
fungsi_echo.php
<HTML>
<HEAD> </HEAD>
<BODY>
<?
$nama="Dani ";
echo "Hello, saya sedang belajar PHP ",4," nama saya ", $nama, 7.5, "
tahun";
?>
</BODY>
</HTML>

25

Print (String keluaran)


Fungsi print akan mencetak atau menampilkan keluaran pada
layar browser. Ada perbedaan antara fungsi ini dengan fungsi echo,
yakni fungsi print ini hanya bisa mengirim satu parameter saja. Coba
Anda

ganti

kata

echo

menjadi

print

pada

script

diatas

(fungsi_echo.php) maka hasilnya akan error karena ia mengandung


lebih dari satu parameter Contoh fungsi print :
fungsi_print.php
<HTML>
<HEAD> </HEAD>
<BODY>
<?
$nama="Dani";
print ("Hello, saya sedang belajar PHP <BR>\n");
print ("Nama saya $nama <BR>\n");
?>
</BODY>
</HTML>

5.2. Hari, tanggal dan Jam


PHP

telah

menyediakan

fungsi-fungsi

yang

berhubungan

dengan hari, tanggal dan jam dengan format-format tertentu.


Silahkan lihat berikut ini :
String date (string format, integer timestamp)
Fungsi date menghasilkan atau akan mengambil nilai hari,
tanggal dan jam pada saat script dijalankan. Ada beberapa format
yang bisa

digunakan

seperti pada tabel di bawah ini. Argumen

timestamp adalah optional yang berarti bisa disertakan atau tidak.


String format yang dikenal adalah seperti di bawah ini (perhatikan
huruf besar/kecilnya):
26

String Format

Hasil

am atau pm

AM atau PM

Tanggal (dalam dua digit mislnya : 05)

Nama hari dalam singakatan (mis : Fri)

Nama bulan (January)

Jam 1 sampai 12

Jam 1 sampai jam 23

Menit, yaitu 00 s.d 59

Tanggal, yaitu 1 s.d 31

Nama hari lengkap (mis : Friday)

Bulan dalam angka, yakni 01 s.d 12

Nama bulan dalam singakatan (mis : Jan)

Tahun dalam dua digit (mis : 99)

Tahun dalam empat digit (mis : 1999)

Hari ke dari tahun, yaitu 0 s.d 365

Untuk melihat contoh dan hasilnya, buatlah dokumen script PHP di


bawah ini dan jalankan pada web browser Anda.

27

fungsi_date.php
<HTML>
<HEAD> </HEAD>
<BODY>
<?
print ("Hari ini adalah: ");
print (date("l"));
print ("<BR>\n");
print ("Tanggal: ");
print (date("d-F-Y"));
print ("<BR>\n");
print ("Waktu: ");
print (date("h:i A"));
?>
</BODY>
</HTML>

Amati hasil dan ganti-gantilah string format sesuai dengan


yang anda inginkan. Jika anda amati hasilnya adalah berupa hari,
tanggal dan waktu dalam standar international atau dalam bahasa
Inggris. Jika anda menginginkan hasil tersebut di dalam bahasa
Indonesia maka anda perlu melakukan konversi ke dalam Bahasa
Indonesia. Hal ini mengenai ke dalam

bahasa Indonesia ini akan

kita bahas pada tahap selanjutnya.


Array getdate (integer timestamp)
Seperti pada fungsi date, getdate juga menghasilkan atau akan
mengambil nilai hari, tanggal dan jam pada saat script dijalankan.
Bedanya adalah pada getdate hasilnya bukan berupa string, namun
berupa

array(matrix).

memudahkan

Dengan

hasil

yang

berupa

array

ini

kita dalam memanipulasi data tanggal tersebut.

Argumen timestamp memudahkan kita dalam memanipulasi data


tanggal tersebut. Argumen

timestamp adalah optional yang boleh

28

diisi atau tidak. Elemen

array atau matrix dari fungsi getdate ini

adalah seperti pada tabel di bawah ini :


Elemen Array

Hasil

wekday

Nama hari

wday

Hari ke dalam seminggu (Monday = 1, Tuesday = 2, dst

yday

Hari ke dari tahun

mday

Tanggal

month

Nama bulan (lengkap)

mon

Bulan dalam angka

year

Tahun

hours

Jam

minutes

Menit

seconds

Detik

Untuk melihat seperti apa hasil dari elemen array di atas, silahkan
jalankan script di bawah ini :
fungsi_get_date.php
<HTML>
<HEAD> </HEAD>
<BODY>
<?
$waktu=getdate();
print ("Hasil dari elemen
print ("Hasil dari elemen
print ("Hasil dari elemen
print ("Hasil dari elemen
print ("Hasil dari elemen
print ("Hasil dari elemen
print ("Hasil dari elemen
print ("Hasil dari elemen
print ("Hasil dari elemen

array
array
array
array
array
array
array
array
array

weekday: $waktu[weekday] <BR>\n");


wday: $waktu[wday] <BR>\n");
mday: $waktu[mday] <BR>\n");
yday: $waktu[yday] <BR>\n");
month: $waktu[month] <BR>\n");
mon: $waktu[mon] <BR>\n");
year: $waktu[year] <BR>\n");
hours: $waktu[hours] <BR>\n");
minutes: $waktu[minutes] <BR>\n");

29

print ("Hasil dari elemen array seconds: $waktu[seconds] <BR>\n");


?>
</BODY>
</HTML>

5.3. Pengoperasian File


PHP juga melengkapi fungsi-fungsi built in yang berhubungan
membuka file, menulis data ke file, membaca isi file dan menutup
kembali file tersebut.
5.3.1. Membuka File
fungsi : integer fopen(string nama_file, string_mode)
Untuk memulai bekerja dengan sebuah file, langkah pertama
yang harus anda lakaukan adalah membuka file tersebut. Untuk
membuka

sebuah file PHP telah

menyediakan

sebuah fungsi

khusus yaitu fopen. Argumen string mode akan menentukan mode


dari pengoperasian

file, apakah hanya membaca, hanya menulis

atau membaca dan menulis dan lain-lain. Untuk lebih jelasnya


silahkan lihat tabel berikut ini :
String Mode

Jenis Pengoperasian File

Hanya untuk membaca file saja


-Untuk menulis saja, menimpa/menghapus isi

file sebelumnya.
-Membaca file jika belum ada.
-Untuk menambah (append) isi pada akhir file

(eof/end of file)
-Membuat file jika belum ada

30

r+

Untuk membaca dan menulis

w+

-Untuk

membaca

dan

menulis,

menimpa

menghapus isi file sebelumnya


-Membuat file jika belum ada.
a+

-Untuk

membaca

dan

menulis

tetapi

tidak

menimpa/menghapus data lama, menambah isi


file pada akhir file (eof/end of file)
-Membuat file jika belum ada.
5.3.2. Menulis Ke Dalam File
Fungsi : boolean fputs (integer file_handle, string keluaran)
Untuk menulis ke dalam file, PHP menyediakan fungsi fputs.
Fungsi ini akan mengembalikan nilai TRUE (1) jika proses penulisan
berjalan sukses dan nilai FALSE (0) jika proses penulisan gagal.
5.3.3. Membaca Isi File
Fungsi : boolean gfets (interger file_handle, integer length)
Untuk membaca isi file, PHP menyediakan fungsi fgets.
Argumen length menunjukkan panjang string yang akan dibaca.
Untuk membaca atau menulis isi dari sebuah file ada beberapa hal
yang harus diperhatikan yaitu pertama-tama kita harus membuka
file

tersebut

kemudian

membaca/menulisnya

lalu

kemudian

menutupnya kembali. Seluruh proses ini harus lengkap jika anda


tidak menginginkan

isi atau data dari file anda menguap entah

kemana.
31

5.3.4. Posisi End of File


Fungsi : boolean feof (integer file_handle)
Di dalam sebuah file, ada sebuah bagian yang disebut dengan
end of file (eof), yang menunjukkan posisi akhir sebuah file. Fungsi
feof di dalam PHP akan mengembalikan nilai TRUE (1) jika pointer
telah berada pada posisi end of file ini

dan sebaliknya akan

mengembalikan nilai FALSE (0) jika posisi pointer belum mencapai


end of file atau bagian akhir dari sebuah file.
5.3.5. Menutup File
Fungsi : boolean fclose (interger_handle)
Jika proses penulisan

telah selesai, maka file harus

segera

ditutup. Untuk menutup file yang terbuka PHP menyediakan fungsi


fclose. Fungsi ini akan mengembalikan nilai TRUE

(1) jika file

berhasil ditutup dan nilai FALSE (0) jika file tidak dapat ditutup.
5.3.6. Contoh Script Pengoperasian File
Untuk

memudahkan

anda

pengoperasian file-file ini, maka

dalam

memahami

konsep

berikut ini kami menyediakan

beberapa contoh.

32

Contoh 1: membuat dan menulis file baru


Berikut ini kita akan membuat sebuah file baru dengan nama
coba.txt serta mengisinya dengan data Hello, saya sedang belajar
PHP.
menulis_file.php
<HTML>
<HEAD><TITLE> Membuat File coba.txt </TITLE> </HEAD>
<BODY>
<?
ada */

/* Membuka file dengan mode menulis dan membuat file jika belum
$file=fopen("coba.txt","w");
/* Mengecek apakah proses pembukaan file gagal atau sukses */
if (!($file))
{
print ("Proses membuat file gagal");
}
else
{
/* Menulis Ke Dalam File */
fputs($file,"Hello, saya sedang belajar PHP \n");
/* Menutup File */
fclose($file);
print ("Proses membuat file sukses");
}

?>
</BODY>
</HTML>

Setelah anda selesai menuliskan scriptnya, jalankan lalu


periksa hasilnya berupa sebuah file dengan nama coba.txt pada
direktori C:\myserver\scripts. File tersebut adalah sebuah file text
yang isinya bisa anda lihat pada teks editor seperti Notepad
33

Contoh 2 : Membaca Isi File


Pada contoh 1 di atas, anda telah membuat sebuah file baru
dengan nama file coba.txt. Sekarang kita akan mencoba untuk
membuka lalu membaca isinya dengan script PHP dan menampilkan
isi file tersebut ke atas layar browser.
membaca_file.php
<HTML>
<HEAD>
<TITLE> Membaca File coba.txt </TITLE>
</HEAD>
<BODY>
<?
/* Membuka file dengan mode membaca saja */
$file=fopen("coba.txt","r");
/* Mengecek apakah proses pembukaan file gagal atau sukses */
if (!($file))
{
print ("Proses membuka file gagal");
}
else
{
/* Membaca isi file dan Menuliskan ke layar browser */
while(!feof($file))
{
$isi_file=fgets($file,255);
print("$isi_file <BR>\n");
}
/* Menutup File */
fclose($file);
}
?>
</BODY>
</HTML>

Jalankan

script

di

atas,

jika

anda

melakukan

segala

sesuatunya dengan benar maka isi file coba.txt akan ditampilkan


34

pada layar browser anda berupa tulisan Hello, saya sedang belajar
PHP
Contoh 3 : menambah Isi File
Pada contoh berikut ini, anda akan menambahkan

isi file

coba.txt. Tambahan yang akan dimasukkan ke dalam file tersebut


adalah Nama saya Dani. Lihat script di bawah ini :
menambah_isi_file.php
<HTML>
<HEAD>
<TITLE> Menambah Isi File coba.txt </TITLE>
</HEAD>
<BODY>
<?
/* Membuka file dengan mode append */
$file=fopen("coba.txt","a");
/* Mengecek apakah proses pembukaan file gagal atau sukses */
if (!($file))
{
print ("Proses membuka file gagal");
}
else
{
/* Menambah isi file pada eof */
fputs($file,"Nama saya Dani \n");
/* Menutup File */
fclose($file);
}
?>
</BODY>
</HTML>

35

Hasil dari script di atas akan menambah isi dari file coba.txt.
Jalankan script tersebut, lalu periksa
Notepad

atau

dengan

hasilnya dengan teks editor

menjalankan

script

pada

contoh

(membaca_file.php) untuk menampilkan isi file coba.txt yang baru


setelah penambahan.
Harapan kami semoga dengan ketiga contoh di atas dapat
memberikan gambaran kepada anda bagaimana bekerja dengan file
menggunakan script PHP sehingga anda bisa dengan mudah
berkreasi dan menghasilkan
dan interaktif

halaman-halaman web yang dinamis

seperti pada pembahasan-pembahasan

selanjutnya

berupa hit counter guest book/buku tamu dan lain-lain.


5.4. Mengirim Pesan Ke Alamat Email
PHP

menyediakan

fungsi

khusus

untuk

menangani

pengiriman informasi ke alamat email anda. Silahkan lihat fungsinya


berikut ini:
Fungsi : int mail (String to, string subject, string message, string
headers) Dimana :
* String to

: adalah alamat email tujuan

* String subject

: adalah subject dari email

* String message

: adalah isi dari email

* String headers

: berisi alamat email pengirim

Dalam beberapa kasus tertentu, anda tidak bisa menggunakan


fungsi email ini pada komputer lokal (localhost) Anda. Tetapi akan
berjalan pada saat anda meng-upload script PHP anda pada server
web. Penggunaan fungsi email ini bisa anda lihat contohnya pada
pembuatan Feedback Form pada buku ini.

36

BAB 6
ANEKA PROGRAM SITUS DINAMIS DENGAN PHP
Setelah anda mengetahui aturan-aturan dasar script PHP,
dasar-dasar pemrograman PHP serta fungsi-fungsi dasar PHP maka
ini tibalah saatnya bagi anda untuk membuat berbagai macam
program atau script PHP yang akan menjadikan situs anda menjadi
sebuah situs yang dinamis dan interaktif. Diantaranya anda akan
mempelajari bagaimana menampilkan Hari, Tanggal serta Jam saat
stius anda dikunjungi oleh seseorang.
Pada tahap selanjutnya, Anda akan menggunakan fasilitas
yagn melibatkan

keterlibatan

pengunjung, pemrosesan

email. Pada tahapan ini anda akan

mempelajari

file dan

bagaimana

membuat formulir Masukan yang memungkinkan anda memperoleh


inpout dari pengunjung untuk selanjutnya diproses sebagaimana
mestinya serta membuat

Hit Counter, Buku Tamu / Guest Book,

Feedback Form dan Formulir Pesananan / Pembelian


kesemuanya akan membuat situs Anda menjadi

yang

situs yang

interaktif.
6.1. Menampilkan Hari, Tanggal dan Jam pada Situs Anda
Seperti telah

dibahas pada bagian

terdahulu bahwa PHP

mempunyai fungsifungsi untuk menanganai waktu, seperti fungsi


date dan getdate. Namun hasil yang diberikan oleh fungsi ini adalah
nilai dalam bahasa inggris. Jika situs anda berbahasa Inggris tentu
tidak menjadi masalah, namun jika situs yang anda bangun adalah
situs dalam bahasa Indonesia, tentu sangat janggal atau ganjil
kelihatan jika anda menampilkan hari, tanggal, bulan, dll. Dalam
37

bahasa Inggris. Nah dengan PHP anda bisa melakukan manipulasi


data sehingga nilai-nilai dalam bahasa Inggris tersebut bisa anda
konversi ke dalam bahasa Indonesia. Lihat contoh berikut ini :
konversi_waktu.php
<HTML>
<HEAD>
<TITLE> Melakukan Konversi Waktu ke Dalam Bhs. Indonesia </TITLE>
</HEAD>
<BODY>
<?
/* Membaca Waktu */
$waktu=getdate();
/* Konversi Hari */
$hari = $waktu[weekday];
switch($hari)
{
case "Monday":
$hari = "Senin";
break;
case "Tuesday":
$hari = "Selasa";
break;
case "Wednesday":
$hari = "Rabu";
break;
case "Thursday":
$hari = "Kamis";
break;
case "Friday":
$hari = "Jum'at";
break;
case "Saturday":
$hari = "Sabtu";
break;
default:
$hari = "Minggu";
break;
}

38

/* Konversi Bulan */
$bulan = $waktu[mon];
switch($bulan)
{
case 1:
$bulan = "Januari";
break;
case 2:
$bulan = "Februari";
break;
case 3:
$bulan = "Maret";
break;
case 4:
$bulan = "April";
break;
case 5:
$bulan = "Mei";
break;
case 6:
$bulan = "Juni";
break;
case 7:
$bulan = "Juli";
break;
case 8:
$bulan = "Agustus";
break;
case 9:
$bulan = "September";
break;
case 10:
$bulan = "Oktober";
break;
case 11:
$bulan = "November";
break;
case 12:
$bulan = "Desember";
break;
default:
break;
}

39

print("Waktu Sekarang <BR>\n");


print("Hari ini => $hari <BR>\n");
print("Tanggal => $waktu[mday]-$bulan-$waktu[year] <BR>\n");
print("Jam => $waktu[hours]:$waktu[minutes]:$waktu[seconds]
<BR>\n");
?>
</BODY>
</HTML>

6.2. Salam Dinamis pada Situs Anda


Selain menampilkan waktu, anda juga bisa menampilkan
salam yang dinamis pada situs anda dengan menggunakan

fungsi

getdate. Prinsip dasar dalam membuat salam dinamis ini adalah


sebagai berikut :
Jika pengunjung mengakses situs anda pada jam 00:00 s/d jam
10.59 maka akan dimunculkan salam Selamat Pagi
Jika pengunjung mengakses situs Anda pada jam 11:00 s/d jam
15.59 maka akan dimunculkan salam selamat siang
Jika pengunjung mengakses situs anda pada jam 16:00 s/d jam
18.59 maka akan dimunculkan salam Selamat Sore
Jika pengunjung mengakses situs anda pada jam 19.00 s/d jam
23.59 maka akan dimunculkan salam Selamat Malam

40

Jika prinsip di atas dituangkan dalam script PHP maka kira-kira


akan seperti contoh berikut ini :
salam.php
<HTML>
<HEAD>
<TITLE> Memberi Salam kepada Pengunjung Situs Anda </TITLE>
</HEAD>
<BODY>
<?
/* Membaca Waktu */
$waktu=getdate();
print("<B>Hello, </B><BR>\n");
/* Membuat Salam */
if($waktu[hours] <= 10)
{
print("Selamat Pagi");
}
elseif($waktu[hours] <= 15)
{
print("Selamat Siang");
}
elseif($waktu[hours] <= 18)
{
print("Selamat Sore");
}
else
{
print("Selamat Malam");
}
?>
</BODY>
</HTML>

41

Silahkan jalankan script tersebut dan lihat salam yang muncul


pada layar browser anda. Ulangi dan uji dengan mengganti-ganti jam
pada komputer anda dan lihat hasilnya masing-masing.
6.3. Hit Counter
Hit Counter adalah

sebuah program atau script yang akan

merekam dan menampilkan jumlah hits atau jumlah kunjungan ke


homepage anda. Setiap ada pengunjung ke homepage anda maka
secara otomatis

hit counter

akan bertambah satu. Prinsip dasar

dalam pembuatan hit counter adalah sebagai berikut :

Pada saat homepage dikunjungi, baca isi file yang merekam


jumlah hit sebelumnya.

Tambah dengan satu pada jumlah hit sebelumnya

Rekam jumlah hit yang baru (setelah ditambah satu) ke dalam


file yang merekam jumlah hit.

Tampilkan jumlah hit yang baru ke atas layar browser.

42

Lihat dan ikuti contoh berikut ini :


hit_counter.php
<HTML>
<HEAD>
<TITLE> Membuat Hit Counter </TITLE>
</HEAD>
<BODY>
<?
/* Membuat file counter jika belum ada */
if (!file_exists("counter.txt"))
{
$isi=0;
$file_counter=fopen("counter.txt","w");
fputs($file_counter,$isi);
fclose($file_counter);
}
/* Membaca isi file counter */
$file_counter=fopen("counter.txt","r");
$isi_lama=fgets($file_counter,255);
fclose($file_counter);
/* Menulis isi baru ke dalam file counter */
$isi_baru=$isi_lama+1;
$file_counter=fopen("counter.txt","w");
fputs($file_counter,$isi_baru);
fclose($file_counter);
/* Menampilkan Jumlah Pengunjung */
print ("Anda adalah pengunjung yang ke: $isi_baru <BR>\n");
?>
</BODY>
</HTML>

43

Dalam beberapa kasus, anda harus membuat secara manual


file counter.txt pada komputer anda kemudian meng-uploadnya ke
server web hosting dan harus merubah mode file counter.txt tersebut
menjadi Readable dan Writeable. Untuk mengupload serta merubah
mode file anda bisa menggunakan cutetFTP.
Lihat di bawah ini :

44

6.4. Memperoleh Input dari Pengunjung Situs


Untuk mendapatkan input dari pengunjung situs anda, HTML
telah menyediakan fasilitas pembuatan Formulir. Formulir adalah
salah satu

fasilitas yang

terdapat di dalam HTML dimana

pengunjung dari situs anda dapat mengirimkan berbagai informasi


kepada Server untuk diolah. Sebagai contoh, penggunaan fasilitas
formulir yang paling banyak dikenal dan digunakan

orang adalah

Buku Tamu atau Guest Book.


Berdasarkan pada konsep tersebut di atas, maka ada dua hal
yang menjadikan

sebuah Web menjadi interaktif, yang pertama

adalah membuat sebuah formulir sebagai sarana bagi pengunjung


Situs Anda untuk menyampaikan (memasukkan) informasi dan yang
kedua adalah membuat sebuah program pada Web Server yang akan
mengolah dan bertugas untuk melayani komunikasi dua arah antara
Web Server dan Web Browser.
Data-data atau informasi yang masuk ke Web Server akan
diambil, diproses dan diserahkan kembali kepada Web Browser
(Pengunjung) oleh sebuah program khusus yang berjalan pada Web
Server tersebut. Program-program tersebut ada banyak macamnya,
diantaranya adalah PHP yang sedang anda pelajari.
Untuk membuat formulir, HTML telah menyediakan tag-tag
seperti tag <FORM> dan tag <INPUT>. Cara penulisannya adalah
sebagai berikut :

45

<FORM METHODE= Nilai ACTION = URL>


<INPUT TYPE=TIPE NAME = NAMA VALUE = NILAI SIZE =
UKURAN>

<FORM>
Atribut METHOD dari FORM mempunyai dua pilihan nilai yaitu
POST atau GET Pemberian nilai METHOD akan menentukan metode
pengiriman data dari pengunjung/web browser ke server. Jika anda
menggunakan GET maka data atau informasi yang didapat dari
pengunjung akan dikirim sebagai sebuah string yang ditambahkan
ke URL yang diminta. Sedangkan metode POST mengirimkan data
atau

informasi

tersebut

secara

terpisah.

Dengan

adanya

penyimpanan data secara terpisah ini, maka metode POST mampu


menyimpan data dalam jumlah yang banyak. Jika anda mempunyai
data input dengan banyak field dalam suatu form, sebaiknya
gundakan metode POST karena penanganan datanya jauh lebih baik
dari pada GET.
Atribut lain dari FORM adalah ACTION yang berisi URL atau
program yang akan dipanggil atau dijalankan oleh FORM tersebut.
Setelah anda memasukkan tag <FORM> ke dalam dokumen HTML,
langkah selanjutnya adalah membuat kontrol-kontrol from. Kontrol
form ini adalah elemen yang akan diisi oleh pemakai

yang

didefinisikan dengan tag INPUT. Tag INPUT ini mempunyai beberapa


atribut seperti TYPE, NAME, VALUE, SIZE dan MAXLENGTH.
Atribut TYPE mempunyai beberapa pilihan nilai yang menunjukkan
jenis atau tipe dari masukan, antara lain adalah text, radio,
checkbox, password, hidden, submit dan reset. Penjelasan dari
46

masing-masing nilai TYPE ini akan dijelaskan secara detail pada


bagian selanjutnya.
Atribut NAME akan mendefenisikan pemberian nama variabel
yang akan menampung data masukan tersebut. Pemberian
variabel

tidak boleh

menggunakan

nama

spasi. Anda bisa mengganti

spasi tersebut dengan garis bawah.


Atribut VALUE akan memberi nilai atau isi awal dari masukan
tersebut. Nilai dari VALUE ini akan dimunculkan pada kotak teks.
Atribut SIZE menentukan panjang dari kotak teks.
Atribut MAXLENGTH menentukan panjang maksimum dari
masukan.
6.4.1. Kotak Teks
Kotak teks biasanya digunakan untuk mendapatkan sepotong
informasi kecil dari pengunjung situs. Anda seperti nama, alamat,
nomor telepon, email dan lain-lain. Untuk melakukan

perataan

terhadap kotak teks, Anda bisa menggunakan tag :


<PRE>..</PRE>
atau menggunakan format tabel dengan tag :
<TABLE>....</TABLE>

47

Silahkan lihat contoh berikut :


kotak_teks.html
<HTML>
<HEAD> </HEAD>
<BODY>
<H2> Silahkan Masukkan Data Anda </H2>
<FORM METHOD="POST" ACTION="URL">
<PRE>
Nama : <INPUT TYPE="TEXT" NAME="nama" SIZE=30>
Alamat: <INPUT TYPE="TEXT" NAME="alamat" SIZE=60>
Telpon: <INPUT TYPE="TEXT" NAME="telpon" SIZE=10>
Email : <INPUT TYPE="TEXT" NAME="email" SIZE=30>
</PRE>
</FORM>
</BODY>
</HTML>

Hasilnya akan nampak seperti gambar berikut:

48

6.4.2. Tombol Radio


Jika anda menginginkan pengunjung situs anda memilih salah
satu dari sekian banyak pilihan maka gunakan fasilitas tombol radio.
Pemberian nama variabel (NAME) untuk suatu kelompok pilihan
harus sama, jika tidak maka akan dianggap tidak berada di dalam
satu kelompok pilihan. Nilai dari VALUE adalah nilai yag akan
dikirim ke server bersama

dengan nama variabel. Jika anda

menginginkan suatu pilihan terpilih secara otomatis (default) pada


saat form tersebut dibuka, anda bisa

menyertakan

atribut

CHECKED pada tag INPUT.


Lihat contoh berikut :
tombol_radio.html
<HTML>
<HEAD> </HEAD>
<BODY>
<H2> Silahkan Masukkan Jenis Kelamin Anda </H2>
<FORM METHOD="POST" ACTION="URL">
<PRE>
Jenis Kelamin :
<INPUT TYPE="RADIO" NAME="kelamin" VALUE="Laki-laki" CHECKED>
Laki-laki
<INPUT TYPE="RADIO" NAME="kelamin" VALUE="Perempuan"> Perempuan
</PRE>
</FORM>
</BODY>
</HTML>

49

Hasilnya akan nampak seperti gambar berikut :

6.4.3. Kotak Check


Jika pada tombol radio pengunjung hanya bisa memilih salah
satu dari sekumpulan pilihan, maka fasilitas kotak check (check
boxes) memungkinkan

pengunjung situs untuk memilih lebih dari

satu atau bahkan memilih semua dari pilihan-pilihan yang tesedia.


Berbeda dengan tombol radio, penanaman variabel dari masingmasing pilihan harus berbeda. Anda juga bisa memberikan atribut
CHECKED jika anda menginginkan pilihan tersebut dipilih secara
default pada saat form tersebut dibuka. Lihat contoh berikut ini :

50

kotak_check.html
<HTML>
<HEAD> </HEAD>
<BODY>
<H2> Silahkan Masukkan Hobby Anda </H2>
<FORM METHOD="POST" ACTION="URL">
<PRE>
Hobby :
<INPUT TYPE="CHECKBOX" NAME="Membaca" VALUE="Membaca"
CHECKED> Membaca
<INPUT TYPE="CHECKBOX" NAME="Memancing" VALUE="Memancing">
Memancing
<INPUT TYPE="CHECKBOX" NAME="Main_Bola" VALUE="Main Bola"> Main
Bola
<INPUT TYPE="CHECKBOX" NAME="Menulis" VALUE="Menulis"
CHECKED> Menulis
</PRE>
</FORM>
</BODY>
</HTML>

Hasilnya kurang lebih sebagai berikut :

51

6.4.4. Kotak Password


Kotak password biasanya digunakan jika pengunjung dari situs
anda memasukkan data yang bersifat rahasia. Pada saat pengunjung
memasukkan data atau informasi yang diminta, data atau informasi
yang dimasukkan

tersebut tidak ditampilkan langsung di layar

browser melainkan diganti dengan tanda bintang (*). Sesuai dengan


namanya, penggunaannya banyak dipakai pada saat pengunjung
diminta untuk memasukkan password atau kata kunci. Penggunaan
lainnya juga seperti pada saat

pengunjung memasukkan nomor

kartu kredit dan lain sebagainya.


Lihat contoh berikut ini:
kotak_password.html
<HTML>
<HEAD> </HEAD>
<BODY>
<H2> Silahkan Masukkan Password Anda </H2>
<FORM METHOD="POST" ACTION="URL">
<PRE>
Password : <INPUT TYPE="PASSWORD" NAME="kata_kunci" SIZE=20>
</PRE>
</FORM>
</BODY>
</HTML>

52

6.4.5. Blok Teks


Untuk
memberikan

memberi
input,

keleluasaan
anda

bisa

kepada

pengunjung

menggunakan

anda

pasangan

tag

<TEXTAREA>..</TEXTAREA> sebagai pengganti tag INPUT. Dengan


tag TEXTAREA ini, anda bisa memberikan ruang yang lebih luas dan
lebih lega kepada pengunjung situs anda agar memasukkan atau
mengetik masukannya dengan lebih leluasa. Sama seperti pada tag
INPUT, tag ini juga masih tetap menggunakan atribut NAME untuk
pemberian nama variabel tempat penyimpanan informasi yang
dimasukkan. Selain itu tag ini juga mempunyai atribut tambahan
yakni ROWS dan COLS yang masing-masing menyatakan

jumlah

baris dan lebar kolom dari area teks tersebut.


Untuk lebih jelasnya lihat contoh berikut ini :
blok_teks.html
<HTML>
<HEAD> </HEAD>
<BODY>
<H2> Silahkan Masukkan Komentar Anda </H2>
<FORM METHOD="POST" ACTION="URL">
<PRE>
Komentar:
<TEXTAREA NAME="komentar" ROWS=8 COLS=60>
</TEXTAREA>
</PRE>
</FORM>
</BODY>
</HTML>

53

6.4.6. Menu Dropdown


Menu dropdown adalah sebuah menu yang berisi sekumpulan
pilihan. Pada saat pengunjung memilih menu tersebut, daftar pilihan
akan muncul sebagai menu dropdown. Untuk membuat menu
dropdown tersebut HTML telah melengkapi tag-tag untuk kebutuhan
tersebut

seperti

tag

SELECT

dan

tag

OPTION.

Lihat

cara

penulisannya di bawah ini.


<SELECT NAME = nama_variabel SIZE=jumlah_baris>
<OPTION VALUE= nilai SELECTED>
<OPTION VALUE= nilai>

</SELECT>
Atribut NAME dari SELECT merupakan nama variabel yang akan
menampung data masukan, sedangkan
jumlah baris

akan menentukan

yang muncul dari menu dropdown tersebut. Tag

OPTION digunakan
tersebut.

SIZE

Pemberian

menyebabkan

menyatakan item-item pilihan di dalam menu


statemen

SELECTED

pada

OPTION

akan

pilihan tersebut terseleksi atau terpilih secara

defaut/otomatis.

54

Lihat contoh berikut ini :


menu_dropdown.html
<HTML>
<HEAD> </HEAD>
<BODY>
<H2> Silahkan Pilih Minuman Favorit Anda </H2>
<FORM METHOD="POST" ACTION="URL">
<PRE>
Minuman Favorit :
<SELECT NAME="minuman_favorit" SIZE="1" >
<OPTION VALUE= "Coca Cola">Coca Cola
<OPTION VALUE= "Fanta">Fanta
<OPTION VALUE= "Juice Buah">Juice Buah
<OPTION VALUE= "Air Mineral" SELECTED>Air Mineral
</SELECT>
</PRE>
</FORM>
</BODY>
</HTML>

55

Hasilnya akan nampak sebagai berikut:

6.4.7. Submit dan Reset


Sebuah formulir tidaklah lengkap jika tidak disertai dengan
tombol SUBMIT dan tombol RESET. Tombol SUBMIT jika diklik akan
berfungsi untuk mengirimkan
diberikan

data atau masukan yang telah

oleh pengunjung melalui

Sedangkan
membatalkan

sebuah formulir ke server.

tombol RESET jika diklik akan berfungsi untuk


semua pengisian yang telah dilakukan dan semua

data ata informasi yang telah dimasukkan ke dalam formulir akan


terhapus semuanya. Format ke dalam formulir akan terhapus
semuanya. Format penulisan untuk membuat tombol SUBMIT dan
tombol RESET tersebut adalah sebagai berikut :

56

<INPUT TYPE = SUBMIT VALUE = nilai>


<INPUT TYPE = Reset VALUE = nilai>
Nilai dari VALUE akan muncul di atas tombol SUBMIT dan tombol
RESET tersebut.
Lihat contoh berikut ini :
submit_reset.html
<HTML>
<HEAD> </HEAD>
<BODY>
<H2> Silahkan Masukkan Data Anda </H2>
<FORM METHOD="POST" ACTION="URL">
<PRE>
Nama : <INPUT TYPE="TEXT" NAME="nama" SIZE=30>
Alamat: <INPUT TYPE="TEXT" NAME="alamat" SIZE=60>
Telpon: <INPUT TYPE="TEXT" NAME="telpon" SIZE=10>
Email : <INPUT TYPE="TEXT" NAME="email" SIZE=30>
<INPUT TYPE="SUBMIT" VALUE="Kirim Data"> <INPUT TYPE="RESET"
VALUE="Hapus Data ">
</PRE>
</FORM>
</BODY>
</HTML>

57

Tampilannya adalah sebagai berikut :

6.5. Buku Tamu/Guest Book


Penggunaan formulir yang paling populer adalah pengisian
buku tamu. Dengan menyediakan

sebuah buku tamu pada situs

Anda, Maka pengunjung bisa memasukkan

berbagai komentar

mereka mengenai situs Anda dan meninggalkan identitas mereka.


Untuk membuat buku tamu pada situs Anda, paling tidak Anda perlu
empat (4) buah file yang merupakan suatu kesatuan. Ke-empat file
tersebut masing-masing berfungsi untuk :

58

Formulir

untuk

memasukkan

identitas

dan

komentar

(formulir_tamu.html)

Program yang akan mengolah masukan

dari formulir

(kirim_data_tamu.php)

Program

yang

akan

menampilkan

isi

buku

tamu

data

buku

tamu

(lihat_buku_tamu.php)

Sebuah

file

tempat

penyimpanan

(buku_tamu.txt)
Berikut listing dokumen HTML dan Script PHP untuk Buku Tamu
tersebut :

59

Formulir untuk memasukkan identitas dan komentar pada buku


Tamu :
formulir_tamu.html
<HTML>
<HEAD>
<TITLE> Formulir Buku Tamu </TITLE>
</HEAD>
<BODY>
<FONT COLOR="BLUE">
<H2 ALIGN="CENTER">Pengisian Buku Tamu </H2>
</FONT>
<HR>
<P>
<A HREF="lihat_buku_tamu.php"> <B> Lihat Isi Buku Tamu </B> </A>
</P>
<I><H4> Silahkan Masukkan Identitas dan Komentar Anda </H4></I>
<FORM METHOD="POST" ACTION="kirim_data_tamu.php">
<PRE>
Nama : <INPUT TYPE="TEXT" NAME="nama" SIZE=30> (wajib diisi)
Email : <INPUT TYPE="TEXT" NAME="email" SIZE=30> (wajib diisi)
Alamat: <INPUT TYPE="TEXT" NAME="alamat" SIZE=60>
Telpon: <INPUT TYPE="TEXT" NAME="telpon" SIZE=20>
Komentar Anda (wajib diisi):
<TEXTAREA NAME="komentar" ROWS=8 COLS=60></TEXTAREA>
<INPUT TYPE="SUBMIT" VALUE="Kirim Data">
VALUE="Hapus Data ">
</PRE>
</FORM>

<INPUT TYPE="RESET"

<P>
<A HREF="lihat_buku_tamu.php"> <B>Lihat Isi Buku Tamu </B></A>
</P>
</BODY>
</HTML>

60

Tampilan dari program diatas adalah sebagai berikut:

61

Script PHP yang akan mengolah masukan dari formulir buku tamu :
kirim_data_tamu.php
<HTML>
<HEAD>
<TITLE>Memproses Masukan Tamu</TITLE>
</HEAD>
<BODY>
<CENTER>
<?
/* Mengambil Tanggal Pengisian Buku Tamu */
$waktu=getdate();
/* Mengecek ke Absahan Masukan */
if (!empty($nama) AND
!empty($email) AND
!empty($komentar))
{
/* Membaca Isi Buku Tamu */
$isi_buku_tamu=fopen("buku_tamu.txt","r");
$buffer_isi_buku_tamu=fread($isi_buku_tamu,
filesize("buku_tamu.txt"));
fclose($isi_buku_tamu);
/* Membuka Buku Tamu yang Baru */
$buku_tamu_baru=fopen("buku_tamu.txt","w");
/* Memasukkan Data Tamu yang Baru + Lama */
fputs($buku_tamu_baru, "<B>Tanggal:</B> $waktu[mday]$waktu[month]-$waktu[year] $waktu[hours]:$waktu[minutes] \n");
fputs($buku_tamu_baru, "<B>Nama:</B> $nama \n");
fputs($buku_tamu_baru, "<B>Email:</B> $email \n");
fputs($buku_tamu_baru, "<B>Alamat:</B> $alamat \n");
fputs($buku_tamu_baru, "<B>Telpon:</B> $telpon \n");
fputs($buku_tamu_baru, "<B>Komentar:</B> $komentar \n");
fputs($buku_tamu_baru, "<HR>");
fputs($buku_tamu_baru, "$buffer_isi_buku_tamu");
/* Menutup File */
fclose($buku_tamu_baru);

62

/* Mengucapkan Terima Kasih */


print ("<H2> Terima Kasih </H2><BR>\n");
print ("<H3> Anda telah mengisi Buku Tamu kami
</H3><BR>\n");
}
else
{
/* Menampilkan Pesan ERROR */
print ("<FONT SIZE=5 COLOR=RED> ERROR !!! </FONT>
<BR>\n");
print ("Pengisian Anda Kurang Lengkap <BR>\n");
print ("Silahkan tekan tombol <B>Back</B><BR>\n");
}
?>
<P>
<A HREF="lihat_buku_tamu.php"> <B> Melihat Isi Buku Tamu </B>
</A>
</P>
</CENTER>
</BODY>
</HTML>

63

Script PHP yang akan menampilkan isi buku tamu:


lihat_buku_tamu.php
<HTML>
<HEAD>
<TITLE>Melihat Isi Buku Tamu</TITLE>
</HEAD>
<BODY>
<FONT COLOR="BLUE">
<H2 ALIGN="CENTER">Melihat Isi Buku Tamu </H2>
</FONT>
<A HREF="formulir_tamu.html"> <B> Mengisi Buku Tamu </B>
</A>
<HR>
<?
/* Membaca Isi Buku Tamu */
$buku_tamu=fopen("buku_tamu.txt","r");
while(!feof($buku_tamu))
{
$isi = fgets($buku_tamu, 500);
print ("$isi <BR>\n");
}
fclose($buku_tamu);
?>
<A HREF="formulir_tamu.html"> <B> Mengisi Buku Tamu </B>
</A>
</BODY>
</HTML>
Bukalah dokumen formulir_tamu.html tersebut dan cobalah dengan
mengisi data Anda sendiri lalu lihat hasilnya.

64

Dalam kasus tertentu, Anda harus membuat secara manual file


kosong buku_tamu.txt pada komputer Anda kemudian menguploadnya ke server web hosting dan harus merubah mode file
permission tersebut menjadi Readable dan Writeable. Untuk mengupload serta merubah mode file anda bisa menggunakan cuteftp.
Jika anda bekerja di localhost maka tak perlu mengubah mode
permission pada file buku_tamu.txt tersebut.
6.6. Feedback Form
Feedback form adalah sebuah fasilitas yang bisa anda sediakan
di dalam situs anda dimana pengunjung bisa memasukkan atau
mengirimkan komentar baik itu saran, pujian ataupun kritik
terhadap situs anda. Perbedaan yang mencolok antara Buku Tamu /
Guest Book dan Feedback Form adalah letak dimana masukan dari
pengunjung tersebut disimpan. Pada Buku Tamu, segala identitas
dan komentar pengunjung terbuka dan bisa dilihat oleh pengunjung
lainnya, sedangkan

pada Feedback, masukan berupa komentar,

kritik atau saran dari pengunjung dikirim langsung ke alamat email


anda sehingga hanya anda yang bisa melihatnya.
Untuk membuat fasilitas Feedback Form pada situs anda,
paling tidak anda membutuhkan dua buah file yang masing-masing
akan bertugas untuk.

Formulir

untuk

memasukkan

identitas

dan

komentar

(form_feedback.html)

Program

yang

mengirim

masukan

ke

email

anda

(kirim_feedback.php).

65

Untuk lebih jelasnya, lihat script berikut ini:


Dokumen HTML dari formulir feedback :
form_feedback.html
<HTML>
<HEAD>
<TITLE> Formulir Feedback </TITLE>
</HEAD>
<BODY>
<H2 ALIGN="CENTER">Formulir Feedback</H2>
<HR>
<H4> Silahkan Masukkan Identitas dan Pesan Anda </H4>
<FORM METHOD="POST" ACTION="kirim_feedback.php">
<PRE>
Nama : <INPUT TYPE="TEXT" NAME="nama" SIZE=30>
Email : <INPUT TYPE="TEXT" NAME="email" SIZE=30>
Pesan Anda:
<TEXTAREA NAME="komentar" ROWS=8 COLS=60></TEXTAREA>
<INPUT TYPE="SUBMIT" VALUE="Kirim Pesan"> <INPUT TYPE="RESET"
VALUE="Hapus Pesan">
</PRE>
</FORM>
</BODY>
</HTML>

66

Tampilan dari feedback form diatas adalah sebagai berikut:

67

Script PHP yang akan mengirim proses pesan masukan ke email


anda:
kirim_feedback.php
<HTML>
<HEAD>
<TITLE>Mengirim Feedback Ke Email</TITLE>
</HEAD>
<?
/* Mengecek ke Absahan Masukan */
if (!empty($nama) AND
!empty($email) AND
!empty($komentar))
{
/* Mengambil Tanggal Pengisian Buku Tamu */
$waktu=getdate();
/* Deklarasi Variabel */
$email_tujuan = "nama@domain.com";
$subject_email = "Feedback Form";
$header_email = "From: $nama <$email>\n";
$body_email = "
Tanggal Pengisian : $waktu[mday]-$waktu[month]-$waktu[year]
$waktu[hours]:$waktu[minutes]
Nama Pengunjung : $nama
Email Pengunjung : $email
Komentar : $komentar";
/* Mengirim Berita Ke Email */
mail($email_tujuan,$subject_email,$body_email,$header_email);
/* Mengucapkan Terima Kasih */
print ("<FONT COLOR=RED SIZE=5><B>Terima
Kasih</B></FONT><BR>\n");
print ("<FONT COLOR=BLUE SIZE=3><B>Pesan Anda telah
terkirim</B></FONT><BR>\n");
}

68

else
{
/* Menampilkan Pesan ERROR */
print ("<FONT SIZE=5 COLOR=RED> ERROR !!! </FONT>
<BR>\n");
print ("Pengisian Anda Kurang Lengkap <BR>\n");
print ("Silahkan tekan tombol <B>Back</B><BR>\n");
}
?>
</CENTER>
</BODY>
</HTML>

Kedua dokumen atau file diatas dapat anda gunakan langsung,


namun ada satu hal yang harus anda perhatikan yaitu pada email
tujuan yang merupakan alamat email Anda sendiri. Meskipun anda
bekerja pada localhost, pengetesan script ini harus melalui koneksi
internet agar email benar-benar bisa terkirim.

69

6.7. Mengambil Konten dari Situs Lain


Salah satu kegunaan dari grabbing content ini adalah untuk
menampilkan/mengambil data yang terdapat pada website lain tanpa
harus menyediakan atau bahkan mengupdate konten tersebut.
Tehnik ini berguna manakala kita ingin menampilkan informasi yang
selalu up to date namun situs kita tidak mampu menyediakannya.
Contohnya adalah pada saat kita mau menampilkan berita, kurs,
laporan cuaca dan lain-lain yang selalu up to date, maka dengan
tehnik ini kita tidak perlu repot-repot membuat konten semacam itu
lalu diperbaharui tiap saat. Ini juga salah satu kiat memperkaya
konten di website kita tanpa harus kita sendiri yang mengisi konten
tersebut.
Berikut ini adalah script PHP untuk menampilkan berita dari
detik.com

khususnya

mengenai

berita

teknologi

informasi

(detikinet.com). Sebelum membuatnya pastikan dulu bahwa URL dari


berita yang akan kita tampilkan benar-benar valid.
grab_content.php
<?
//Tentukan URL tujuan
$url="http://www1.detik.com/indeksberita/index.cfm?fuseaction=index.detikiNet";
//Buka halaman pada URL tujuan (indeks berita di detikinet.com)
$buka=fopen($url, "r");
//baca halaman tsb sampai 100000 bytes
$baca=fread($buka,100000);
//Temukan tag awal (unik) pada halaman tsb utk ditampilkan
$start= strpos($baca, "<li><FONT FACE=\"VERDANA,HELVETICA,ARIAL\"
SIZE=\"1\" class=\"tanggal\">");

70

//Tentukan tag akhir (batas akhir) data yg akan ditampilkan


$finish= strpos($baca, "</ul>");
//set panjang data yang akan ditampilkan dari $start - $finish
$panjang= $finish-$start;
//tampilkan data secara utuh dari $start - $finish
$tampil=substr($baca, $start, $panjang);
//cetak data di browser
echo $tampil;
?>

Untuk menjalankan script diatas, Anda harus terhubung


dengan jaringan internet terlebih dahulu. Harap diperhatikan bahwa
script ini akan membuka halaman pada situs lain, sehingga server
pada situs yang bersangkutan harus berjalan dengan baik, sebab jika
server

situs

tersebut

down

maka

script

diatas

tidak

akan

menampilkan data/berita sebagaimana mestinya. Oleh karena script


ini membuka halaman situs lain maka untuk loading halaman
tersebut juga akan semakin lama. Untuk itu disarankan untuk tidak
terlalu banyak menampilkan script seperti ini pada satu halaman
saja.

71

BAB 7
COOKIES DAN SESSION
Pada bab

ini kita akan mempelajari metode penyimpanan

variabel melalui cookies dan session. Salah satu contoh penerapan


aplikasi cookies ataupun session adalah pada saat kita login ke
webmail (yahoo, hotmail dll), aplikasi e-commerce, dan aplikasi
lainnya yang membutuhkan autentikasi. Metode cookies atau session
memiliki perbedaan mendasar. Metode cookies menyimpan variabel
langsung di browser client. Sedangkan metode session, variabel
datanya disimpan di server website yang bersangkutan. Dari sisi
keamanan (security), metode session adalah lebih baik dibandingkan
cookies sebab penyimpanan variable di browser client seringkali di
eksploitasi oleh para hacker yang bisa mengakibatkan informasi
rahasia kita seperti username, password dan data lainnya bisa
terbongkar. Harap diperhatikan bahwa browser Anda harus bisa
menerima cookies (Accept Cookies) sebab jika tidak maka scriptnya
tidak akan berjalan. Setting/konfigurasi cookies di browser Internet
Explorer (IE) biasanya terletak pada TOOLS->INTERNET OPTIONS.
7.1 Cookies
Seperti telah disinggung diatas, cookies adalah mekanisme
penyimpanan variabel data langsung pada browser client. Untuk
mendeklarasikan cookies, digunakan fungsi

setcookie(). Cookies

adalah bagian dari HTTP header, sehingga cookies harus di


deklarasikan sebelum program mengirimkan output apapun ke
browser client.

72

Berikut ini kita akan membuat dua script yakni :


cookies01.php, berfungsi untuk

mendeklarasikan variabel data

yang berarti menyimpan variabel data tersebut ke browser client.


cookies02.php, berfungsi melakukan pengecekan apakah variabel
data telah di deklarasikan/set atau belum.
cookies01.php
<?
setcookie("nama_saya","adalah Jojon");
?>
<HTML>
<HEAD><TITLE>Deklarasi Cookies</TITLE></HEAD>
<BODY>
<p><a href="cookies02.php">Klik disini</a> untuk lihat nama saya</p>
</BODY>
</HTML>

Perhatikan bahwa sebelum tag <HTML>, cookies harus terlebih


dahulu di deklarasikan atau di set. Jika tidak maka script tidak akan
berjalan dan menampilkan error Warning: Cannot add header
information.

73

cookies02.php
<?
if (isset($nama_saya))
{
echo "nama saya ".$nama_saya;
} else {
echo "variabel belum diset";
}
?>

Pada

script

cookies01.php,

telah

dideklarasikan

sebuah

variabel cookie yaitu $nama_saya dengan isi nilainya yaitu adalah


Jojon. Ini berarti variable $nama_saya telah disimpan dalam
komputer Anda (browser client). Jika Anda mengklik Klik disini
maka

program

cookies01.php

akan

berakhir

dan

selanjutnya

mengeksekusi file cookies02.php. Pada file cookies02.php kita akan


menguji apakah variabel $nama_saya telah berhasil disimpan ke
browser ataukah belum.
Perintah if (iiset($nama_saya)) bertugas memeriksa apakah
cookies telah diset (TRUE) ataukah belum (FALSE).

Cobalah anda

jalankan cookies01.php diatas. Jika berhasil dengan baik maka


ketika Anda mengklik teks

Klik disini akan muncul tampilan di

browser anda seperti pada gambar dibawah ini.

74

Adapun umur cookies bisa

diatur sehingga akan mencapai

expire. Contohnya jika ingin agar variabel data disimpan selama 1


jam (3600 detik), sintaksnya adalah sebagai berikut :
setcookie(nama_saya, adalah Jojon, time()+3600);
Sintaks

diatas

akan

otomatis

menghapus

variabel

data

$nama_saya setelah 1 jam. Anda juga bisa menghapus variable data


yang tersimpan melalui cookie secara manual yakni menghapusnya
melalui browser. Pada browser Internet Explorer 6 klik saja menu
TOOLS -> INTERNET OPTIONS -> DELETE COOKIES. Cara ini akan
menghapus keseluruhan data yang tersimpan melalui cookies
meskipun datanya belum expire.
7.2 Session
Fasilitas session adalah salah satu keunggulan yang dimiliki
PHP. Variabel session adalah sebuah variabel global yang dibuat pada
saat session dimulai. Seebelum mendeklarasikan suatu variabel
(register variabel) harus dilakukan inisialisasi terlebih dahulu dengan
menggunakan fungsi session_start(). Untuk lebih jelasnya, kita akan
membuat program seperti pada sub bab Cookies diatas, sehingga
anda bisa membedakan perbedaan penggunaan sintaksnya.

75

session01.php
<?
session_start();
session_register("nama_saya");
$nama_saya="adalah Jojon";
?>
<HTML>
<HEAD><TITLE>Deklarasi Session</TITLE></HEAD>
<BODY>
<p><a href="session02.php">Klik disini</a> untuk lihat nama saya</p>
</BODY>
</HTML>

Inisialiasi dilakukan melalui fungsi session_start() kemudian


variabel nama_saya dideklarasikan melalui fungsi session_register
dan terakhir adalah mengisi nilai variabel $nama_saya dengan
kalimat adalah Jojon.
Kemudian untuk menguji berhasil tidaknya deklarasi session
variabel kita akan membuat script berikut ini.
session02.php
<?
session_start();
if (session_is_registered(nama_saya))
{
echo "nama saya ".$nama_saya;
} else
{
echo "session belum di set";
}
?>

76

Jalankan file session01.php kemudian klik teks Klik disini,


maka file session02.php akan dieksekusi. Jika berhasil maka akan
muncul tampilan teks dilayar browser anda nama saya adalah
Jojon (gambarnya sama seperti pada sub bab Cookies).
Perhatikan pula bahwa fungsi session_start() harus selalu
digunakan pada tiap halaman yang berkaitan dengan session variabel
tersebut.

Jadi

pada

session01.php

dan

session02.php

fungsi

session_start() harus dipanggil terlebih dahulu pada tiap file.


Adapun umur variabel session telah diset pada server PHP.
Anda bisa lihat pada file php.ini. Disarankan bagi pemula untuk
tidak mengubah-ubah variabel yang ada pada file tersebut atau jika
ingin

merubah

konfigurasi

file

tersebut

jangan

lupa

untuk

membackup file tersebut.

77

BAB 8
MENGGUNAKAN DATABASE
Salah satu keunggulan PHP yang lain adalah kemampuannya
berhubungan dengan berbagai macam aplikasi database. Aplikasi
database yang beredar saat ini diantaranya adalah MySql, MsSql,
Oracle, Sysbase, dan lain-lain. Pada kesempatan kali ini kita hanya
akan mempelajari koneksi database MySql melalui PHP, sebab boleh
dibilang mereka adalah pasangan yang paling baik untuk membuat
website berkemampuan database. Secara umum akses ke database
melalui tiga tahapan :

Koneksi ke database.

Query/permintaan data.

Pemutusan koneksi database.

8.1. Koneksi Ke Database


Untuk koneksi ke database MySql kita membutuhkan dua
fungsi yaitu mysql_connect(), dan mysql_select_db().

mysql_connect memiliki sintaks :

mysql_connect(nama host, username database, password database)

mysql_select_db memiliki sintaks :

mysql_select_db(nama database)
fungsi mysql_select_db baru digunakan apabila database telah
dibuat terlebih dahulu.

78

Berikut ini adalah script untuk melakukan koneksi ke database


MySql.
koneksi.php
<?
$koneksi=mysql_connect("localhost","root","");
if ($koneksi)
{
echo "Koneksi ke database berhasil";
} else {
echo "Koneksi ke database gagal";
}
?>

Coba jalankan file tersebut, jika berhasil maka pada layar


broswer akan tercetak teks koneksi ke database berhasil . Jika anda
menginstall webserver dengan menggunakan CD SmartPHP maka
default dari user dan password database MySql nya adalah :
user=root, password= (dikosongkan).

79

Jika anda menjalankan file ini di server lain (bukan localhost)


maka anda harus mengganti username dan password tadi dengan
username/password yang diberikan oleh admin server tersebut,
misalnya

jika

anda

diberikan

user=masjoko

dan

password=blokm21 maka sintaksnya berubah menjadi :


$koneksi=mysql_connect("localhost","masjoko","blokm21");
Untuk membuat database ataupun tabel ada beberapa cara
diantaranya yaitu memakai program bantuan PhpMyAdmin ataupun
melalui script PHP. Kita akan membahasnya satu-persatu namun
penulis sendiri merekomendasikan bagi anda yang masih pemula
untuk menggunakan cara yang pertama yaitu memakai program
PhpMyAdmin, sebab lebih mudah penggunaannya.

80

8.2. Membuat Database dan Tabel Melalui Program PhpMyAdmin


8.2.1 Membuat Database.
Pada saat menginstall web server melalui CD SmartPHP, telah
dimasukan pula program PhpMyAdmin yang berfungsi melakukan
pekerjaan

yang

berkaitan

dengan

database

seperti

membuat

database, buat tabel, memanage data, backup data dan lain-lain.


Untuk membuka program ini arahkan URL di browser Anda ke
http://localhost/phpmyadmin. Maka akan muncul tampilan seperti
berikut ini:

81

Selanjutnya kita akan membuat database dengan nama nama


databasenya data_karyawan. Caranya isi field kosong dengan nama
data_karyawan

kemudian klik tombol Create. Untuk lebih

jelasnya lihat gambar berikut:

82

Database data_karyawan secara otomatis akan dibuat dan


selanjutnya kita akan membuat tabel karyawan pada database
data_karyawan.
8.2.2 Membuat Tabel
Pada saat database data_karyawan berhasil dibuat maka
PHPMYADMIN akan menampilkan pesan bahwa database telah
berhasil dibuat (perhatikan gambar dibawah), kemudian untuk
membuat tabelnya cukup mengisi kotak isian Create new table yakni
Name dan berapa banyak Fields yang dibutuhkan kemudian klik
tombol Go. Untuk nama tabelnya adalah karyawan sedangkan
Fields yang dibutuhkan adalah 3 buah yakni nomor_karyawan,
nama_karyawan dan jabatan_karyawan. Perhatikan gambar dibawah
ini:

83

Kemudian anda diminta mengisi nama field, tipe data dan


properties yang lainnya kemudian klik tombol Save. Tipe data
untuk nomor_karyawan adalah INT(10) PRIMARY KEY, untuk
nama_karyawan

adalah

varchar(100)

dan

untuk

jabatan_karyawan adalah varchar(50). Tampilannya kurang lebih


seperti ini :

84

Jika tabel berhasil dibuat maka tampilannya bisa dilihat pada


gambar berikut:

Selesailah

sudah

membuat

database

dan

tabel

dengan

menggunakan program PhpMyAdmin (mudah bukan?), dan sekarang


kita akan membandingkan cara pembuatan database dan tabel
dengan menggunakan script PHP.

85

8.3. Membuat Database dan Tabel Melalui Script PHP.


8.3.1 Membuat Database.
Untuk

membuat

database

PHP

menyediakan

fungsi

mysql_create_db(). Berikut adalah script untuk membuat database


dengan nama databasenya adalah data_karyawan.
buat_database.php
<?
//Buka koneksi terlebih dahulu ke database
$koneksi=mysql_connect("localhost","root","");
if ($koneksi)
{
echo "Koneksi ke database berhasil";
} else {
echo "Koneksi ke database gagal";
}
//Kemudian buat databasenya
$buat_db=mysql_create_db("data_karyawan");
if ($buat_db)
{
echo "<br><br>database data_karyawan berhasil dibuat";
} else {
echo "<br><br>database data_karyawan gagal dibuat";
}
?>

Jika script diatas di jalankan maka akan terlihat seperti gambar


berikut:

86

Bagaimana jika terjadi kesalahan berupa koneksi ke database gagal


atau pembuatan database gagal? PHP menyediakan fungsi untuk
menampilkan kesalahan/error yakni melalui fungsi mysql_error().
Script

berikut

buat_database.php

ini

sama

hanya

saja

saja
disini

hasilnya
akan

dengan

ditampilkan

script
pesan

kesalahan oleh server sehingga dapat diketahui penyebab utamanya.


buat_database02.php
<?
// Buka koneksi database
$koneksi=mysql_connect("localhost","root","") or die(mysql_error());
if ($koneksi)
{
echo "Koneksi berhasil<br>";
}
$buat_db=mysql_create_db("data_karyawan") or die(mysql_error());
if ($buat_db)
{
echo "database data_karyawan berhasil dibuat";
}
?>

87

Script diatas jika berhasil dijalankan akan memunculkan


pesan database data_karyawan berhasil dibuat, namun jika gagal
maka akan menampilkan pesan kesalahan/error dari server. Jadi
perbedaannya

terletak

pada

bagaimana

menampilkan

pesan

kesalahan/error yang terjadi. Pada script buat_database.php, pesan


kesalahan

bisa

kita

customize

sendiri

sedangkan

pada

buat_database02.php pesan kesalahan langsung dari server sendiri.


8.3.2 Membuat Tabel
Langkah

selanjutnya

setelah

membuat

database

adalah

mengisinya dengan tabel. Jadi sebuah database akan berisikan


berbagai macam tabel misalnya tabel berita politik, olahraga dan lainlain. Sedangkan sebuah tabel itu sendiri mengandung field-field data.
Misalnya sebuah tabel berita akan berisi data dengan field judul
berita, isi berita, tanggal berita dan lain-lain.
PHP tidak menyediakan fungsi khusus untuk membuat tabel,
sehingga untuk membuat tabel kita akan menggunakan sintaks dari
program database MySql. Sintaks dari MySql ini kemudian akan
dijalankan oleh fungsi PHP melalui fungsi mysql_query(). Dengan
script PHP berikut ini, kita akan membuat tabel dari database
data_karyawan dengan field-field nomor_karyawan, nama_karyawan
dan jabatan_karyawan.

88

buat_tabel.php
<?
// Buka koneksi database
$koneksi=mysql_connect("localhost","root","") or die(mysql_error());
// Pilih database "data_karyawan" untuk membuat tabel didalamnya
$pilih_db=mysql_select_db("data_karyawan") or die(mysql_error());
// Sintaks MySql untuk membuat tabel
$perintah="CREATE TABLE karyawan (nomor_karyawan int(10) PRIMARY
KEY, nama_karyawan varchar(100), jabatan_karyawan varchar(50))";
// Eksekusi $perintah
$jalankan_perintah=mysql_query($perintah) or die(mysql_error());
if ($jalankan_perintah)
{
echo "Tabel karyawan berhasil dibuat";
}
?>

Jika table berhasil dibuat maka Anda bisa melihatnya melalui


program PhpMyAdmin (http://localhost/phpmyadmin). Kurang lebih
akan terlihat sebagai berikut:

89

90

Database MySql mengenal beberapa tipe data field, yaitu:


Tipe Data Numerik.
Tipe data ini dibedakan dalam dua macam kelompok yaitu tipe data
integer untuk bilangan bulat dan tipe data floating point untuk
bilangan desimal. Tipe data numerik dapat dilihat selengkapnya pada
tabel berikut ini:
Tipe Data

Kisaran Nilai

TINYTINT

(-128) - 127 atau 0 255

SMALLINT

(-32768) 32767 atau 0 65535

MEDIUMINT

(-8388608) 8388607 atau 0 16777215

INT

(-2147683648) (2147683647) atau 0


294967295

BIGINT

(-9223372036854775808)
9223372036854775807 atau 0
18446744073709551615

FLOAT(X)

(-3.40283466E+38) (-1.175494351E-38), 0,
dan 1.175494351E-38 3.402823466E+38.

FLOAT

Idem

DOUBLE

(-1.7976931348623157E+308) (2.2250738585072014E-308),0, dan


2.2250738585072014E-308
1.7976931348623157E+308

91

Tipe Data String


Yang termasuk dalam tipe data string adalah tipe-tipe data berikut:
Tipe Data

Kisaran Nilai

CHAR

1 255 karakter

VARCHAR

1 255 karakter

TINYBLOB, TINYTEXT

1 255 karakter

BLOB, TEXT

1 65535 karakter

MEDIUMBLOB,

1 16777215 karakter

MEDIUMTEXT
LONGBLOB, LONGTEXT

1 4294967295 karakter

ENUM(elemen1,elemen2,...) Maksimum 65535 karakter


SET(elemen1,elemen2,...)

Maksimum 64 elemen

Tipe data char() dan varchar() pada prinsipnya adalah sama,


perbedaannya adalah pada jumlah memori yang dibutuhkan untuk
penyimpanan.Untuk tipe data char() sifatnya statis, dimana besarnya
tergantung pada berapa jumlah karakter yang ditetapkan pada saat
field tersebut dideklarasikan. Sebaliknya tipe varchar() besarnya
memori penyimpanan bergantung pada berapa jumlah karakter yang
dipakai ditambah 1 byte yang berisi data jumlah karakter yang
dipakai. Misalnya untuk karakter ab, untuk yang bertipe char(4)
besarnya memori yang digunakan berarti 4 byte, sedangkan untuk
yang bertipe varchar(4) besarnya adalah 3 byte.

92

Tipe Data Tanggal


Untuk data tanggal dan waktu, tersedia tipe-tipe data field
sebagai berikut:
Tipe Data

Kisaran Nilai

DATETIME

1000-01-01 00:00:00 to 9999-12-31 23:59:59

DATE

1000-01-01 to 9999-12-31

TIMESTAMP

1970-01-01 00:00:00 2037

TIME

-838:59:59 to 838:59:59

YEAR

1901 - 2155

93

BAB 9
MEMBUAT APLIKASI DATABASE DENGAN PHP
Pada Bab 6 telah diajarkan pembuatan program dinamis
misalnya untuk pembuatan Guest Book dan penyimpanan datanya
adalah dimasukan ke dalam suatu file (txt). Metode tersebut berguna
pada saat kita tidak memiliki database. Jika kita memiliki database
maka akan lebih baik jika penyimpanan datanya masuk ke dalam
database sebab lebih terorganisir/terarsip dengan baik. Dan untuk
itulah kita akan belajar bagaimana mengintegrasikan PHP dengan
database MySql.
Kita asumsikan bahwa database data_karyawan dan tabel
karyawan

telah berhasil Anda buat seperti yang diajarkan pada

bab sebelumnya. Kita akan membuat suatu aplikasi yang berisikan


data karyawan dimana kita akan membuat script untuk memasukan
(insert),

mencari/menampilkan

(select),

mengedit

(update)

dan

menghapus (delete) record/data yang terdapat pada database.


9.1 Memasukan Data (Insert)
Untuk memasukan data ke database, sintaks mysql yang
digunakan adalah :
INSERT INTO nama_tabel (field_1, field_2,...field_n) VALUES
(data_1,data_2,...data_n)
Jika

parameter

field

tidak

dideklarasikan,

data

yang

dimasukan jumlahnya harus sama dengan jumlah field dari tabel


tersebut. Agar lebih mudah kita akan menggunakan dua buah file
dimana satu file (input_data_karyawan.html) berfungsi sebagai
halaman bagi user untuk memasukan data.
94

Dan file yang kedua (simpan_data_karyawan.php) bertugas


untuk

menyimpan

data

yang

dimasukan

melalui

file

input_data_karyawan.html ke database.
Contoh form html untuk memasukan data:
input_data_karyawan.html
<HTML>
<HEAD>
<TITLE>Input Data Karyawan</TITLE>
</HEAD>
<BODY>
<form method="post" action="simpan_data_karyawan.php">
<table border="1">
<tr>
<td>Nomor Karyawan</td>
<td>
<input type="text" name="nomor_karyawan">
</td>
</tr>
<tr>
<td>Nama Karyawan</td>
<td>
<input type="text" name="nama_karyawan">
</td>
</tr>
<tr>
<td>Jabatan</td>
<td>
<input type="text" name="jabatan_karyawan">
</td>
</tr>
</table>
<p>
<input type="submit" name="submit" value="Simpan">
<input type="reset" name="Hapus" value="Hapus">
</p>
</form>
</BODY>
</HTML>

95

File tersebut dan jika dilihat di browser tampilannya adalah sebagai


berikut:

]
Berikut ini adalah

script untuk menangkap variabel dan nilainya

dari input form diatas dan kemudian menyimpannya ke dalam


database.
simpan_data_karyawan.php
<?
// Buka koneksi ke database "data_karyawan"
$koneksi=mysql_connect("localhost","root","") or die(mysql_error());
$pilih_db=mysql_select_db("data_karyawan") or die(mysql_error());
// Sintaks MySql untuk memasukan data karyawan ke database
$perintah="INSERT INTO karyawan
(nomor_karyawan,nama_karyawan,jabatan_karyawan) VALUES
('$nomor_karyawan','$nama_karyawan','$jabatan_karyawan')";
//Eksekusi $perintah
$jalankan_perintah=mysql_query($perintah) or die(mysql_error());

96

if ($jalankan_perintah)
{
echo "Data berikut berhasil dimasukan ke database:<br>";
echo "<br>Nomor Karyawan: ".$nomor_karyawan;
echo "<br>Nama Karyawan: ".$nama_karyawan;
echo "<br>Jabatan Karyawan: ".$jabatan_karyawan;
}
?>

Jalankan file input_data_karyawan.html kemudian lihat hasilnya di


browser pada file simpan_data_karyawan.php.
9.2 Menampilkan Data (Select)
Query

ini

digunakan

untuk

menampilkan

seluruh

data

ataupun mencari kemudian menampilkan data sesuai kriteria yang


kita inginkan. Berikut ini perintah untuk menampilkan data:

SELECT

nama_field_1,

nama_field_2,...nama_field_n

from

nama_tabel where kriteria order by nama_field asc|desc


Contoh :

Untuk menampilkan data karyawan dengan kriteria nama


karyawan mengandung huruf a kemudian hasilnya di urutkan
berdasarkan nomor karyawan dari yang terbesar:
Select * from karyawan where nama_karyawan like %a% order
by nomor_karyawan desc;

Untuk menampilkan data

karyawan hanya yang bernama

joko:
Select * from karyawan where nama_karyawan=joko;
Harap diperhatikan bahwa select *

memiliki arti memilih

seluruh field yang ada. Jika hanya ingin memilih nama karyawan
saja, maka gunakan perintah select nama_karyawan.
97

Berikut ini adalah contoh script untuk menampilkan data seluruh


karyawan:
tampilkan_data_karyawan.php
<HTML>
<HEAD>
<TITLE>Tampilkan Data Karyawan</TITLE>
</HEAD>
<BODY>
<form>
<table border="1">
<tr>
<td>Nomor Karyawan</td>
<td>Nama Karyawan</td>
<td>Jabatan</td>
<td colspan=2 align=center>Action</td>
</tr>
<?
// Buka koneksi ke database "data_karyawan"
$koneksi=mysql_connect("localhost","root","") or die(mysql_error());
$pilih_db=mysql_select_db("data_karyawan") or die(mysql_error());
// Sintaks MySql untuk menampilkan seluruh record karyawan
$perintah="SELECT * FROM karyawan ORDER BY nomor_karyawan";
//Eksekusi $perintah
$jalankan_perintah=mysql_query($perintah) or die(mysql_error());
//cek apakah data ada di dalam table? jika tidak ada maka tampilkan
//pesan "Data karyawan tidak ada"
if (mysql_num_rows($jalankan_perintah) == 0)
{
echo "<tr>";
echo "<td colspan=5 align=center>Data karyawan tidak ada</td>";
echo "</tr>";
}

98

//Tampilkan seluruh data karyawan berdasarkan fieldnya


while ($row=mysql_fetch_array($jalankan_perintah))
{
echo "<tr>";
echo "<td>$row[nomor_karyawan]</td>";
echo "<td>$row[nama_karyawan]</td>";
echo "<td>$row[jabatan_karyawan]</td>";
echo "<td><a
href=edit_data_karyawan.php?nomor_karyawan=$row[nomor_karyawan]>
EDIT</a></td>";
echo "<td><a
href=hapus_data_karyawan.php?nomor_karyawan=$row[nomor_karyawan]>
DELETE</a></td>";
echo "</tr>";
}
?>
</table>
</form>
</BODY>
</HTML>

Untuk mengambil hasil query dari database digunakan fungsi

mysql_fetch_array(). Fungsi ini akan membaca data/record secara


baris perbaris dan hasil yang diperoleh adalah dalam bentuk array
assosiatif.

Jadi

untuk

menampilkan

$nama_variabel[nama_field],

pada

data,
contoh

sintaksnya
diatas

adalah
adalah

$row[nomor_karyawan], $row[nama_karyawan] dan seterusnya.


Sebelum menjalankan file ini pastikan bahwa sudah ada data
karyawan yang anda masukan sebelumnya, sebab jika data belum
dimasukan maka akan muncul pesan Data karyawan tidak ada.
Untuk memasukan data-data silahkan lihat kembali Bab 9.1 tentang
pelajaran memasukan data (insert).

99

Jika data-data tersebut sudah anda masukan maka akan


tampil data karyawan sesuai seperti yang anda masukan, contoh
tampilannya kurang lebih sebagai berikut:

Pada gambar diatas terdapat link EDIT dan DELETE,


penjelasannya akan diuraikan pada bab selanjutnya yaitu mengenai
merubah data (update) dan menghapus data (delete).

100

9.3 Mengubah Data (Update)


Seringkali setelah data kita masukan pada suatu saat kita
ingin memperbaharuinya kembali. Untuk mengubah data digunakan
sintaks sebagai berikut:
UPDATE name_tabel SET nama_field_1=isi_baru_1,

nama_field_2=isi_baru_2, nama_field_n=isi_baru_n WHERE


kriteria;
Contoh :

Merubah jabatan karyawan yang bernama arman dari staff


menjadi manager:
update karyawan set jabatan_karyawan=manager where
nama_karyawan=arman;

Merubah

jabatan

karyawan

menjadi

manager

terhadap

karyawan yang memiliki nomor ID karyawan 3:


update karyawan set jabatan_karyawan=manager where
nomor_karyawan=3;
Untuk aplikasi ini, kita akan menggunakan dua file yakni
edit_data_karyawan.php

berupa form input untuk merubah data,

sedangkan file edit_data_karyawan_simpan.php bertugas untuk


menyimpan hasil rubahan data yang kita buat. Perhatikan pula
bahwa nomor_karyawan adalah sebagai Unique ID/Primary Key.
Jadi

baik

untuk

mengedit/menghapus

data

nantinya

akan

menggunakan field ini sebagai kunci. Untuk lebih jelasnya lihat


contoh diatas dimana data pada jabatan_karyawan

dirubah

khusus bagi si karyawan yang ber nomor_karyawan = 3.

101

edit_data_karyawan.php
<?
// Buka koneksi ke database "data_karyawan"
$koneksi=mysql_connect("localhost","root","") or die(mysql_error());
$pilih_db=mysql_select_db("data_karyawan") or die(mysql_error());
// Sintaks MySql untuk menampilkan record karyawan berdasarkan
// nomor karyawan
$perintah="SELECT * FROM karyawan WHERE
nomor_karyawan='$nomor_karyawan'";
//Eksekusi $perintah
$jalankan_perintah=mysql_query($perintah) or die(mysql_error());
// Mengambil data pada berdasarkan field karyawan yang bersangkutan
$row=mysql_fetch_array($jalankan_perintah);
?>
<HTML>
<HEAD>
<TITLE>Edit Data Karyawan</TITLE>
</HEAD>
<BODY>
<form method="post" action="edit_data_karyawan_simpan.php">
<table border="1">
<tr>
<td>Nama Karyawan</td>
<td>
<input type="text" name="nama_karyawan" VALUE="<? echo
$row[nama_karyawan]; ?>" >
</td>
</tr>
<tr>
<td>Jabatan</td>
<td>
<input type="text" name="jabatan_karyawan" VALUE="<? echo
$row[jabatan_karyawan]; ?>" >
</td>
</tr>
</table>
<input type="hidden" name="nomor_karyawan" VALUE="<? echo
$row[nomor_karyawan]; ?>" >
<input type="submit" name="Simpan" value="Edit">
</form>
</BODY>
</HTML>

102

Jalankan terlebih dahulu file tampilkan_data_karyawan.php


kemudian klik link EDIT pada salah satu karyawan misalnya yang
bernama

arman.

Ketika

kita

mengklik

EDIT

maka

file

edit_data_karyawan.php akan dieksekusi. Tampilannya kurang lebih


sebagai berikut:

Coba anda rubah kata staff pada gambar diatas menjadi


manager kemudian klik tombol Edit, maka perubahan tersebut
akan langsung disimpan oleh file edit_data_karyawan_simpan.php
berikut ini:

103

edit_data_karyawan_simpan.php
<?
// Buka koneksi ke database "data_karyawan"
$koneksi=mysql_connect("localhost","root","") or die(mysql_error());
$pilih_db=mysql_select_db("data_karyawan") or die(mysql_error());
// Sintaks MySql untuk mengupdate data karyawan berdasarkan
// nomor karyawannya
$perintah="UPDATE karyawan set nama_karyawan='$nama_karyawan',
jabatan_karyawan='$jabatan_karyawan' WHERE
nomor_karyawan='$nomor_karyawan'";
//Eksekusi $perintah
$jalankan_perintah=mysql_query($perintah) or die(mysql_error());
if ($jalankan_perintah)
{
echo "Data berikut berhasil di Update:";
echo "<br>Nomor Karyawan: ".$nomor_karyawan;
echo "<br>Nama Karyawan: ".$nama_karyawan;
echo "<br>Jabatan Karyawan: ".$jabatan_karyawan;
}
?>

Untuk melihat perubahan yang Anda lakukan, buka kembali


file tampilkan_data_karyawan.php maka akan ditampilkan data
yang terbaru.

104

9.4 Menghapus Data (Delete)


Apabila

kita

akan

menghapus

data

yang

sudah

tidak

digunakan lagi, gunakan perintah:


DELETE from nama_tabel WHERE kriteria;
Contoh:

Menghapus data karyawan yang bernomor karyawan 3:


delete from karyawan where nomor_karyawan=3;

Script berikut ini digunakan untuk menghapus data karyawan sesuai


kriteria yang telah kita tentukan:
hapus_data_karyawan.php
<?
// Buka koneksi ke database "data_karyawan"
$koneksi=mysql_connect("localhost","root","") or die(mysql_error());
$pilih_db=mysql_select_db("data_karyawan") or die(mysql_error());
// Sintaks MySql untuk menghapus record karyawan berdasarkan
// nomor karyawan
$perintah="DELETE FROM karyawan WHERE
nomor_karyawan='$nomor_karyawan'";
//Eksekusi $perintah
$jalankan_perintah=mysql_query($perintah) or die(mysql_error());
if ($jalankan_perintah)
{
echo "Data karyawan dengan nomor ". $nomor_karyawan ." berhasil
dihapus!<br>";
}
?>

Jalankan file tampilkan_data_karyawan.php terlebih dahulu


kemudian klik link DELETE pada salah satu karyawan, misalnya
arman, jka berhasil akan muncul pesan pada browser bahwa data
karyawan yang dimaksud berhasil dihapus.

105

BAB 10
KUMPULAN TIPS PHP SCRIPT

Untuk menuju suatu halaman tertentu:


<?
header(location:halaman_tertentu.php);
?>

Untuk menampilkan waktu terakhir suatu halaman


dimodifikasi:
<?
echo "Last Modifed: ".date("d F Y H:i:s", getlastmod());
?>

Untuk melihat besarnya free disk space:


<?
echo diskfreespace("/");
?>

Untuk membuat semua teks menjadi huruf besar semua:


<?
$kata_kecil=kAliMat ini AkaN meNjaDi HuruF bESAr SEMUa;
echo strtoupper($kata_kecil);
?>
Untuk membuat menjadi huruf kecil semua, gunakan
strtolower()

106

Untuk mengganti suatu string, misalnya Budi diganti


Anton:
<?
$kata=Ini Ibu Budi;
echo str_replace(Budi,Anton,$kata);
?>

Membuat random number (nilai acak) antara 0-9:


<?
srand(time());
$random = (rand()%9);
print("nilai acak antara 0 sampai 9 adalah: $random");
?>

Menghilangkan Tag-Tag HTML, sehingga akan menghasilkan


teks biasa saja (no html style):

<?
$kata_html=<html><body><i><b>ini seharusnya huruf miring dan
tebal, tapi dihilangkan oleh strip_tags</b></i></body></html>;
echo strip_tags($kata_html);
?>

Untuk memvalidasi format email yang benar:

<?
$valid_email="hendrawan@hotmail.com";
if (ereg("^.+@.+\\..+$", $valid_email))
echo $valid_email." adalah email yang valid<br>";
?>

Untuk menampilkan konfigurasi PHP dalam server:


<?
echo phpinfo();
?>
107

BAB 11
PENUTUP
Selesai sudah pelajaran yang telah diberikan. Harapan penulis
adalah Anda terus bereksperimen dengan berbagai aplikasi yang
telah diajarkan. Kunci utama untuk menguasai suatu pemrogaraman
adalah mencoba, mencoba dan mencoba. Semakin banyak aplikasi
yang Anda buat maka semakin terasah pengalaman Anda untuk
mendiagnosa kesalahan yang terjadi pada saat kita membuat suatu
aplikasi.
Selain itu pula aktiflah di forum diskusi ataupun mailing list
PHP sebab disitu Anda bisa menanyakan berbagai masalah dan
menurut pengalaman penulis hal tersebut sangatlah membantu
manakala kita memiliki masalah yang tidak bisa kita pecahkan
sendiri. Selamat Belajar, Semoga Berhasil !

108

REFERENSI
FUNGSI-FUNGSI PHP

A
Fungsi

Operasi

Sintaks

Abs

Menghitung nilai absolut


sebuah bilangan

abs (bilangan/$var_bilangan)

acos

Menghitung nilai kosinus


dalam radian

acos (bilangan)

addslashes

Menambahkan garis
miring (slash) pada
sebuah string

addslashes (string)

array

Deklarasi variabel array

array (nilai 1, nilai 2, .)

array count
values

Menghitung jumlah
elemen array

array_count_values
($var_array)

array key

Menghasilkan nilai kunci


(key) dari elemen array

array_key($var_array)

array merge

Menggabungkan kedua
atau lebih array

array_merge($var_array1,
$var_array2, .)

array pad

Mengubah jumlah
elemen array

array_pad($var_array1,
jml_elemen, nilai_baru)

array pop

Mengambil nilai elemen


pada akhir array

array_pop($var_array)

array push

Menambah elemen pada


akhir array

array_push($var_array,
nilai1, nilai2, .)

array reverse

Membalik urutan elemen


array

array_reverse($var,array)

array shift

Mengambil nilai elemen


array yang partama

array_shift($var_array)

109

array slice
array splice

Mengambil potongan
array

array_slice ($var_array,
awal_pemotomgan,
jml_elemen)
Mengambil potongan
array_splice ($var_array,
array kemudian
awal_pemotomgan,
menggantikannya dengan jml_elemen,
nilai baru
elemen_pengganti)

array unshift

Menambah elemen pada


awal array

array_unshift($var_array,
nilai1, nilai2, .)

array values

Menghasilkan nilai
(value) dari elemen array

array_value($var_array)

array walk

Mengeksekusi suatu
fungsi pada setiap
elemen array

array_walk($var_array,
fungsi, data)

arsort

Mengurutkan elemen
dengan urutan terbalik

arsort($var_array)

asin

Menghitung nilai sinus

asin(nilai)

atan

Menghitung nilai tangen

atan(nilai)

atan2

Menghitung dua nilai


tangen

atan2(nilai1, nilai2)

110

B
Fungsi

Operasi

Sintaks

basename

Menghasilkan nama file


dari komponen direktori

basename (direktori/path)

base convert

Mengubah format

base_convert(nilai,
format_awal, format_baru)

bilangan (biner, desimal,


hexadesimal)
bin2hex

Mengkonversi data
binary menjadi
hexadesimal

bin2hex(string)

C
Fungsi
ceil

Operasi
Membulatkan nilai

Sintaks
ceil(nilai)

keatas
chdir

Mengubah direktori

checkdate

Validasi waktu

chdir(direktori)

checkdnsrr

checkdate(bulan, tanggal,
tahun)
Memeriksa DNS dari host checkdnsrr(nama_host,
atau
tipe)
IP address

chgrp

Mengubah grup file

chmod

Mengubah mode file

chgrp(nama_file,
nama_grup)
chmod(nama_file, mode)

chop

Menghapus spasi

chop(string)

chown

Mengubah nama pemilik

chown(nama_file, pemilik)

file
chr

Menghasilkan character
berdasarkan nilai ASCII

chr(ASCII)

111

clearstatcache

Menghapus catatan

clearstatcache(void)

status file
closelog

Memutus hubungan ke
system
logger

closelog(void)

compact

Membuat array dari


variabel
dan nilainya

compact(nama_variabel,
nilai)

convert cyr
string

Mengubah cyrilic

convert_cyr_string(string,
format_awal, format_baru)

copy

Mengkopi file

copy(sumber, tujuan)

cos

Menghitung nilai kosinus

cos(nilai)

count

Menghitung jumlah
elemen
array

count($var_array)

count chars

Menghitung jumlah

count chars(string)

character

character
current

Menghasilkan nilai
elemen dimana posisi
pointer berada

current($var_array)

112

D
Fungsi
date

decbin

Operasi
Menghasilkan waktu
saat ini

Konversi dari desimal

Sintaks
date(format)
a - am/pm
A - AM/PM
d tanggal 01 31
D hari
F bulan
h jam -1 - 12
H jam 00 - 23
g jam 1 - 12
G jam 0 - 23
i menit 00 - 59
j tanggal 1 to 31
l hari
m bulan 01 - 12
n bulan 1 to 12
M bulan, disingkat , Jan
s detik00-59
t jumlah dari sebulan 2831
Y tahun, 4 digit
y tahun, 2 digit
z jumlah hari setahun
0_365
decbin(bilangan)

ke biner
dechex

Konversi dari desimal


ke heksadesimal

dechex(bilangan)

decoct

Konversi dari desimal


ke oktal

decoct(bilangan)

diskfreespace

Kapasitas hard disk

diskfreespace(direktori)

113

E
Fungsi
each

Operasi
Sintaks
Menghabiskan kunci
each($var_array)
(key) dan nilai (value)
dari elemen array dimana
posisi pointer berada,
kemudian memajukan
pointer satu elemen

end

Menempatkan pointer

end($var_array)

pada elemen array yang


terakhir
ereg

Menari pola tertentu


dlam string

ereg(pola, string_sumber,
$var_hasil)

eregi

Mencari pola tertentu


dalam string (tidak case
sensitive)

eregi(pola, string_sumber,
$var_hasil)

eregi replace

Mengganti penggalan
string dengan pola
tertentu (tidak case
sensitive)

eregi_replace(pola,
string_pengganti,
string_sumber)

ereg replace

Mengganti penggalan
string dengan pola
tertentu
Memecah string sesuai
format

ereg_replace(pola,
string_pengganti,
string_sumber)
explode(format, string)

explode

114

F
Fungsi

Operasi

Sintaks

fclose

Menghapus file pointer

fclose(file_pointer)

feof

Test apakah posisi

feof(file_pointer)

pointer di akhir file


fgetc

Mengambil character
pada posisi pointer

fgetc(file_pointer)

fgets

Mengambil sebaris string


pada posisi pointer

fgets(file_pointer,
panjang_string)

fgetss

Mengambil sebaris string fgetss(file_pointer,


dan menghilangkan taf
panjang_string)
HTML pada posisi pointer

file

Membaca isi file kedalam

file(nama_file)

sebuah array
fileatime

Menghasilkan waktu
terakhir suatu file
diakses

fileatime(nama_file)

filectime

Menghasilkan waktu
filectime(nama_file)
terakhir suatu file diubah
isinya

filegroup

Nama grup suatu file

filegroup(nama_file)

filemtime

Menghasilkan waktu
terakhir suatu file
dimodifikasi

filemtime(nama_file)

fileowner

Menghasilkan nama
pemilik suatu file

fileowner(nama_file)

115

fileperms

Menghasilkan file
permission suatu file

fileperms(nama_file)

filesize

Ukurang file

filesize(nama_file)

filetype

Tipe file

filetype(nama_file)

file exists

Memeriksa apakah suatu


file ada

file exists(nama_file)

floor

Membulatkan bilangan
kebawah

floor(bilangan)

fopen

Membuka suatu file

fopen(mode, nama_file)

fpassthru

Memasukkan semua data fpassthru(file_ponter)


kedalam pointer

fputs

Menulis data ke file


pointer

fputs(file_pointer_string)

fread

Membaca isi file

fread(file_pointer,
panjang_string)

ftell

Status file pointer


(read/write)

ftell(file_pointer)

fwrite

Menulis ke file

fwrite(file_pointer, string,
panjang_string)

116

G
Fungsi
getdate

Operasi
Menghasilkan waktu
sekarang, dalam bentuk
array assosiatif, dengan
key berikut :

Sintaks
getdate(timestamp)

second detik
minutes menit
hours jam
mday hari sebulan
wday hari, seminggu
mon bulan
year tahun
yday hari setahun
weekday hari (teks)
month bulan (teks)
getdescent

Menghasilkan waktu hari


ini dalam bentuk array
asosiatif dengan key
berikut :
sec second
usec microsecond
minuteswest minutes
west
of Greenwich
dsttime type of dst
correction

getenv

Menghasilkan nilai
environment variabel

getenv(nama_variabel)

gethostbyaddr

Menghasilkan nama host


berdasarkan alamat IP

gethostbyaddr(alamat_IP)

gethostbyname

Menghasilkan alamat IP
berdasarkan nama host

gethostbyname(nama_host)

117

gethostbynamel

Menghasilkan daftar
alamat IP berdasarkan
nama host

gethostbynamel(nama_host)

getimagesize

Menghasilkan ukuran
sebuah file image

getimagesize(nama_file)

getlastmod

Menghasilkan waktu
terakhir sebuah halaman
dimodifikasi

getlastmod(void)

getprotbyname

Menghasilkan nomor
protokol berdasarkan
namanya

getprotbyname(nama_protok
ol)

getprotbynumb
er

Menghasilkan nama
protokol berdasarnya
nomornya

getprotbynumber(nama_prot
okol)

getrandmax

Menghasilkan bilangan
tertinggi dari bilangan
acak
yang dihasilkan

getrandmax(void)

getservbyname

Menghasilkan port
getservbyname(internet_servi
number berdasar internet ce, protokol)
service dan protokolnya

getservbyport

Menghasilkan internet
service berdasarkan port
number dan protokolnya

getservbyport(port_number,
protokol)

118

gettimeofday

get magic
quotes gpc

Menghasilkan waktu
sekarang. Hasilnya
berupa array asosiatif
dengan key berikut :

gettimeofday(void)

sec detik
usec seperseribu detik
minuteswest minutes
west of Greenwich
dsttime tipe dst
correction
Memeriksa konfigurasi
get_magic_quotes gpc(void)
magic quotes gpc yang
aktif

get magic
quotes runtime

Memeriksa konfigurasi
magic quotes gpc yang
aktif

get_magic_quotes
runtime(void)

gmdate

Sama dengan fungsi date


(), hanya saja dasar
waktunya menggunakan
GMT

gmdate(format)

gmmktime

Menghasil UNIX
timestamp

gmmktime(jam, menit, detik,


bulan, hari, tahun, [is_dst] );

119

H
Fungsi

Operasi

Sintaks

header

Mengirim HTTP
header

header(string)

hexdec

Konvesi dari
haksadesimal ke
desimal

hexdec(bil_heksadesimal)

I
Fungsi

Operasi

Sintaks

imagearc

Menggambar elips

imagearc(var_image, x, y,
lebar, tinggi, derajat_awal,
derajat_akhir)

imagechar

Menggambar
character
(horisontal)

imagechar(var_image,
ukuran (1-5), x, y, string,
var_warna)

imagecharup

Menggambar
character
(vertikal)

imagecharup(var_image,
ukuran (1- 5), x, y, string,
var_warna)

imagecolorallocate

Mendeklarasikan
warna

imagecolorallocate(var_image
, nilai_merah, nilai_hijau,
nilai_biru)

imagecolorat

Menghasilkan
indeks warna dari
piksel yang ditunjuk

imagecolorat(var_image, x, y)

imagecolorclosest

Menghasilkan
indeks warna
(terdekat) dari nilai
RGB yang ditunjuk

imagecolorcloses(var_image,
nilai_merah, nilai_hijau,
nilai_biru)

120

imagecolordeallocate

Menghapus variabel Imagecolordeallocate(var_ima


warna yang diset
ge, var_warna)
menggunakan fungsi
imagecolorallocate ()

imagecolorexact

Menghasilkan
Imagecolorclosesthwb(var_im
indeks warna dari
age, nilai_merah, nilai_hijau,
nilai RGB yang
nilai_biru)
ditunjuk (jika warna
yang dirunjuk tidak
ada, akan dihasilkan
nilai 1)

imagecolorresolve

Menghasilkan
indeks warna dari
nilai RGB yang
ditunjuk atau jika
warna yang ditunjuk
tidak ada, dicari
kemungkinan
terdekatnya

imagecolorresolve(var_image,
nilai_merah, nilai_hijau,
nilai_biru)

imagecolorset

Set warna
berdasarkan nilai
RGB

imagecolorset(var_image,
var_warna, nilai_merah,
nilai_hijau, nilai_biru)

imagecolorsforindex

Menghasilkan warna
dari variabel warna

imagecolorsforindex(var_ima
ge, var_warna)

imagecolorstotal

Menghasilkan
jumlah warna yang
telah diset

imagecolorstotal(var_image)

Imagecolorstranpare
nt

Set warna
transparan

imagecolorstranparent(var_i
mage, var_warna)

imagecopy

Kopi image

imagecopy(var_image_tujuan
, var_image_sumber,
x_tujuan, y_tujuan,
x_sumber, y_sumber,
lebar_sumber,tinggi_sumber)
121

imagecopyresized

Kopi image, dan


mengubah
ukurannya

imagecopyresized

imagecreate

Mendeklarasikan
image

imagecreate(x, y)

imagecretefromgif

Mengdeklarasikan
image dari file/URL
dengan formal GIF

imagecretefromgif(nama_file)

imagecreatefromped

Mendeklarasikan
image dari file/URL
dengan formal JPEG

imagecreatefromped(nama_fil
e)

imagecreatefrompng

Mendeklarasikan
image dari file/URL
dengan formal PNG

imagecreatefrompng(nama_fi
le)

imagedashedline

Menggambar garis
dari x1, y1 ke x2, y2

imagedashedline(var_image,
x1, y1, x2, y2, var_warna)

imagedestory

Menghapus image

imagedestory(var_image)

imagefill

Mewarnai dasar
gambar

imagefill(var_image, x, y,
var_warna)

imagefilledpolygon

Mewarnai poligon

imagefilledpolygon(var_image
, [titik1, titik2, .]
jumlah_titik, var_warna)

imagefilledrectangle

Mewarnai segi empat imagefilledrectangle(var_ima


ge, x1, y1, x2, y2, var_warna)
Mewarnai dari titik
imagefilltoborder(var_image,
awal sampai batas
x, y, var_warna_border,
yang ditemui
var_warna)

imagefilltoborder

imagefontheight

Menentukan tinggi
huruf

imagefontheight(font)

122

imagefontwidth

Menentukan
lebarhuruf

imagefontwidth

imagegif

Output image

imagegif(var_image)

imagejped

Output image

imagejped(var_image)

imageline

Menggambr garis
dari x1, y1 ke x2, y2

imageline(var_image,x1, y1,
x2, y2, var_warna)

imageloadfont

Memanggil file
format huruf

imageloadfont(nama_file)

imagepng

Output image

imagepng(var_image)

imagepolygon

Menggambar poligon

imagerectangle

Menggambar segi
empat

imagepolygon(var_image,
[titik1, titik2,.],
jumlah_titik, var_warna)
imagerectangle(var_image,
x1.y1, x2, y2, var_warna)

imagesetpixel

Menggambar piksel

imagesetpixel(var_image, x,
y, var_warna)

imagestring

Menggambar string

imagestring(var_image,
ukuran_huruf(1-5), x, y,
string, var_warna)

imagestringup

Menggambar string
(vertical)

imagestringup(var_image,
ukuran_huruf(1-5), x, y,
string, var_warna)

Imagesx

Lebar image

imagesx(var_image)

imagesy

Tinggi image

imagesy(var_image)

imagetypes

Tipe image yang


diset

imagetypes(void)

123

is array

Memeriksa apakah
variabel bertipe
array

is_array(variabel)

is bool

Memeriksa apakah
variabel bertipe
boolean

is_bool(variabel)

is double

Memeriksa apakah
variabel bertipe
double

is_double(variabel)

is float

Memeriksa apakah
variabel bernilai
float

is_float(variabel)

is int

Memeriksa apakah
variabel bernilai
integer

is_int(variabel)

is integer

Memeriksa apakah
variabel bernilai
integer

is_integer(variabel)

is object

Memeriksa apakah
variabel bertipe
object

is_object(variabel)

is real

Memeriksa apakah
variabel berupa
bilangan real

is_real(variabel)

is resource

Memeriksa apakah
variabel berupa
resource

is_resource(variabel)

is string

Memeriksa apakah
variabel berupa
string

is_string(variabel)

124

K
FUNGSI

OPERASI

SINTAKS

key

Menghasilkan nilai
indeks dari array

key(var_array)

krsort

Menurutkan elemen
array asosiatif
berdasarkan nilai
indeksnya dengan
urutan terbalik

krsort(var_array)

ksort

Mengurutkan elemen
array asosiatif
berdasarkan nilai
indeksnya.

ksort(var_array)

L
FUNGSI

OPERASI

SINTAKS

ldap add

Masukan data ke
direktori LDAP

lda_ add(link_id, nd, data)

ldap bind

Penelusuran data
di direktori LDAP

ldap_bind(link_identifier)

ldap close

Menutup koneksi

ldap_close(link_identifier)

ldap connect

Koneksi ke LDAP
server

ldap_connect(host, port)

ldap count entries

Menghitung
jumlah entries
dari pencarian

ldap_count_entries(link_id,
result_id)

ldap delete

Menghapus
entries

ldap_delete(link_id, nd)

125

ldap dn2ufn

Konversi dn ke
format yang lebih
user friendly

ldap_dn2ufn(nd)

ldap mod add

Menambah data
atribut

ldap_mod_add(link_id, nd,
data)

ldap mod del

Menghapus data
atribut

ldap_mod_del(link_id, nd, data)

ldap mod replace

Mengganti nilai
data atribut

ldap_mod_replace(link_id, nd,
data)

ldap read

Membaca entries

ldap search

Mencari di data
struktur LDAP

ldap_read(link_id, nd, filter,


atribut)
ldap_search(link_id, nd, filter,
atribut)

list

Membuat array

list(nilai1, nilai 2)

log

Nilai log

log(bilangan)

log 10

Nilai log dasar 10

log 10(bilangan)

ltrim

Menghapus spasi
di depan string

ltrim(string)

126

M
Fungsi

Operasi
Mengirim email

Sintaks
mail(kepada, hal, pesan,
add_header)

max

Mencari nilai
tertinggi

max(nilai1, nilai 2, .)

md5

Menghitung md5
hash

md5(string)

metaphone

Menghitung
metaphone key dari
sebuah string

metaphone(string)

microtime

Waktu sekarang
dalam mikro detik

microtime(void)

min

Mencari nilai
terendah

min(nilai1, nilai 2, .)

mktime

Menghasilkan UNIX
timestamp

mktime(jam, menit, detik,


bulan, hari, tahun)

mt getrandmax

Nilai acak
maksimum

mt_getrandmax(void)

mt rand

Membuat Nilai acak

mt_rand(nilai_min, nilai_maks)

mt srand

Membuat random
seed

mt_srand(seed)

mysql affected
rows

Jumlah baris dalam


suatu koneksi

mysql_affected rows(link_id)

mysql close

Menutup koneksi
mysql

mysql_close(link_id)

mail

127

mysql connect

Koneksi ke mysql

mysql_connect(host, user,
password)
mysql_create_db(nama_databas
e, link_id)

mysql create db

Membuat database

mysql data seek

Meletakkan pointer

mysql_data_seek(result_id,nom
or_row)

mysql db query

Mengirim query SQL

mysql_db_query(database,
query, link_id)

mysql drop db

Menghapus
database

mysql_drop_db(database,
link_id)

mysql errno

Nomor pesan
kesalahan

mysql_errno(link_id)

mysql error

Pesan kesalahan

mysql_error(link_id)

mysql fetch array

Mengambil hasil
query dalam bentuk
array asosiatif

mysql_fetch_array(result_id)

mysql fetch field

Mengambil informasi mysql_fetch_field(result_id)


field dari hasil query

mysql fetch
lengths

Menghasilkan
panjang setiap field
dari hasil query

mysql_fetch _lengths(result_id)

mysql fetch object

Mengambil hasil
query dalam bentuk
objek

mysql_fetch_object(result_id)

Mysql fetch row

Mengambil hasil
query baris per baris
dalam bentuk array

mysql_fetch_row(result_id)

mysql field name

Nama field dari hasil


query

mysql_field_name(result_id,
field_indeks)

128

mysql field seek

Meletakkan pointer
pada field offset
yang ditunjuk

mysql_field_seek(result_id,
field_offset)

mysql field table

Nama table dari field


yang ditunjuk

mysql_field_table(result_id,
field_offset)

mysql field type

Tipe field yang


ditunjuk

mysql_field_type(result_id,
field_offset)

mysql free result

Menghapus hasil
query dari memori

mysql_free_result(result_id)

mysql num fields

Jumlah field hasil


query

mysql_num_fields(result_id)

mysql num rows

Jumlah data hasil


query

mysql_num_rows(result_id)

mysql pconnect

Koneksi ke MySQL
secara persisten

mysql_pconnect(host, user,
password)

mysql query

Melakukan query

mysql_query(query)

mysql result

Mengambil data
hasil query

mysql_result(result_id, row)

mysql select db

Memilih database

mysql_select_db(database)

129

N
FUNGSI

OPERASI

SINTAKS

next

Memajukan pointer array ke


elemen berikutnya

next(var_array)

nl2br

Konversi baris baru menjadi


tag HTMK <BR>

nl2br(string)

number format

Format bilangan desimal

number_format(bilanga
n, decimal, dec_point,
thousand_sep)

O
FUNGSI
octdec

OPERASI
Konversi octal ke desimal

SINTAKS
octdec(bilangan)

P
FUNGSI

OPERASI

SINTAKS

parse str

Memecahkan string kedalam


variabel-variabel

parse_str(string)

pclose

Menutup proses file pointer

pclose(fp)

phpcredits

Mencetak keterangan
mengenai PHP

phpcredits(flag)

phpinfo

Mencetak keseluruhan status


PHP

phpinfo(void)

phpversion

Mencetak versi PHP yang


digunakan

phpversion (void)

130

pi

Nilai pi

pi(void)

popen

Membuka proses file pointer

popen(perintah,mode)

pos

Menghasilkan elemen dimana


posisi pointer berada

pos(var_array)

pow

Bentuk eksponsial

pow(base,exp)

prev

Memundurkan pointer array


satu elemen

prev(var_array)

print

Mencetak string

print(string)

printf

Mencetak dengan format


tertentu

printf(formt_string)

R
FUNGSI

OPERASI

SINTAKS

rad2deg

Konversi radian ke derajat

rad2deg(bilangan)

rand

Membuat nilai acak

rand(min,maks)

range

Membuat array dengan


elemen bilangan dalam range
tertentu

range(min,maks)

readdir

Membaca entry dari directory


handle

readdir(directory_handl
e)

readlife

Membuka dan mengakses file

readlife(nama_file)

rename

Mengubah nama file

reset

Mengembalikan pointer array


ke elemen pertama

rename(nama_lama,
nama_baru
reset(var_array)

131

rewind

Mengembalikan posisi file


pointer

rewind(fp)

rewinddir

Mengembalikan directory
handle ke bagian awal dirctori

rewinddir(directory_han
dle)

rmdir

Menghapus directori

rmdir(nama_direktori)

round

Pembulatan

round(bilangan)

rsort

Mengurutkan array dengan


urutan terbalik

rsort(var_array)

rtim

Menghapus spasi

rtim(string)

S
FUNGSI

OPERASI

SINTAKS

sessiondecode

Decode data session

session_decode(data)

session
destroy
session incode

Menghapus data session

session_destroy(void)

Encode data session

session_encode(data)

session id

Set session id

session_id(id)

session is

Memeriksa apakah sebuah


variabel session telah di set

sessionis_is_registered(n
ama_variabel)

session name

Set nama session

session_name(nama)

session
register

Memasukkan variabel dalam


session

session_register(nama_v
ariabel)

session save
path

Set direktori tempat data


session disimpan

session_save_path(direct
ori)

session start

Inisialisasi data session

session_start (void)

registered

132

session
unregister

Menghapus variabel dari


session

session_unregister(nam
a_varabel)

session unset

Menhapus seluruh variabel


session

session_unset(void)

similar text

Menghitung kesamaan dua


buah string

similar_text(string1,stri
ng2)

sin

Menghitung sinus

sin(bilangan)

sizeof

Menghasilkan jumlah elemen


array

sizeof(array)

sort

Mengurutkan elemen array

sort(array)

soundex

Menghitung soundex key


sebuah string

soundex(string)

split

Memecah string berdasarkan


pola tertentu

split(pola string)

spliti

Memecah string berdasar pola


tertentu (tidak case sensitif )

spliti(pola, string)

sprintf

Format string

sprintf(format)

sql regcase

Membuat regular expression


(tidak case sensitive)

sql_regcase(string)

sqrt

Akar pangkat dua

sqrt(bilangan)

srand

Seed bilangan acak

srand(seed)

sscanf

Memecah string berdasarkan


formatnya

sscanf(string,format)

133

strcasecmp

Membandingkan dua string,


jika string 1 lebih kecil dari
string 2 nilainya <0, jika sama
nilainya 0, jika string 1 lebih
besar dari string 2, nilainya
>0

strcasecmp(string1,strin
g2)

strcmp

Membandingkan dua buah


string (case sensitive), jika
string 1 lebih kecil dari string
2 nilainya <0, jika sama
nilainya 0, jika string 1 lebih
besar dari string 2, nilainya
>0

strcmp(string1,string2)

strcspn

Menghitung ketidaksamaan
dua buah string

strcspn(string1,string2)

striplashes

Menghilangkan backslashes

striplashes(string)

strip tags

Menghapus tag HTML dan


PHP
Menghitung panjang string

strip tags(string)

strlen

strlen(string)

strnatcasecmp Membandingkan string (tidak


case sensitive) dengan urutan
natural

strnatcasecmp(string1,s
tring2)

strnacmp

Membandingkan string
(urutan natural)

strnacmp(string1,string
2)

strncasecmp

Membandingkan dua buah


string (tidak case sensitive),
jika string 1 lebih kecil dari
string 2 nilainya <0, jika sama
nilainya 0, jika string 1 lebih
besar dari string 2, nilainya >
0

strncasecmp(string1,stri
ng2)

134

strncmp

Membandingkan string pada


sejumlah character

strncmp(string1,string2,
jumlah_character)

streev

Membalik urutan string

streev(string)

strspn

Menghitung jumlah kesamaan strspn(string1,string2)


dari dua string dalam satu
segmen

strtok

Memecah string

strspn(string,pola)

strtolower

Mengubah string menjadi


hurup kecil

strtolower(string)

strtoupper

Mengubah string menjadi


huruf besar

strtoupper(String)

str pad

Menambahkan string

str_pad
(string,panjang_string,
tambahan_character,for
mat_letak)

str repeat

Pengulangan string

substr

Mengambil potongan string

substr
replace

Meggantikn potongan string


dengan string baru

str_repeat(string,jml_pe
ngulangan)
substr(string,awal,panja
ng)
substr_replace (string,
string_pengganti,
awal,panjang)

135

T
FUNGSI

OPERASI

SINTAKS

tan

Menghitung tangen

tan(bilangan)

tempnam

Membuat nama file yang unik

time

Unix time stamp

tempnam(direktori,p
refix)
time(void)

tmpfile

Membuat file sementara

tmpfile(void)

touch

Set waktu modifikasi

touch (nama_file)

trim

Menghilangkan spasi di awal


dan akhir string

trim(string)

U
FUNGSI

OPERASI

SINTAKS

uasort

Mengurutkan array berdasar


pola tertentu

uasort(array,pola)

ucfirst

Mengubah character pertama


menjadi huruf besar

ucfirst(string)

ucwords

Mengubah character pertama


dari setiap kata menjadi huruf
besar

ucwords(string)

uksort

Mengurutkan key array


berdasar pola tertentu

uksort(array, pola )

unlink

Menghapus file

unlink(nama_file)

usort

Mengurutkan value rray


berdasar pola tertentu

usort(array,pola)

136