Anda di halaman 1dari 124

1 Installasi

PHP

PHP Triad merupakan Software yang dibuat untuk menjalankan script


PHP. Segalanya yang anda butuhkan untuk membuat progra m PHP
sudah dipaketkan disini. MySql dan PHP My Admin sudah dipaketkan
disini. Anda bisa mendow nload PHP Triad di situs resminya secara
cuma-cuma di www.phpgeek.com. Nah sekarang saatnya saya
akan menjelaskan langkah-langkah cara menginstal PHP Triad.

1.1. Download PHP Tr iad

Dow nload terlebih dahulu PHPTriad! Anda boleh dow nload dari
http://www.download.com lalu ketikkan kata "PHPTriad", atau
bisa juga di http://www.phpgeek.com. Atau bisa juga anda buka
file projectnya di gudang kita, tepatnya di sourceforge
http://www.sourceforge.net/projects/phptr iad yang nantinya
Anda akan mendapatkan file installernya/setupnya secara cuma-cuma.

1.2. Install PHP Tr iad

Klik 2 kali pada installer tersebut., dan secara otomatis program akan
menampilkan License Of Agreement pada (Gambar 1.2).

(Gambar 1.2)

Be Enterprising Soul with mr-amateur.co.cc 1


1.3. Proses Install PHP Tr iad

Klik "Next" maka installer akan mengekstrak semua file PHPTriad dan
intaller akan membentuk direktori C:\Apache

(Gambar 1.3)

Tunggu sampai selesai lihat pada gambar 1.3! Pastikan ketika anda
menginstall tidak terjadi error dan anda tidak sedang menjalankan
program-program lain yang yang kira- kira banyak memakan memori
dan unsabilitas CPU.

1.4. Menjalankan PHP Tr iad

Oke sampai sini anda berarti telah menginstall PHPTriad. Untuk


melihat apakah PHPTriad anda berjalan dengan baik. Sekarang anda
test! Lihat Caranya :

 Pertama sekali jalankan Apache Web Server anda, Start -


Programs - PHPTriad - Start Apache.

 Anda akan mendapati jendela Start Apache, biarkan ini, dan


jangan sekali-sekali ditutup selama anda menjalankan skrip-
skrip PHP.

 Sekarang buka di web browser anda lalu ketikkan


http://localhost/

 Jika anda melihat kata- kata sambutan dari PHPTriad, selamat,


berarti instalasi yang anda lakukan telah sukses.

2 Be Enterprising Soul with mr-amateur.co.cc


(Gambar 1.4)

1.5. Buat Program PHP

<html>
<head>
<title>coba-coba</title>
</head>
<body>
<h1>Hai Saya dari Script PHP</h1>
<?php
echo "Hai saya dari Script PHP";
?>
</body>
</html>

Simpan di C:\apache\htdocs\test.php lalu buka pada Web


Browser. Ketik http://localhost/test.php

Be Enterprising Soul with mr-amateur.co.cc 3


(Gambar 1.5)
1.6. Setting My Sql

Pada saat anda menjalankan mysql pertama kali anda mendapatkan


hak akses penuh untuk menjalankannya. Sekarang kita akan mencoba
membuat passwor d bagi server mysql kita. Sebelum nya anda cari dulu
file winmysqladmin.exe biasanya ada di.
c:\apache\ mysql\bin\winmysqladmin.exe.

Setelah itu coba masukkan username dan password.


contoh username : gratcy dan password : palma dan sekarang anda
liat di icon sebelah kanan monitor anda tampak seper ti lampu merah,
kemudian klik kanan -> Show me

(Gambar 1.6)

4 Be Enterprising Soul with mr-amateur.co.cc


1.7. Test MySql Console/ DOS

Untuk mencoba mysql anda har us membuka file mysql terlebih dahulu
biasanya ada di

"C:\>\apache\ mysql\bin\ mysql.exe ".


 mysql> SELECT VERSION();
Untuk melihat versi MySql

 mysql> SELECT NOW();


Untuk menampilkan waktu pada MySql

 mysql> S HOW DATABASE();


Untuk menampilkan database yang ada pada MySql

Be Enterprising Soul with mr-amateur.co.cc 5


2 Pengenalan
PHP

PHP merupakan salah satu pemrograman website tingkat tinggi.


Kemampuannya setara dengan ASP, J2EE, Web Broker dll. PHP
merupakan pemrograman website gratis (Tanpa Lisensi) yang dapat
dipakai siapa saja. Tidak seperti ASP dll. Untuk dapat menggunakan
ASP yang resmi anda har us membayar Lisensinya pada pihak
Windows terlebih dahulu. Disini saya akan mengajarkan teknik
pemrograman PHP. Syarat untuk menjadi programer PHP salah
satunya anda dituntut dipengadilan (waduh!!!) . Ops maksud saya
dituntut harus bisa menguasai/Familiar dengan HTML. tentunya secara
manual lho.. hhe kalo tidak Pengadilan Inter nasional akan menuntut
anda 5 Miliyar. Hayo!!! bercanda dikit, supaya gak bete. yang
terpenting anda bisa menguasai dasar-dasar HTML..

2.1. Struktur Penempatan Scr ipt PHP

Contoh penempatan Scr ipt PHP :

<?php>
<disin i Script PHP>
<?>

Ikuti langkah-langkah berikut..

2.2. Scr ipt PHP

Buka program notepad atau program Text Editor lainnya. lalu ketik
Script dibawah ini.

<html>
<head>
<title>coba-coba</title>
</head>

6 Be Enterprising Soul with mr-amateur.co.cc


<body>
<h1>Hai Saya dari Script PHP</h1>
<?php
echo "Saya lagi belajar PHP";
?>
</body>
</html>

Simpan di C:\apache\htdocs\php.php lalu buka pada Web


Browser. Ketik http://localhost/php.php

(Gambar 2.2)

2.3. Scr ipt HTML

Buka program notepad atau program Text Editor lainnya. Lalu ketik
Script HT ML dibawah ini.

<html>
<head>
<title>coba-coba</title>
</head>
<body>
<h1>Hai Saya dari Script PHP</h1>
<p>Hai saya dari Script PHP</p>
</body>
</html>

Be Enterprising Soul with mr-amateur.co.cc 7


Simpan di C:\apache\htdocs\ht ml.php lalu buka pada Web
Browser. ketik http://localhost/ht ml.ht ml
Sekarang lihat perbedaannya...

Memang sekilas tampak sama hasilnya, tetapi coba lihat perbedaan


pada scriptnya.

8 Be Enterprising Soul with mr-amateur.co.cc


3 Program
Sederhana

Script PHP

Setiap program PHP disebut Script. Script berupa file text, yang dapat
dibuat dengan menggunakan program text editor. Contoh : Notepad.
Script PHP diawali dengan tag <? dan diakhiri dengan ?>. lebih
jelasnya lihat pada bagian tag awal dan tag akhir pada latihan ini.

Setiap baris perintah atau statement harus di akhiri menggunakan


tanda titik koma (;). Umumnya setiap statement dituliskan pada satu
baris.

3.1. Embedded Scr ipt

Script PHP disisipkan diantara tag-tag HTML.

<html>
<head>
<title>coba-coba</title>
</head>
<body>
<?php echo "Hai saya Caboel";
echo “<br>”;
echo "Saya sedang belajar PHP"; ?>
</body>
</html>

Simpan di C:\apache\htdocs\coba3_1.php lalu buka pada


Web Browser. ketik http://localhost/coba3_1.php

Be Enterprising Soul with mr-amateur.co.cc 9


(Gambar 3.1)

3.2. Non Embedded Scr ipt

Adalah pembuatan program dengan PHP, tag HT ML yang dihasilkan


merupakan bagian dari script PHP.

<?php
echo "<html>";
echo "<head>";
echo "<title>"; echo "coba2"; echo "</title>";
echo "</head>";
echo "<body>";
echo " <p> <b>SELAMAT DATANG PROGRAMER MUDA </b> </p>";
echo "</body>";
echo "</html>";
?>

Simpan di C:\apache\htdocs\coba3_2.php lalu buka pada


Web Browser. ketik http://localhost/coba3_2.php

10 Be Enterprising Soul with mr-amateur.co.cc


(Gambar 3.2)

3.3. Tag Awal dan Tag Akhir

Dalam Script PHP ada awal dan ada akhir. Dibawah ini akan
menunjukan 4 cara penggunaan tag PHP didalam dokumen HTML.

Cara I :
<? echo (“Script PHP”); ?>

Cara II :
<?php echo (“Script PHP”); ?>

Cara III :
<% echo (“Script PHP”); %>

Cara IV :
<%=$namaVariable; %>

Cara III dan IV menggunakan gaya Active Server Page (ASP),


cara III dan IV di akomodasi pemrograman ASP yang terbiasa
menggunakan < % dan %>.

<html>
<head>
<title>coba3</title>

Be Enterprising Soul with mr-amateur.co.cc 11


</head>
<body>
<?echo "Hai saya dari Script PHP dengan cara I"; ?>
<?php echo"Hai saya dari Script PHP dengan cara II"; ?>
<% echo"Hai saya dari Script PHP dengan cara III";
$str="Hai saya dari Script PHP dengan cara IV"; ?>
<br>
<% =$str; %>
</body>
</html>

Kemudian simpan dengan nama coba3_3.php

(Gambar 3.3)

3.4. Tag Scr ipt

Penggunaan pasangan tag <script> dan </script> juga masih dapat


digunakan untuk menyisipkan script PHP.

Berikut ini cara penggunaan tag <script> dan </script>

<script language="php">
Disini Scriptnya !
</script>

12 Be Enterprising Soul with mr-amateur.co.cc


Berikut ini contoh script PHP yang dimasukkan kedalam Tag script.

<html>
<head>
<title>coba4</title>
</head>
<body>
<script language="php">
echo"Penggunaan Script PHP";
echo"Juga bisa digunakan";
</script>
</body>
</html>

Kemudian simpan dengan nama coba3_4.php

(Gambar 3.4)
3.5. Case Sensitive

Script PHP menerapkan aturan Case Sensitivenya. Misalkan perbedaan


antara hur uf besar dan hur uf kecil. Setiap penulisan didalam Script
harus mengikuti penulisannya yang ditentukan. Case Sensitive
biasanya dikenakan untuk nama-nama variable.

<html>
<head>
<title>coba5</title>
</head>

Be Enterprising Soul with mr-amateur.co.cc 13


<body>
<?php
$a=10;
print "Isi Variab le \$a =$a" ;
print "<br>";
print "Isi Variab le \$a =$A" ;
?>
</body>
</html>

Kemudian simpan dengan nama coba3_5.php

(Gambar 3.5)

14 Be Enterprising Soul with mr-amateur.co.cc


4 Variable dan
Tipe data

Variable tempat menyimpan data, didalam PHP diawali dengan


karakter $ diikuti dengan hur uf sebagai karakter pertama setelah $,
kemudian kombinasi karakter dengan angka. Tidak boleh ada spas i
dan tanda baca dalam penamaannya, kecuali karakter _ (garis
bawah/underscore).

Contoh nama variable yang benar :

$namauser
$password
$kota
$tempat_lahir

Contoh nama variable yang salah :

$nama user
$pass / word
$kota 2

4.1. Tipe Data

Tipe data Primitif yang dapat diolah oleh PHP

 Integer
 Floating Point
 String

Tipe Data Integer

5
-7
200

Be Enterprising Soul with mr-amateur.co.cc 15


012 -> octet
0xff -> hexadecimal

Tipe Data Float ing Point

2001.25
23e25

Tipe Data String

'Teks dengan apostrope' -> Tanda petik tunggal


"Teks dengan quote(petik)" -> Tanda petik ganda

\n line feed (LF or 0x0A in ASCII)


\r carriage return (CR or 0x0D in
ASCII)
\t hor izontal tab (HT or 0x09 in
ASCII)
\\ Backlash
\$ dollar sign
\" double-quote
\ [0-7], {1,3} sequence character
matching regular
in octal notation
\x [0-9A-Fa-f] {1-2} sequence
character matching regular
in hexadecimal notation

Tipe Data Objek

Tipe data ini merupakan tipe data baru, merupakan pengembangan


PHP untuk dapat mendukung pemrograman berorientasi objek.

<?php
class objek

16 Be Enterprising Soul with mr-amateur.co.cc


{
function counter ()
{
return 5;
}
function do_pesan () {
echo "cetak pesan.";
}
}
$test = new objek;
$test -> do pesan() ;
echo "<br>";
echo "$test -> counter ();
?>

Tipe ini ditunjukan khusus dalam pemrograman berorientasi


objek

Tipe Data Array

Merupakan tipe data yang menyangkut 2 hal, yaitu tipe data dan
variable khusus.

Nilai Boolean

Merupakan nilai yang menentukan benar atau salah.

Contoh :

<html>
<head>
<title>Tipe data </title>
</head>
<body>
<h1>Control Variable Boolean</h1>
<pre>
$a=true;
$b=false;
</pre>
Hasil Eksekusi dengan PHP !
<?
$a=true;
$b=false;

Be Enterprising Soul with mr-amateur.co.cc 17


echo "\$a = $=a"."<br";
echo"\$b=$b"."<br>";
?>
</body>
</html>

Kemudian simpan dengan nama coba4_1.php

(Gambar 4.1)

Menampilkan Data

Untuk menampilkan data kedalam standar output dapat menggunakan


perintah print atau echo.

print

sintaks:

print(data);

atau

print data;

Data yang dimaksud ini termasuk data numeric, string ataupun objek.

Kedua sintaks tersebut mempunyai fungsi yang sama, hanya cara


menggunakan kurung atau tidak..

18 Be Enterprising Soul with mr-amateur.co.cc


echo

sintaks:

echo(data);

echo data;

Data yang dicetak dapat berupa string atau numerik. Jika string harus
dikutip menggunakan tanda kutip.

4.2. Var iabel Var iabel atau Var iabel Dinamik

Variabel variabel bukan variable-variabel, juga bukan kata


pengulangan dari kata variable, tetapi merupakan variable yang nama
berupa isi variable. Variable ini sering disebut Variable Dinamik.

<html>
<body>
<h1>Contoh Variabel Variabel</h1>
<pre>
$a=7;
$b="a";
$c=$$b; </pre>
Hasil eksekusi dengan PHP
<br>
<?
$a=7;
$b="a";
$c=$$b;
echo "\$a = $a"."<br>";
echo "\$b = $b"."<br>";
echo "\$c = $c"."<br>";
?>
</body>
</html>

Kemudian simpan dengan nama coba4_2.php

Be Enterprising Soul with mr-amateur.co.cc 19


(Gambar 4.2)

4.3. Operator

Adalah alat yang di gunakan untuk memanipulasi data. Dibedakan


menjadi :

 Operator Aritmatika
 Operator String
 Operator Increment/Decrement
 Operator Logika
 Operator Ternar y
 Operator Perbandingan
 Operator Assignment
 Operator Kontrol Error
 Operator Eksekusi

4.4. Cast ing

Casting merupakan proses untuk membuat suatu variable memiliki


tipe data yang disimpannya sesuai dengan tipe data.

<html>
<body>
<h1>Contoh Casting untuk Variabel</h1>
<pre>
$a="123abc";

20 Be Enterprising Soul with mr-amateur.co.cc


$b=(int) "123abc";
</pre>
Hasil eksekusi dengan PHP<br>
<?
$a="123abc";
$b=(int) "123abc";
echo "\$a = $a"."<br>";
echo "\$b = $b"."<br>";
?>
</body>
</html>
Kemudian simpan dengan nama coba4_ 4.php

(Gambar 4.4)

Be Enterprising Soul with mr-amateur.co.cc 21


5 Modularisasi

Modularisasi dalam pemrograman umum dilakukan dan sangat


diperlukan untuk mempermudah debugging dan pengembangan
program. Modularisasi berarti melakukan pembuatan program
berdasarkan modul-modul.

5.1. require()

require() adalah suatu bentuk konstruksi yang digunakan untuk


menggabungkan suatu script PHP atau text dari file lainnya, dengan
script PHP yang memanggilnya.

Contoh :

Diinginkan tampilan pada halaman web yang kita bangun akan


mempunyai konsistensi pada layout, bahwa ada header dan ada
footer, pada bagian tengah adalah isi.

<html>
<body>
<h1>Demo require</h1>
<hr>
require adalah <br>

Kemudian simpan dengan nama header.php

<p>&nbsp;</p>
<hr>
<small>&copy; 2009 CaboelzZz.Inc </small>
</body>
</html>

Kemudian simpan dengan nama footer.php

22 Be Enterprising Soul with mr-amateur.co.cc


<? Require (“header.php”); ?>
<p>Bentuk konstruksi yang digunakan untuk menggabungkan suatu script
PHP atau text dari file lainnya, dengan script PHP yang memanggilnya.
<p>require memudahkan saya dalam membagun website
<? Require (“header.php”); ?>

Kemudian simpan dengan nama require.php

(Gambar 5.1)

5.2. include()

Berbeda dengan require() maka include merupakan konstr uksi yang


digunakan untuk menggabungkan suatu script atau file dengan script
pemanggilnya.

<?
Include “header.php”;
Include “require.php”;
Include “footer.php”;
?>

Hasil pada dasarnya sama seper ti fungsi require()…

Be Enterprising Soul with mr-amateur.co.cc 23


6 Array

Array adalah Variable Jamak, variable yang diacu dengan satu nama
yang sama dan juga Setiap variable diacu menggunakan nomor
elemen.

Jenis Array dalam PHP

1. Array berindeks
2. Array asosiatif

6.1. Array Berindeks

Adalah Array yang setiap elemennya menggunakan nomor elemen.

Contoh Programnya:

<html>
<body>
<h1> Demo Array Berindeks </h1>
Diisi dengan menunjukan nomor indeksnya
<hr>
<?
$anak[0]="Gratcy";
$anak[1]="Palma";
$anak[2]="Caboel";
echo "Isi Array \anak[0] adalah[0] ";
echo"<br>";
echo "Isi Array \anak[1] adalah[1] ";
echo"<br>";
echo "Isi Array \anak[2] adalah[2] ";
echo"<br>";
?>
<hr>
Diisi tanpa Nomor indeksnya
<br>

24 Be Enterprising Soul with mr-amateur.co.cc


<?
$anak[ ]="Gratcy";
$anak[ ]="Palma";
$anak[ ]="Caboel";
echo "Isi Array \anak[0] adalah[0] ";
echo"<br>";
echo "Isi Array \anak[1] adalah[1] ";
echo"<br>";
echo "Isi Array \anak[2] adalah[2] ";
echo"<br>";
?>
</body>
</html>

Simpan di C:\apache\htdocs\coba6_1.php lalu buka pada


Web Browser. ketik http://localhost/coba6_1.php

(Gambar 6.1)

6.2. Array Asosiatif

Adalah Array yang setiap elemennya tidak menggunakan nomor


elemen, melainkan menggunakan String.

<html>
<body>
<h1> Demo Array Asosiatif - No Telepon </h1>
Menunjukan Array Asosiatif
<hr>
<?

Be Enterprising Soul with mr-amateur.co.cc 25


$telepon["Gratcy"]="08561135514";
$telepon["Palma"]="02199753514";
$telepon["Caboel"]="0267400094";
echo "Telepon Gratcy :" . $telepon['Gratcy'];
echo "<br>";
echo "Telepon Palma :" . $telepon['Palma'];
echo "<br>";
echo "Telepon Caboel :" . $telepon['Caboel'];
?>
</body>
</html>

Simpan di C:\apache\htdocs\coba6_2.php lalu buka pada


Web Browser. ketik http://localhost/coba6_2.php

(Gambar 6.2)

6.3. Array Union

Menggabungkan dua Array dengan operasi himpunan.

<html>
<body>
<h1> Array : Union </h1>
<?
$ar_a=array(1,2,5,7,8);
print "isi array \$ar_a <br>";
print_r($ar_a);

26 Be Enterprising Soul with mr-amateur.co.cc


print"<br>";
$ar_b=array("abc",5,7,90);
print"Isi Array \$ar_b <br>";
print"Isi Array \$gabung<br>";
print_r($gabung);
print"<br>";
?>
</body>
</html>

Simpan di C:\apache\htdocs\coba6_3.php lalu buka pada


Web Browser. ketik http://localhost/coba6_3.php

(Gambar 6.3)

6.4. Array Intersect

Ir isan

Irisan dari dua buah himpunan digunakan untuk mengetahui isi yang
sama dari dua buah himpunan.

Fungsi untuk melakukan dua himpunan dalam PHP adalah


array_Intersect().

Be Enterprising Soul with mr-amateur.co.cc 27


<html>
<body>
<h1> Array : Intersect </h1>
<?
$ar_a=array(1,2,5,7,8);
print ("isi array \$ar_a <br>");
print_r($ar_a);
print ("<br>");
$ar_b=array("abc",5,7,90);
print ("Isi Array \$ar_b <br>");
print_r ($ar_b);
print ("<br>");
$irisan=array_intersect($ar_a, $ar_b);
print_r ("Isi Array \$irisan <br>");
print_r ($irisan);
print ("<br>");
?>
</body>
</html>

Simpan di C:\apache\htdocs\coba6_4.php lalu buka pada


Web Browser. ketik http://localhost/coba6_4.php

(Gambar 6.4)

28 Be Enterprising Soul with mr-amateur.co.cc


6.5. Array Diff

Fungsi untuk melakukan operasi selisih adalah menggunakan


array_diff().

<html>
<body>
<h1> Array : Diff </h1>
<?
$ar_a=array(1,2,5,7,8);
print ("isi array \$ar_a <br>");
print_r($ar_a);
print ("<br>");
$ar_b=array("abc",5,7,90);
print ("Isi Array \$ar_b <br>");
print_r ($ar_b);
print ("<br>");
$diff=array_diff($ar_a, $ar_b);
print_r ("Isi Array \$diff <br>");
print_r ($diff);
print ("<br>");
?>
</body>
</html>
Simpan di C:\apache\htdocs\coba6_5.php lalu buka pada
Web Browser. ketik http://localhost/coba6_5.php

(Gambar 6.5)

Be Enterprising Soul with mr-amateur.co.cc 29


6.6. Array Unique

Fungsi array_unique() dapat digunakan untuk menghilangkan


duplikasi data.

<html>
<body>
<h1> Array : Unique </h1>
<?
$ar_a=array(1,2,5,7,8);
print ("isi array \$ar_a <br>");
print_r($ar_a);
print ("<br>");
$ar_b=array("abc",5,7,90);
print ("Isi Array \$ar_b <br>");
$gabung=array_merge($ar_a, $ar_b);
print ("Isi Array \$gabung<br>");
print_r($gabung);
print ("<br>");
$unique=array_unique($gabung);
print ("Isi Array \$unique<br>");
print_r($unique);
print ("<br>");
?>
</body>
</html>
Simpan di C:\apache\htdocs\coba6_6.php lalu buka pada
Web Browser. ketik http://localhost/coba6_6.php

(Gambar 6.6)

30 Be Enterprising Soul with mr-amateur.co.cc


7 Struktur
Kontrol

Perintah-perintah script PHP dijalankan pada baris per tama kemudian


kebaris berikutnya sampai dengan baris terakhir. Seperti yang
dijelaskan pada latihan Sebelumnya itu, menunjukkan struktur kontrol
yang paling dasar yaitu struktur kontrol Ur utan (Sequence).

Secara mendasar str uktur program dapat memiliki kombinasi struktur


kontrol :

Urutan (Sequence)
Pemilihan (Section)
Pengulangan (Interaction)

7.1. Struktur if

Struktur if mer upakan struktur kontrol pemilihan yang digunakan


untuk pemeriksaan. Apakah perintah-perintah didalam blok dikerjakan
atau tidak. Perintah dalam blok if akan di kerjakan jika nilai-nilai dari
ekspresi didalam if bernilai benar (true).

Contoh struktur if :

<html>
<body>
<h1>if</h1>
<p> Contoh Srtuktur Kontrol if </p>
<br> $a = 5;
<br> $b= 7;
<hr>
<?
$a = 5;
$b = 7;
echo "\$a = $a <br>";
echo "\$b = $b <br>";

Be Enterprising Soul with mr-amateur.co.cc 31


if ($a>$b){
echo "\$a > \$b";
}
if ($a<$b){
echo "\$a < \$b";
}
if ($b==$a){
echo "\$b = \$a";
}
?>
</body>
</html>

(Gambar 7.1)

Simpan di C:\apache\htdocs\coba7_1.php

7.2. Struktur else

Digunakan untuk memberikan alternative urutan perintah apabila ada


proses yang memberikan dua alter native benar atau salah. else
merupakan bagian seur utan perintah yang harus dikerjakan apabila
hasil evaluasi dari ekspresi pada if bernilai salah.

<html>
<body>
<h1>if</h1>
<p> Contoh Srtuktur Kontrol if dan else</p>
<br> $a = 5;
<br> $b = 7;

32 Be Enterprising Soul with mr-amateur.co.cc


<br> Hitung selisih
<br> $a = 7;
<br> $b = 5;
<br> Hitung selisih
<hr>
<? $a=5;
$b=7;
echo "\$a = $a <br>";
echo"\$b = $b <br>";
if ($a>$b)
{
$selisih=$b-$a;
echo "Selisih \$a > \$b adalah $selisih "." <br>";
} if ($a<$b)
{
$selisih=$b-$a;
echo "\$b < \$a adalah $selisih"."<br>";
}
if ($b==$a)
{
echo "\$b = \$a"."<br>";
} $a=5;
$b=7;
echo "\$a = $a <br>";
echo"\$b = $b <br>";
if ($a>$b){
$selisih=$a-$b;
echo "Selisih \$a > \$b adalah $selisih "." <br>";
}
if ($a<$b)
{
$selisih=$b-$a;
echo "\$a < \$b adalah $selisih "." <br>";
}
if ($b==$a)
{
echo "\$b = \$a"."<br>";
}
?>
</body>
</html>

Simpan di C:\apache\htdocs\coba7_2.php

Be Enterprising Soul with mr-amateur.co.cc 33


(Gambar 7.2)

7.3. Struktur else if

Nilai suatu ekspresi bisa jadi bukan dua nilai benar atau salah, tetapi
bisa banyak nilai. Struktur if...elseif menyederhanakan model struktur
kontrol if...else.

<html>
<body>
<h1> Demo elseif </h1>
<?
$bil=28;
if ($bil>0)
{
echo $bil." Adalah positif";
}
else if ($bil<0)
{
echo $bil." Adalah negatif";
}
Else
{
echo $bil." Adalah nol";
}
?>
</body>
</html>

Kemudian simpan dengan nama coba7_3.php

34 Be Enterprising Soul with mr-amateur.co.cc


(Gambar 7.3)

7.4. Struktur break

Merupakan perintah yang digunakan untuk keluar pada suatu blok.


Jika tidak diberikan break pada case maka akan dianggap benar dan
dieksekusi.

<html>
<body>
<h1> Demo swit ch</h1>
<?
$nohari=2;
echo "No. hari : $nohari adalah hari :";
switch ($nohari)
{
case 1:
echo "minggu";
break;
case 2:
echo "senin";
break;
case 3:
echo "selasa";
break;
case 4:
echo "rabu";
break;
case 5:

Be Enterprising Soul with mr-amateur.co.cc 35


echo "kamis";
break;
case 6:
echo "jumat";
break;
case 7:
echo "sabtu";
break;
}
?>
</body>
</html>

Kemudian simpan dengan nama coba7_4.php

(Gambar 7.4)

7.5. Struktur switch

Merupakan bentuk struktur kontrol yang lebih sederhana dari pada


if...else. Ataupun bentuk elseif. Kontr ol switch digunakan untuk
mengevaluasi suatu ekspresi dengan kemungkinan banyak nilai dan
banyak perintah yang harus dieksekusi berdasarkan ekspresi dan
nilainya.

<html>
<body>
<h1> Demo swit ch</h1>

36 Be Enterprising Soul with mr-amateur.co.cc


<?
$nohari=2;
echo "No. hari : $nohari adalah hari :";
switch ($nohari){
case 1:
echo "minggu";
case 2:
echo "senin";
case 3:
echo "selasa";
case 4:
echo "rabu";
case 5:
echo "kamis";
case 6:
echo "jumat";
case 7:
echo "sabtu";
}
?>
</body>
</html>

Kemudian simpan dengan nama coba7_5.php

(Gambar 7.5)

Be Enterprising Soul with mr-amateur.co.cc 37


7.6. Struktur while

Merupakan bentuk per ulangan. Str uktur kontrol ini merupakan


seurutan perintah yang dieksekusi berulang-ulang. Jumlah perulangan
yang harus dilakukan, harus ditentukan oleh suatu nilai ekspresi.

<html>
<body>
<h1> Demo while</h1>
<?
$bil =3;
while ($bil<10) {
echo "$bil";
echo " ";
$bil=$bil+3;
}
?>
</body>
</html>

Kemudian simpan dengan nama coba7_6.php

(Gambar 7.6)

7.7. Struktur do while

Membuat satu blok perintah didalamnya untuk diulang-ulang perintah


eksekusi perintahnya. Perbedaan dengan do...while pemeriksaan

38 Be Enterprising Soul with mr-amateur.co.cc


ekspresi dilakukan pada bagian akhir dari blok perulangan. Perintah
dalam blok akan dikerjakan selama kondisinya masih benar.

<html>
<body>
<h1> Demo do while</h1>
<?
$bil =3;
do {
echo "$bil";
echo " ";
$bil=$bil+3;
} while ($bil<10)
?>
</body>
</html>

Kemudian simpan dengan nama coba7_7.php

(Gambar 7.7)

7.8. Struktur for

Merupakan struktur kontr ol per ulangan dengan jumlah perulangan


dapat ditentukan beberapa kali. Harus dilakukan perulangan dengan
menggunakan bilangan sebagai penghitung.

<html>
<body>
<?php
function pegawai_caboelz()

Be Enterprising Soul with mr-amateur.co.cc 39


{
$argumen = func_get_args();
return $argumen;
}
$nama_pegawai = pegawai_caboelz("Yayat", "Amien", "Dwi", "Anggah");
?>
Berikut ini adalah nama-nama Pegawai CaboelzZz.Inc:
<ul>
<?php
for ($i=0; $i < sizeof($nama_pegawai); $i++)
{
echo "<li>" . $nama_pegawai[$i] . "\n";
}
?>
</ul>
</body>
</html>

Kemudian simpan dengan nama coba7_8.php

(Gambar 7.8)

7.9. foreach

Merupakan struktur kontrol khusus yang digunakan untuk melakukan


pengulangan pada array. Dengan cara ini kita tidak perlu mengetahui
berapa jumlah array untuk mengetahui berapa kali harus melakukan
pengulangan.

40 Be Enterprising Soul with mr-amateur.co.cc


<html>
<body>
<h1> Demo for... </h1>
<? $nama[0]="Asep";
$nama[1]="Rudi";
$nama[2]="Aziz";
foreach($nama as $value)
{
echo "Nama Pegawai CaboelzZz.Inc $value";
echo "<br>";
}
?>
</body>
</html>

Kemudian simpan dengan nama coba7_9.php

(Gambar 7.9)

Be Enterprising Soul with mr-amateur.co.cc 41


8 Fungsi

Merupakan serangkaian kode/script yang mempunyai kegunaan


khusus dan tertentu. Merupakan seurutan dan serangkaian kode yang
sering dipakai. Dengan adanya fungsi pemogram diper mudah karena
tidak harus menuliskan rangkaian kode/script berulang-ulang. Begitu
juga dalam pengembang script, apabila terjadi kesalahan atau
perbaikan pemogram hanya melakukan per baikan pada satu tempat,
tidak perlu melakukan perubahan-perubahan pada banyak script.

Fungsi dibedakan menjadi :

 Built-in
 User Defined Function
 External

8.1. Built-in

Adalah fungsi yang disediakan langsung oleh PHP, pemogram dapat


langsung memakainya. Misalnya mencari akar kuadrat. Pemogram
tidak harus membuat program/script yang khusus menghitung akar
kuadrat.

 Fungsi untuk array


 Fungsi untuk matematika
 Fungsi untuk string dan pemrosesan teks
 Fungsi tunggal
 Fungsi pemeriksa tipe data
 Fungsi database
 Fungsi Web dan XML
 Fungsi untuk file
 Fungsi CVS
 Fungsi untuk jaringan
 Fungsi lain-lain

42 Be Enterprising Soul with mr-amateur.co.cc


<html>
<body>
<h1> Contoh Pemakaian Fungsi chr untuk membuat Index</h1>
<?
for($i=0; $i<26; $i++){
echo chr(65+$i);
if ($i<25) echo " | " ;
}
?>
</body>
</html>

Kemudian simpan dengan nama coba8_1.php

(Gambar 8.1)

8.2. UDF (User Define Function)

Adalah fungsi yang dibuat oleh pemr ogram karena tidak ada fungsi
Built-in yang tersedia untuk menyelesaikan kebutuhan pemrogram.

<html>
<body>
<h1> Demo UDF : fungsi selisih ()</h1>
<?
function selisih ($a, $b) {
if ($a>$b) $hasil=$a-$b;
else $hasil=$a-$b;
return $hasil;

Be Enterprising Soul with mr-amateur.co.cc 43


}
$bil1=10;
$bil2=30;
$hasil=&selisih($bil1,$bil2);
print "Selisih antara \$bil1=$bil1 dan \$bil2=$bil2 adalah $hasil";
?>
</body>
</html>

(Gambar 8.2)

Kemudian simpan dengan nama coba8_2.php

8.3. Funct ion External

Merupakan daftar fungsi yang belum diaktifkan (di-link) dalam


keseluruhan modul PHP, fungsinya diletakan dalam library atau file
yang terpisah dari modul PHP. Fungsi exter nal ini dapat diaktifkan
secara otomatis dengan meregristrasikan pada file PHP.INI.

<html>
<body>
<h1> Contoh fungsi ekternal untuk akses File dBase</h1>
<?php
dl("../extensions/php_dbase.dll");
$records=dbase_open("animals.dbf",0);
if($records){
echo "Database Connected"."<br>";

44 Be Enterprising Soul with mr-amateur.co.cc


$rc=dbase_numrecords($records);
echo "Jumlah Record".$rc;
}
else {
echo "Database not Connected";
}
?>
</body>
</html>

Kemudian simpan dengan nama coba8_3.php

8.4. Funct ion dan Procedure

Fungsi dalam PHP bisa berupa Function atau Procedure. Secara umum
pemanggilan fungsi (Function) selalu dilibatkan dengan sebuah
variable untuk menampungnya.

Contoh pemanggilan Procedure :

<html>
<head>
<?
Function garis()
{
echo “<hr>”;
}
?>
</head>
<body>
<h1> Pemaggilan Fungsi Procedure </h1>
<? garis (); ?>
Hasil eksekusi dengan PHP : <br>
<? garis (); ?>
</body>
</html>

Kemudian simpan dengan nama coba8_ 4.php

Be Enterprising Soul with mr-amateur.co.cc 45


(Gambar 8.4)

46 Be Enterprising Soul with mr-amateur.co.cc


9 Pembuatan
Buku Tamu

Buku Tamu atau biasa disebut Guestbook merupakan aplikasi yang


umum dalam suatu situs web, disediakan untuk mendapatkan
masukan dari pengunj ung atau sekedar ingin mencatat identitas
pengunjung.

9.1. Membuat Buku Tamu

<html>
<body>
<h1> Membuat Buku Tamu</h1>
<p> Komentar dan Saran anda sangat kami butuhkan untuk meningkatkan
kualitas situs kami </p>
<hr>
<?php
$nama_file = "bukutamu.txt";
if ($simpan) {
$kodefile = fopen($nama_file,"a");
fputs($kodefile, date("r",time())."<br>");
if (trim($nama)=="") { $nama = "Mr. X";
}
fputs($kodefile, "Nama : <b>$nama</b><br>");
if (trim($email)=="") { $email = "(tidak ada)";
}
fputs($kodefile, "e-mail : <b>$email</b><br>");
if (trim($komentar)=="") { $komentar = "(tidak ada)";
}
fputs($kodefile, "Komentar : <b>$komentar</b><br>");
fputs($kodefile, ".<br>");
fclose($kodefile);
}
?>
<form action="<?php echo $PHP_SELF; ?>" method="POST">
Nama Kamu:<br>
<input type="text" name="nama" size="20"><br><br>

Be Enterprising Soul with mr-amateur.co.cc 47


E-mail Kamu:<br>
<input type="text" name="email" size="20">
<br>
<br>
Masukkan komentar dan pertanyaan kamu<br>
<textarea name="komentar" cols="50" rows="6"></textarea>
<input name="simpan" type="submit" value="Simpan">
</form>
<?php
if (file_exists($nama_file)) {
echo "<b>List Forum</b><p>";
readfile($nama_file);
}
else {
echo "";
}
?>
</body>
</html>

Kemudian simpan dengan nama coba9_1.php

Hasil data yang dimasukkan dalam for m guestbook akan


disimpan secara otomat is dengan nama bukutamu.t xt di
folder root.

(Gambar 9.1)

48 Be Enterprising Soul with mr-amateur.co.cc


10 PHP buat
Chart

Library fungsi PHP dilengkapi dengan fasilitas untuk membuat


grafik/image secara on the fly. Format gambar yang didukung PHP
adalah, gif, jpeg, dan png. Mulai pada PHP versi 4 maka format gif
tidak didukung lagi karena masalah lisensi. Setiap situs web yang
menggunakan gambar dengan format gif diharuskan membayar royalti
5 sen $ kepada penciptanya, karena hal itu maka pengembang PHP
tidak lagi menggunakannya. Akan tetapi masih ada pihak ketiga yang
menyediakan librari fungsi yang dapat memungkinkan kita dalam
menghasilkan file dengan format gif. Dengan cara melakukan sebuah
Pembuatan grafik / chart.

10.1. Membuat Kanvas

$varImage= ImageCreate($lebar, $t inggi);

$var Image : Adalah variable yang akan dihasilkan untuk menggambar


kanvas

$lebar : Adalah variable yang menyimpan ukuran dalam lebar dan


gambar yang akan dibuat dalam point

$tinggi : Adalah variable yang menyimpan ukuran dalam tinggi


gambar yang dinyatakan dalam point

Sistem Koordinat

Pada saat kita melakukan penggambaran pada kanvas maka perlu


dipahami tentang sistem koordinat yang digunakan. Sistem koordinat
yang digunakan adalah sistem koor dinat kartesius, dengan posisi 0,0
sebagai x,y awal ditempatkan pada posisi pojok kiri atas.

Be Enterprising Soul with mr-amateur.co.cc 49


Definisi War na

$war na= ImageColorAlocate($var Image,$R, $G, $B);

$warna : Adalah nilai dari warna yang akan dihasilkan pada kanvas
$var Image berdasarkan kombinasi nilai RGB (Red, Green, Blue)

$varImageAdalah tempat kanvas untuk menggambar

$R : Adalah konstanta nilai merah


$G : Adalah konstanta nilai hijau
$B : Adalah konstanta nilai biru

Menggambar Bentuk Garis pada Kanvas

$imageLine($var Image, $L, $T, $B, $R, $warna);

$L : Adalah koordinat pojok kiri


$T : Adalah koordinat pojok atas
$B : Adalah koor dinat pojok kanan
$R : Adalah koordinat pojok bawah

Mengisi War na pada Kanvas

ImageFill($var Image, $x, $y, $warna);

$x : Koordinat x temasuk daerah yang akan diwar nai


$y : Koordinat y temasuk daerah yang akan diwar nai

Menulis Text pada Kanvas

$ImageStr ing($var Image, noFont, $x, $y, $text, $warna);

$noFont : Adalah nomor font yang akan digunakan untuk menuliskan

$text a : Adalah tulisan yang dituliskan pada kanvas

50 Be Enterprising Soul with mr-amateur.co.cc


Mengeluar kan Hasil

Header("Content-type: Image/png");
ImageP NG($var Image);

Header() : Merupakan fungsi yang digunakan untuk mendefinisikan


tipe dari output yang dikirimkan pada browser

ImagePNG() : Mer upakan fungsi untuk mengeluarkan hasil gambar


dalam format gambar PNG

Membersihkan Resource setelah Menggambar

ImageDestroy() fungsi untuk menghapus variable kanvas yang telah


digunakan

ImageDestroy($varImage);

Mengaktifkan Librar i GD

Pada Windows librari GD belum termasuk pada internal PHP, karena


diaktifkan terlebih dahulu dengan menggunakan dl() - dynamic load.
Librari untuk fungsi PHP ini bernama php_gd.dll ada pada direktori
ekstensi dibawah direktori file PHP agar dibaca server.

Jika anda mengunakan Linux umumnya librari GD sudah ada dala m


paket PHP sehingga tidak perlu lagi memberikan perintah
menggunakan sintaks seperti dl("extentions/php_gd.dll").

10.2. Contoh Kanvas I

<?php
dl("../extensions/php_gd.dll");
Header( "Content -type: image/png");
$image = imagecreate(200,200);
$maroon = ImageColorAllocate($image, 225, 0, 225);
ImageFilledRectangle ($image, 0, 0, 200, 200, $maroon);
ImagePNG ($image);

Be Enterprising Soul with mr-amateur.co.cc 51


ImageDestroy ($image);
?>

Kemudian simpan dengan nama coba10_2.php

(Gambar 10.2)

10.3. Contoh Kanvas II

<?php
dl("../extensions/php_gd.dll");
Header( "Content -type: image/png");
$image = imagecreate(200,200);
$maroon = ImageColorAllocate($image, 225, 0, 225);
$white = ImageColorAllocate ($image, 225, 225, 225);
$green = ImageColorAllocate ($image, 0, 100, 0);
ImageFilledRectangle ($image, 0, 0, 200, 200, $maroon);
ImageRectangle ($image, 10, 10, 190, 190, $white);
ImageFilledRectangle ($image, 50, 70, 150, 150, $green);
ImageString($image, 3, 15, 15, 'png chart php' ,$green);
ImagePNG ($image);
ImageDestroy ($image);
?>

Kemudian simpan dengan nama coba10_3.php

52 Be Enterprising Soul with mr-amateur.co.cc


(Gambar 10.3)

Be Enterprising Soul with mr-amateur.co.cc 53


11 PHP buat
Email

Salah satu cara agar pengunjung dapat mengirim email untuk


memberitahukan rekannya tentang keberadaan website anda.

11.1. Membuat For m untuk kir im Email

<html>
<body>
<h1> Membuat Form untuk kirim Email</h1>
<hr>
<form action="coba11_1.2.php" method="POST">
Kepada :
<input type="text" name="kepada" size="20">
<br>
<br>
Subjek :
<input type="text" name="subjek" size="20">
<br>
<br>
Pesan :
<textarea name="pesan" cols="50" rows="6"></textarea>
<br>
<br>
Dari :
<input type="text" name="dari" size="20">
<br>
<br>
<input name="simpan" type="submit" value="Simpan">
<input name="reset" type="reset" value="Ulangi">
</form>
</body>
</html>

Kemudian simpan dengan nama coba11_1.php

54 Be Enterprising Soul with mr-amateur.co.cc


(Gambar 11.1)

11.1.2. for m Proses

<html>
<body>
<h1> Membuat Form untuk kirim Email</h1>
<hr>
Kepada : <?echo $kepada ;?><br>
Subjek : <?echo $subjek ;?><br>
Pesan : <?echo $pesan ;?><br>
Dari : <?echo $dari ;?><br>
<?php
ini_set("SMTP", "127.0.0.1");
ini_set("sendmailfrom", "$dari");
?>
telah dilakukan
</body>
</html>

Kemudian simpan dengan nama coba11_1.2.php

Be Enterprising Soul with mr-amateur.co.cc 55


(Gambar 11.1.2)

56 Be Enterprising Soul with mr-amateur.co.cc


12 Perbandingan
Bilangan

12.1. Pr ogram Membandingkan Bilangan

Buatlah dua page, masing-masing beri nama coba12_1.php dan


coba12_2.php

<html>
<body>
<h1> Perbandingan Bilangan </h1>
<form action="coba12_2.php" method="post">
Input Bilangan I = <input type="text" name="bil1">
<br>Input Bilangan II = <input type="text" name="bil2">
<br><input type="submit" value="bandingkan">
</form>
</body>
</html>

Kemudian simpan dengan nama coba12_1.php

(Gambar 12.1)

Be Enterprising Soul with mr-amateur.co.cc 57


12.2. Pr ogram Proses

Untuk memproses page sebelumnya coba12_1.php

<html>
<body>
<h1> Perbandingan Bilangan </h1>
<hr>
Bilangan I = <? echo $bil1 ?>
<br>
Bilangan II = <? echo $bil2 ?>
<br>
<?
if ($bil1 > $bil2) {
echo "$bil1 lebih besar dari $bil2";
}
else if ($bil1 < $bil2) {
echo "$bil2 lebih besar dari $bil1";
}
else {
echo "$bil1 sama dengan $bil2";
}
?>
</body>
</html>

Kemudian simpan dengan nama coba12_2.php

(Gambar 12.2)

58 Be Enterprising Soul with mr-amateur.co.cc


13 Upload File

Proses penyalinan file dari komputer lokal ke dalam server. Server file
pada umumnya menggunakan jenis software sever FTP.

13.1. PHP unt uk Upload File

<html>
<body>
<h1>PHP Untuk Upload</h1>
<p> Input Nama File untuk Upload</p>
<form enctype="multipart/form-data" "<?php echo $PHP_SELF;
?>" method="post" action="coba13_1.php">
<input type="hidden" name="MAX_FILE_SIZE" value="100000">
Nama File <br>
<input type="file" name="file1"
size="30">
<br>
<br>
<input name="Upload" type="submit" value="Upload">
</form>
<?
$namafile=$HTTP_POST_FILES['file1']['name'];
?>
<p> Nama file &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
: <?echo $namafile; ?> </p>
<?
$ukuran=$HTTP_POST_FILES['file1']['size'];
?>
<p> Ukuran File &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:
<?
echo $ukuran; ?> </p>
<?
$temp=$HTTP_POST_FILES['file1']['tmp_name'];
?>
<?
if ($file1 !="none")

Be Enterprising Soul with mr-amateur.co.cc 59


{
copy("$file1", "$namafile")
or die ("Nofiles!") ;
}
else
{
die ("");
}
?>
</body>
</html>

Kemudian simpan dengan nama coba13_1.php

(Gambar 13.1)

60 Be Enterprising Soul with mr-amateur.co.cc


14 Pembuatan
Cookies

Merupakan fasilitas seperti halnya sesion, cookies merupakan teknik


yang pertama kali yang dikenalkan oleh Netscape untuk membuat
adanya suatu koneksi antara pengunjung dengan ser ver.

14.1. Demo Cookies I

<?
setcookie("mycookies","Your cookies");
?>
<html>
<body>
<h1>Demo Cookies 1</h1>
<? echo "Cookies anda : $mycookies"; ?>
</body>
</html>

Kemudian simpan dengan nama coba14_1.php

(Gambar 14.1)

Be Enterprising Soul with mr-amateur.co.cc 61


Nilai cookies tidak tampil pada saat pertama kali, klik tombol
refresh maka isi cookies akan ditampilkan.

14.2. Demo Cookies II

<?
header ("set -cookie:mycookies=kue;");
?>
<html>
<body>
<h1>Demo Cookies 2</h1>
<?
echo "Cookies anda : $mycookies";
?>
</body>
</html>

Kemudian simpan dengan nama coba14_2.php

(Gambar 14.2)

Nilai cookies tidak tampil pada saat pertama kali, klik tombol
refresh maka isi cookies akan ditampilkan.

62 Be Enterprising Soul with mr-amateur.co.cc


14.3. Demo Cookies III (Cookies Out)

<?
setcookie ("mycookies",”kue”);
?>
<html>
<body>
<h1>Demo Cookies 3 (Cookies Out)</h1>
<?
echo "Cookies anda : $mycookies";
?>
</body>
</html>

Kemudian simpan dengan nama coba14_3.php

(Gambar 14.3)

Be Enterprising Soul with mr-amateur.co.cc 63


15 Pembuatan
Counter

Adalah sebuah fasilitas yang berfungsi untuk menghitung j umlah


pengunjung yang sedang atau telah mengunjungi Website anda.

15.1. Demo Cookies untuk Counter

<?
if (!isset($tamu))
{
$namafile="counter.txt";
if (!file_exists($namafile))
{
$fp=fopen($namafile,"w");
fwrite($fp,"0");
fclose($fp);
}
$fp=fopen($namafile,r);
$urut=fread($fp,5);
fclose($fp);
$urut++;
$fp=fopen($namafile,"w");
fwrite($fp,$urut);
fclose($fp);
setcookie("tamu",$urut);

if (!isset($OK))
{
header("Location: $PHP_SELF","?OK=1");
exit;
}
}
?>
<html>
<body>
<h1>Demo Cookies untuk Counter</h1>
<?

64 Be Enterprising Soul with mr-amateur.co.cc


echo "Anda pengunjung ke : $tamu";
echo "Script file : $PHP_SELF";
?>
</body>
</html>

Kemudian simpan dengan nama coba15_1.php

(Gambar 15.1)

Nilai cookies dan Counter tidak tampil pada saat pertama kali,
klik tombol refresh maka isi cookies dan Counter akan
ditampilkan.

15.2. Demo Session Reset Counter

<?
session_start();
$idsession=session_id;
$count++;
?>
<html>
<body>
<h1>Demo Session Reset Counter</h1>
<?
echo "<br> ID Session : ".$idsession;
echo "<br> Anda mengakses server ini sebanyak".$count;

Be Enterprising Soul with mr-amateur.co.cc 65


?>
</body>
</html>

Kemudian simpan dengan nama coba15_2.php

Nilai Counter tidak tampil pada saat pertama kali, klik tombol
refresh maka isi Counter akan ditampilkan.

(Gambar 15.2)

Catatan :

Script ini akan melakukan reset variable $count yang telah diset pada
script coba15_2.php. session_destroy() akan melakukan reset
terhadap semua variable yang diregistrasi oleh session_register().
Reset disini adalah menghilangkan catatan tentang variabel global
untuk session bersangkutan.

15.3. Demo Session

<?
session_star t();
session_register("count");
$count++;
?>
<html>
<body>

66 Be Enterprising Soul with mr-amateur.co.cc


<h1>Demo Session</h1>
<?
echo "<br > Anda mengakses halaman ini sebanyak $count kali";
?>
</body>
</html>
Kemudian simpan dengan nama coba15_3.php

(Gambar 15.3)

15.4. Demo Session ID

<?
session_start();
$idsession=session_id();
?>
<html>
<body>
<h1>Demo Session - Session ID</h1>
<?php
echo "<br> ID Session anda : ".$idsession;;
?>
</body>
</html>

Kemudian simpan dengan nama coba15_4.php

Be Enterprising Soul with mr-amateur.co.cc 67


(Gambar 15.4)

68 Be Enterprising Soul with mr-amateur.co.cc


16 PHP Login

Adalah bentuk sebuah gerbang yang digunakan untuk melakukan


validasi masuk kedalam sebuah sistem. Dengan menggunakan
program login maka sebuah sistem website akan lebih efisien.

16.1. Login

Sebelumnya anda harus membuat 2 web page terlebih dahulu.

 Page untuk Tampilan login


 Page untuk Proses Login

Page Pertama

<html>
<head>
<basefont face="Arial">
</head>
<body>
<center>
<form method="GET" action="coba16_2.php">
<table cellspacing="5" cellpadding="5" border="1">
<tr>
<td colspan="2" align="center">
Masukkan Nama Anda<br>
</td>
</tr>
<tr>
<td>
<font size="-1">Silakan Masukkan Nama Anda
</td>
<td>
<input type="text" name="nama" size="20">
</td>
</tr>

Be Enterprising Soul with mr-amateur.co.cc 69


<tr>
<td colspan="2" align="center">
<input type="submit" name="login" value="Login">
</td>
</tr>
</table>
</form>
</center>
</body>
</html>

Kemudian simpan dengan nama coba16_1.ht ml

(Gambar 16.1)

16.2. Pr oses Login

Adalah untuk menyeleksi setiap kata-kata apa saja yang di inputkan


kedalam page login atau form login.

Page Kedua

<html>
<head>
<basefont face="Arial">
</head>
<body>
<center>

70 Be Enterprising Soul with mr-amateur.co.cc


<?php
if ($nama == "caboel")
{
?>
<font face="Arial" size="-1">
Selamat datang<? echo $nama; ?> ?
<P> Anda adalah tamu Spesial kami </P>
</font>
<?php
}
else
{
?>
<font face="Arial" size="-1">
Maaf Tuan/Nyonya<? echo $nama; ?> ?
<P>Sayang sekali anda tidak ada di list tamu kami</P>
</font>
<?php
}
?>
</center>
</body>
</html>

Kemudian simpan dengan nama coba16_2.ht ml

(Gambar 16.2)

Be Enterprising Soul with mr-amateur.co.cc 71


17 PHP dan
MySQL

MySQL merupakan jenis database yang paling digemari dikalangan


programer web termasuk PHP, dengan alasan bahwa program
database yang sangat kuat.

17.1. Membuat Database MySQL Mengunakan Scr ipt PHP

Berikut ini adalah contoh pembuatan guestbook mengunakan mysql


sebagai database-nya menggunakan Script PHP. Sebelumnya anda
harus membuat 8 (delapan) program terlebih dahulu.

Ikuti langkah-langkah dibawah ini.

17.1.1. Membuat Program koneksi

Program ini untuk membuat koneksi kedalam database dan ser ver.

<html>
<body>
<?php
$host="localhost";
$user="username";
$pass="password";
$konek=mysql_connect($localhost, $user, $pass)
or die("koneksi gagal dilakukan :" .mysql_error());
echo " koneksi sukses";
mysql_close($konek);
?>
</body>
</html>

Kemudian simpan dengan nama close.php

72 Be Enterprising Soul with mr-amateur.co.cc


Jika terdapat tampilan koneksi sukses, berarti anda sudah
terkoneksi dengan server dan mysql.

17.1.2. Membuat Database MySQL dengan Scr ipt PHP

<html>
<body>
<?php
$host="localhost";
$user="username";
$pass="password";
$database="db_guestbook";
$konek=mysql_connect($localhost, $user, $pass)
or die("koneksi gagal dilakukan :" .mysql_error());
if (mysql_create_db($database)) {
echo "Database $database telah dibuat";
}
else {
echo "gagal dalam membuat database".mysql_error();
}
mysql_close($konek);
?>
</body>
</html>

Kemudian simpan dengan nama create_db.php

(Gambar 17.1.2)

Be Enterprising Soul with mr-amateur.co.cc 73


17.1.3. Mengakt ifkan Database

<html>
<body>
<?php
$host="localhost";
$user="username";
$pass="password";
$database="db_guestbook";
$konek=mysql_connect($localhost, $user,$pass)
or die("koneksi gagal dilakukan :" .mysql_error());
if (mysql_select_db($database))
{
echo "Database $database dapat dibuka";
}
else
{
echo "Tidak ada database bernama $database\n".mysql_error();
} mysql_close($konek);
?>
</body>
</html>

Kemudian simpan dengan nama select_db.php

(Gambar 17.1.3)

74 Be Enterprising Soul with mr-amateur.co.cc


17.1.4. Membuat table Dalam Database

<html>
<body>
<?php
$host="localhost";
$user="username";
$pass="password";
$database="db_guestbook";
$konek=mysql_connect($localhost, $user, $pass)
or die("koneksi gagal dilakukan :" .mysql_error());
mysql_select_db($database)
or die("Database Tidak ada");
$hasil=mysql_query("CREATE TABLE guestbook(id_guest INT(3) NOT NULL
AUTO_INCREMENT,
nama VARCHAR(35) NOT NULL,
email VARCHAR(35) NOT NULL,
pesan VARCHAR(35) NOT NULL,
PRIMARY KEY(id_guest))")
or die ("perintah salah");
echo "Table telah dibuat";
mysql_close($konek);
?>
</body>
</html>

Kemudian simpan dengan nama query.php

(Gambar 17.1.4)

Be Enterprising Soul with mr-amateur.co.cc 75


17.1.5. Menampilkan Data dar i table

<html>
<body>
<?php
$host="localhost";
$user="username";
$pass="password";
$database="db_guestbook";
$konek=mysql_connect($localhost, $user, $pass)
or die("koneksi gagal dilakukan :" .mysql_error());
mysql_select_db($database)
or die(" Database tidak ada");
$perintah=mysql_query("SELECT *FROM guestbook")
or die ("Perintah salah");
while($hasil=mysql_fetch_row($perintah))
{
echo " Nama : $hasil[1] \n<br>";
echo " Email : $hasil[2] \n<br>";
echo " Pesan : $hasil[3] \n<br><br>";
}
?>
</body>
</html>

Kemudian simpan dengan nama fetch_row.php

17.1.6. Membuat for m untuk Guestbook

<html>
<body>
<form name="form1" method="post" action="fm_stbook.php">
<table width="300">
<tr>
<td colspan="2"><strong>Form Guestbook</strong></td>
</tr>
<td width="74"> Nama </td>
<td width="176">
<input name="fm_nama" type="text" id="fm_nama" size="25
maxlength="35">
</td>
</tr>
<tr>
<td> Email </td>

76 Be Enterprising Soul with mr-amateur.co.cc


<td>
<input name="fm_email" type="text" id="fm_email" size="25
maxlength="35">
</td>
</tr>
<tr>
<td> Pesan </td>
<td>
<textarea name="fm_pesan" cols="25" rows="2"
id="fm_pesan"></textarea>
</td>
</tr>
<tr>
<td> &nbsp; </td>
<td>
<input type="submit" name="Submit" value="simpan">
</td>
</tr>
</table>
</form>
</body>
</html>

Kemudian simpan dengan nama fm_guestbook.ht m

(Gambar 17.1.6)

Be Enterprising Soul with mr-amateur.co.cc 77


17.1.7. Program Memproses fm_guestbook.ht m

<html>
<body>
<?php
$host="localhost";
$user="username";
$pass="password";
$database="db_guestbook";
$konek=mysql_connect($localhost, $user, $pass)
or die("koneksi gagal dilakukan :" .mysql_error());
mysql_select_db($database)
or die(" Database tidak ada");

mysql_query("INSERT INTO guestbook


(nama,
email,
pesan)

VALUES
('$fm_nama',
'$fm_email',
'$fm_pesan')")
or die ("Perintah salah");
echo "Data dengan nama $nama telah tersimpan";
mysql_close($konek);
?>
</body>
</html>

Kemudian simpan dengan nama fm_stbook.php

Jalankan terlebih dahulu page fm_guestbook.ht m

  

78 Be Enterprising Soul with mr-amateur.co.cc


18 PHP dan
MySQL II

18.1. Pemrograman PHP dan MySQL

Salah satu faktor yang membuat PHP menjadi sangat populer sebagai
jenis pemrograman dalam pembuatan aplikasi berbasis web dan situs
web dinamis adalah karena bahasa ini mendukung demikian banyak
sistem basis data, mulai dari mSQL, MySQl, MS-SQL, MS-Access,
PostgreSQL, bahkan sampai Oracle. Fungsi-fungsi untuk
mempermudah pengaksesan berbagai jenis basis data tersebut
tersedia lebih dari cukup pada PHP, sehingga meringankan,
menyederhakanan, serta mempercepat proses pengembangan aplikasi
berbasis web.

operasi Anda. Past ikan perintah/program mysql dapat


dipanggil dari CLI sistem operasi Anda.

mysql -u [namapengguna] -p

namapengguna adalah nama pengguna pada sistem basis data MySQL


yang telah dibuat pada saat instalasi dan konfigurasi server basis data
MySQL. Jika diperlukan password, maka program mysql akan
memberikan prompt bagi Anda untuk memasukkan password. Jika
urusan protokoler ini telah selesai, maka pada layar komputer Anda
akan muncul prompt sebagai berikut.

mysql>

Misalkan Anda ingin membuat basis data penyimpanan Pegawai


perusahaan dengan nama caboelz, dan pegawai per usahaanl akan
disimpan dalam tabel pegawai dalam basis data tersebut, maka
ketiklah sebagai berikut.

CREATE DA TABASE caboelz;

Be Enterprising Soul with mr-amateur.co.cc 79


USE caboelz;

Baris pertama perintah di atas adalah untuk membuat basis data


dengan nama caboelz pada MySQL. Baris berikutnya adalah perintah
kepada CLI MySQL untuk menggunakan basis data caboelz. Setiap
baris yang akan dieksekusi har us diakhiri dengan tanda titik-
koma/semi colon (;) dan diikuti dengan menekan tombol [return] atau
tombol [enter].

Kini Anda dapat membuat tabel untuk menyimpan daftar pegawai,


dengan mengetik perintah berikut ini.

CREATE TABLE pegawai (


KODE INT(11) NOT NULL AUTO_INCREMENT,
NAMA VARCHAR(50) NOT NULL,
PANGKAT VARCHAR(50) NOT NULL,
JABATAN VARCHAR(50) NOT NULL,
BERT UGAS SMALLINT(6) NOT NULL DEFAULT 0,
EMAIL VARCHAR(50) NOT NULL,
HOBI VARCHAR(50) NOT NULL,
PRIMARY KEY (KODE)
);

(Gambar 18.1)

Untuk menguji apakah tabel yang Anda buat sudah ter bentuk, Anda
dapat mencoba mengetik perintah berikut ini, masih pada CLI mysql.

DESCRIBE pegawai;

80 Be Enterprising Soul with mr-amateur.co.cc


Jika tidak ada kesalahan dalam proses pembuatan table, maka
seharusnya CLI mysql akan memberikan hasil sebagai berikut.

(Gambar 18.2)

Sekarang kita perlu mengisi basis data ini dengan data awal. Data
awal yang kita masukkan ada dua. Mengapa dua? Jawabannya
sederhana saja, karena saya hanya ingin memasukkan dua data saja.
Mengapa bukan tiga atau satu? Karena saya lebih suka dua… Hhe

INSERT INTO pegawai VALUES (


Null,'Amienudin',' Manager',' Manager',5,
'amiens @caboelz.com',' Baca Buku');
INSERT INTO pegawai VALUES (
Null,'Yayat Rochiat','Direktur','Direktur',5,
'yayagh@caboelz.com',' Main Golf');

Kolom/field pertama table pegawai (KODE) memiliki sifat


AUTO_INCREMENT, jadi secara otomatis akan ber tambah nilainya
setiap pengisian data. Hal ini akan menjamin primary key (kolom
KODE) selalu unik. Agar MySQL otomatis mengisi nilai pada kolom
KODE, maka pada saat melakukan pengisian data (INSERT), kolom ini
diberikan nilai Null. Mari kita lihat apakah proses pengisian data telah
sukses.

SELECT * FROM pegawai \ G

Perintah di atas adalah perintah SQL, yang artinya "ambillah semua


data dan kolom dari tabel Pegawai". Anda dapat membatasi kolom
yang diambil dengan mengganti tanda * dengan nama kolom yang

Be Enterprising Soul with mr-amateur.co.cc 81


akan diambil dipisahkan dengan tanda koma (,). Pembatasan jumlah
data yang diambil dapat dilakukan dengan menggunakan persyaratan
(WHERE ....) atau dengan perintah LIMIT.

(Gambar 18.3)

Anda dapat menggunakan perintah SQL SELECT untuk menghitung


jumlah record/data pada tabel pegawai.

SELECT COUNT(*) FROM pegawai;

(Gambar 18.4)

Disini, berarti basis data, tabel, dan datanya sendiri telah siap untuk
tugas Anda.

Untuk pemanasan, Mari kita buat dahulu skrip PHP seder hana untuk
menghitung j umlah record/data yang ada di tabel pegawai.

82 Be Enterprising Soul with mr-amateur.co.cc


18.1. jumlahrecord.php

<html>
<head>
<title>Menghitung Jumlah Record Pada Tabel Pegawai</title>
</head>
<body>
<?php
$server = "localhost";
$namauser = "test";
$passuser = "test";
$db = "caboelz";
$koneksi = mysql_connect($server, $namauser, $passuser);
$query = "SELECT COUNT(*) FROM pegawai";
$hasil = mysql_db_query($db, $query, $koneksi);
$jml_rec = mysql_result ($hasil, 0);
echo "Jumlah record/data pada tabel adalah : $jml_rec";
mysql_free_result($hasil);
?>
</body>
</html>

Anda akan dapati hasilnya sebagai berikut.


Jumlah record/data pada tabel adalah : 2

Fungsi ini memiliki 3 parameter: nama ser ver, nama pengguna MySQL
dan passwordnya. Jika server basis data MySQL dan ser ver web
secara fisik berada dan beroperasi dalam satu mesin, maka nama
server umumnya cukup ditulis localhost atau dengan nomor IP
loopback 127.0.0.1.
Hasil dari fungsi ini adalah sebuah "pengenal hubungan" (link
identifier) yang dalam skrip PHP di atas disimpan pada variabel
$koneksi. Pengenal ini akan selalu digunakan oleh skrip untuk
berkomunikasi dengan basis data.

Kebetulan Anda termasuk species manusia yang pemalas, sehingga


sangat enggan untuk menulis berulang-ulang perintah dan variabel
yang sama pada setiap skrip PHP yang Anda buat. Anda akan
memisahkan beberapa variabel untuk kebutuhan koneksi basis data
dan menyimpannya pada file terpisah, misalkan koneksi.inc.php.
File ini akan berisi skrip sebagai berikut.

Be Enterprising Soul with mr-amateur.co.cc 83


18.2. koneksi.inc.php

<?php
MySQL.
$server = "localhost";
$namauser = "username";
$passuser = "password";
$db = "caboelz";
$koneksi = mysql_connect($server, $namauser, $passuser)
or die("Salah server, nama pengguna, atau passwordnya!");
?>

File ini yang kita sisipkan pada setiap skrip PHP yang akan kita buat
dengan menggunakan perintah/fungsi include() atau require(). Anda
ingin mengetahui kegunaan fungsi die()? Fungsi ini ber guna untuk
menghentikan seluruh eksekusi program dan menampilkan string yang
tertentu jika proses eksekusi perintah gagal atau ditemukan
kesalahan.

Skrip PHP berikut ini akan menampilkan isi dari tabel pegawai ke
dalam format halaman HTML. Untuk mempermudah tata letak, kita
akan minta bantuan pada tag <table> dan rekan-rekannya.

18.3. pegawaidsp.php

<html>
<head>
<title>Menampilkan Isi Tabel Pegawai</title>
</head>
<body>
<?php
require("koneksi.inc.php");
$query = "SELECT * FROM pegawai ";
$hasil = mysql_db_query($db, $query, $koneksi) or
die("Kesalahan pada query!");
echo "<table border=1 cellpadding=1 cellspacing=0>\n";
echo "<tr>\n";
echo "<td>Kode</td>\n";
echo "<td>Nama</td>\n";
echo "<td>Pangkat</td>\n";
echo "<td>Jabatan</td>\n";
echo "<td>Tugas</td>\n";
echo "<td>Hobi</td>\n";

84 Be Enterprising Soul with mr-amateur.co.cc


echo "</tr>\n";
while ($barisdata = mysql_fetch_array($hasil)) {
$kode = $barisdata["KODE"];
$nama = $barisdata["NAMA"];
$pangkat = $barisdata["PANGKAT"];
$jabatan = $barisdata["JABATAN"];
$bertugas = $barisdata["BERTUGAS"]." th";
$email = "mailto:".$barisdata["EMAIL"];
$hobi = $barisdata["HOBI"];
echo "<tr>\n";
echo "<td>$kode</td>\n";
echo "<td>";
echo "<a href=$email>$nama</a>";
echo "</td>\n";
echo "<td>$pangkat</td>\n";
echo "<td>$jabatan</td>\n";
echo "<td>$bertugas</td>\n";
echo "<td>$hobi</td>\n";
echo "</tr>\n";
}
echo "</table>\n";
mysql_free_result($hasil);
?>
</body>
</html>

Pada contoh di atas, digunakan fungsi mysql_fetch_array() yang akan


mengekstraksi variabel hasil quer y $hasil ke dalam variabel array
$barisdata. Indeks komponen variabel array ini secara otomatis adalah
nama kolom dari hasil query. Dengan demikian, kita dapat mengakses
tiap komponen/elemen dari variabel array $barisdata sesuai dengan
nama kolomnya, seperti pada baris-baris perintah berikut ini.

$kode = $barisdata["KODE"];
$nama = $barisdata["NAMA"];
$pangkat = $barisdata["PANGKAT "];
.... dan seterusnya ....

Perulangan yang digunakan adalah perulangan w hile yang akan terus


melakukan perulangan sampai fungsi mysql_fetch_array() tidak
memberikan hasil atau dengan kata lain sampai pernyataan

Be Enterprising Soul with mr-amateur.co.cc 85


$barisdata = mysql_fetch_array($hasil) ber nilai false. Berikut ini
adalah hasil skrip di atas.

Kode Nama Pangkat Jabatan Tugas Hobi


1 Amienudin Manager Manager 5 th Baca Buku
2 Yayat Rochiat Direktur Direktur 5 th Main Golf

Teknik menyatukan halaman form dengan proses dan hasilnya telah


kita pelajari pada bagian sebelumnya, pasti dengan kecerdasan yang
Anda miliki, tidak akan terlupakan begitu saja. Intinya kita akan
membedakan status pencarian dengan mendeteksi adanya/nilai
variabel ter tentu ($cari) yang dikirim oleh tombol "Cari" pada form
isian. Jika variabel ini bernilai, maka berarti dokumen/skrip PHP
sedang dalam proses pencerian, jika tidak, tampilkan form untuk
pencarian.

18.4. car ipegawai.php

<html>
<head>
<title>Pencarian Data Pegawai CaboelzZz.Inc</title>
<basefont face="Arial">
</head>
<body>
<?php
if (!$cari) {
?>
<center>
<form action="<?php echo $PHP_SELF ?>" method="POST">
<font size=5>Program Pencarian Data Pegawai CaboelzZz.Inc</font>
<p> Masukkan nama Pegawai yang dicari :
<p> <input type="text" name="form_nama" size="50"
maxlength="50">
<input type="submit" name="cari" value=" Cari Pegawai ">
</form>
</center>
<?php
}
else
{
require("koneksi.inc.php");

86 Be Enterprising Soul with mr-amateur.co.cc


$query = "SELECT * FROM pegawai W HERE NAMA LIKE
'%$form_nama%'";
$hasil = mysql_db_query($db,$query,$koneksi);
$jml_rec = mysql_num_rows($hasil);
if (!$jml_rec) {
?>
<center>
<font size=5>Nama Pegawai tidak ditemukan!</font><p>
<a href="<?php echo $PHP_SELF?>">Klik di sin i
untuk kembali</a>
</center>
<?php
}
else
{
echo "<font size=5>Hasil Pencarian ".
"Ditemukan $jml_rec Data</font><br>\n";
echo "<table border=1 cellpadding=1 cellspacing=0>\n";
echo "<tr>\n";
echo "<td>Kode</td>\n";
echo "<td>Nama</td>\n";
echo "<td>Pangkat</td>\n";
echo "<td>Jabatan</td>\n";
echo "<td>Tugas</td>\n";
echo "<td>Hobi</td>\n";
echo "</tr>\n";
while (list($kode,$nama,$pangkat,$jabatan,$bertugas,
$email,$hobi) = mysql_fetch_row($hasil))
{
$bertugas = $bertugas." th";
$email = "mailto:".$email;
echo "<tr>\n";
echo "<td>$kode</td>\n";
echo "<td>";
echo "<a href=$email>$nama</a>";
echo "</td>\n";
echo "<td>$pangkat</td>\n";
echo "<td>$jabatan</td>\n";
echo "<td>$bertugas</td>\n";
echo "<td>$hobi</td>\n";
echo "</tr>\n";
}
echo "</table>\n";
echo "<p>\n";

Be Enterprising Soul with mr-amateur.co.cc 87


echo "<a href=$PHP_SELF>Klik di sini ".
"untuk kembali</a>\n";
mysql_free_result ($hasil);
}
}
?>
</body>
</html>

Skrip Pencarian Nama CaboelzZz.Inc di atas meng gunakan kriteria


pencarian dengan operator LIKE yaitu "W HERE NAMA LIKE
'%$form_nama%'". Operator LIKE ini adalah operator pada bahasa
SQL di MySQL yang memiliki cakupan pencarian lebih luas dari pada
operator '='. Bentuk '%[string]%' akan menyebabkan pencarian
dilakukan ter hadap setiap data yang mengandung '[string]'.
Fungsi bar u yang Anda jumpai pada skrip di atas adalah
mysql_num_rows() yang akan memberikan hasil jumlah baris/data
yang dihasilkan dari proses query.

Untuk mengisi data baru ke dalam tabel basis data, kita menggunakan
perintah SQL lainnya, yaitu INSERT. Cobalah skrip PHP berikut ini.
Agar pada langkah-langkah berikutnya Anda tidak perlu mengganti
nama skrip ini, simpanlah dengan nama pegawaiinput.php.

18.5. pegawaiinput.php

<html>
<head>
<title>Memasukkan Pegawai Baru</title>
<basefont face="Arial">
</head>
<body>
<?php
if (!$tambah) {
?>
<center>
<form action="<?php echo $PHP_SELF ?>" method="POST">
<font size=5>Masukkan Data Pegawai Baru CaboelzZz.Inc</font>
<p><table border=0 cellspacing=2 cellpadding=2>
<tr>
<td>Nama Pegawai</td>
<td>

88 Be Enterprising Soul with mr-amateur.co.cc


<input type="text" name="form_nama" size="50"
maxlength="50">
</td>
</tr>
<tr>
<td>Pangkat</td>
<td>
<input type="text" name="form_pangkat" size="50" maxlength="50">
</td>
</tr>
<tr>
<td>Jabatan</td>
<td>
<input type="text" name="form_jabatan" size="50" maxlength="50">
</td>
</tr>
<tr>
<td>Lama Bertugas</td>
<td>
<input type="text" name="form_bertugas" size="2"
maxlength="2"> (dalam tahun)
</td>
</tr>
<tr>
<td>e-mail</td>
<td>
<input type="text" name="form_email" size="50"
maxlength="50">
</td>
</tr>
<tr>
<td>Hobi</td>
<td>
<input type="text" name="form_hobi" size="50"
maxlength="50">
</td>
</tr>
<tr>
<td colspan=2 align=center>
<input type="submit" name="tambah" value=" Tambah ">
</td>
</tr>
</table>
</form>

Be Enterprising Soul with mr-amateur.co.cc 89


</center>
<?php
}
else
{ require("koneksi.inc.php");
$query = "INSERT INTO pegawai VALUES ( Null,
'".addslashes($form_nama)."', '".addslashes($form_pangkat)."',
'".addslashes($form_jabatan)."', $form_bertugas,
'".addslashes($form_email)."',
'".addslashes($form_hobi)."' )";
$hasil = mysql_db_query($db,$query,$koneksi)
or die('Kesalahan pada proses query!');
?>
<center>
<font size=5>Proses Input Berhasil!</font><p>
Data Pegawai Nama
<b> <?php echo addslashes($form_nama) ?> </b>
telah disimpan.
<p> <a href="<?php echo $PHP_SELF ?>">Klik di sin i untuk
kembali</a>
</center>
<?php
}
?>
</body>
</html>

Anda dapat juga menggunakan fungsi mysql_query() yang lebih


praktis untuk digunakan berulang-ulang pada basis data yang sama.
Sebelum fungsi ini, terlebih dahulu haruslah didefinisikan dahulu basis
data yang digunakan dengan fungsi mysql _select_db(). Sehingga
perintah,

mysql_db_quer y($db, $quer y, $koneksi);


dapat diganti dengan
mysql_select_db($db, $koneksi);
mysql_quer y($query);

Berikut ini adalah skrip untuk mengedit data yang akan disimpan
dengan nama pegawaiedit.php.

90 Be Enterprising Soul with mr-amateur.co.cc


18.6. pegawaiedit.php

<html>
<head>
<title>Mengubah Data Pegawai CaboelzZz.Inc</title>
<basefont face="Arial">
</head>
<body>
<?php
require("koneksi.inc.php");
mysql_select_db($db, $koneksi);
if (!$simpan) {
if (!$kodepegawai) {
die('Tidak ada Pegawai yang dipilih untuk diedit!'); }
$query = "SELECT * FROM pegawai W HERE KODE='$kodepegawai'";
$hasil = mysql_query($query) or
die('Kesalahan pada proses query!');
$jml_rec = mysql_num_rows($hasil);
if (!($jml_rec>0)) { die('Data tidak ditemukan!'); }
list($kode,$nama,$pangkat,$jabatan,$bertugas,$email,$hobi) =
mysql_fetch_row($hasil);
?>
<center>
<form action="<?php echo $PHP_SELF ?>" method="POST">
<font size=5>Edit Data Pegawai CaboelzZz.Inc</font>
<p>
<table border=0 cellspacing=2 cellpadding=2>
<tr>
<td>Nama Pegawai</td>
<td>
<input type="hidden" name="form_kode"
value="<?php echo $kode ?>">
<input type="text" name="form_nama" size="50"
value="<?php echo $nama ?>" maxlength="50">
</td>
</tr>
<tr>
<td>Pangkat</td>
<td>
<input type="text" name="form_pangkat" size="50"
value="<?php echo $pangkat ?>" maxlength="50">
</td>
</tr>
<tr>

Be Enterprising Soul with mr-amateur.co.cc 91


<td>Jabatan</td>
<td>
<input type="text" name="form_jabatan" size="50"
value="<?php echo $jabatan ?>" maxlength="50">
</td>
</tr>
<tr>
<td>Lama Bertugas</td>
<td>
<input type="text" name="form_bertugas" size="2"
value="<?php echo $bertugas ?>" maxlength="2">
(dalam tahun)
</td>
</tr>
<tr>
<td>e-mail</td>
<td>
<input type="text" name="form_email" size="50"
value="<?php echo $email ?>" maxlength="50">
</td>
</tr>
<tr>
<td>Hobi</td>
<td>
<input type="text" name="form_hobi" size="50"
value="<?php echo $hobi ?>" maxlength="50">
</td>
</tr>
<tr>
<td colspan=2 align=center>
<input type="submit" name="simpan" value=" Simpan ">
</td>
</tr>
</table>
</form>
</center>
<?php
mysql_free_result($hasil);
}
else
{ $query = "UPDATE pegawai SET
NAMA='".addslashes($form_nama)."',
PANGKAT='".addslashes($form_pangkat)."',
JABATAN='".addslashes($form_jabatan)."',

92 Be Enterprising Soul with mr-amateur.co.cc


BERTUGAS=$form_bertugas,
EMAIL='".addslashes($form_email)."',
HOBI='".addslashes($form_hobi)."'
W HERE KODE='$form_kode'";
$hasil = mysql_query($query)
or die('Kesalahan pada proses query!');
?>
<center>
<font size=5>Proses Edit Berhasil!</font><p>
Data Pegawai Nama
<b><?php echo addslashes($form_nama) ?></b>
telah disimpan perubahannya.
<p><a href="pegawaidsp.php">Klik di sini untuk kembali</a>
</center>
<?php
}
?>
</body>
</html>

(Gambar 18.5)

Langkah pertama, modifikasi skrip pegawaidsp.php dengan


menambahkan hyperlink untuk penghapusan dan hyperlink untuk
pengubahan data pada setiap baris data yang ada. Berikut adalah
skrip pegawaidsp.php yang telah dimodifikasi.

Be Enterprising Soul with mr-amateur.co.cc 93


18.7. pegawaidsp.php (Update)

<html>
<head>
<title>Menampilkan Isi Tabel Pegawai CaboelzZz.Inc </title>
<basefont face="Arial">
</head>
<body>
<?php require("koneksi.inc.php");
$query = "SELECT * FROM pegawai ";
$hasil = mysql_db_query($db, $query, $koneksi)
or die("Kesalahan pada query!");
echo "<font size=5>Data Pegawai CaboelzZz.Inc</font>\n";
echo "<table border=1 cellpadding=1 cellspacing=0>\n";
echo "<tr>\n";
echo "<td>Kode</td>\n";
echo "<td>Nama</td>\n";
echo "<td>Pangkat</td>\n";
echo "<td>Jabatan</td>\n";
echo "<td>Tugas</td>\n";
echo "<td>Hobi</td>\n";
echo "<td>Pilihan</td>\n";
echo "</tr>\n";
while (list($kode,$nama,$pangkat,$jabatan,$bertugas,$email,$hobi)
=mysql_fetch_row($hasil)) { $bertugas = $bertugas." th";
$email = "mailto:".$email;
echo "<tr>\n";
echo "<td>$kode</td>\n";
echo "<td>";
echo "<a href=$email>$nama</a>";
echo "</td>\n";
echo "<td>$pangkat</td>\n";
echo "<td>$jabatan</td>\n";
echo "<td>$bertugas</td>\n";
echo "<td>$hobi</td>\n";
echo "<td>";
echo "
<a href=\"pegawaiedit.php?kodepegawai=$kode \">Edit </a>";
echo " ";
echo "
<a href=\"pegawaidel.php?kodepegawai=$kode\">Hapus</a>";
echo "</td>\n";
echo "</tr>\n";
}

94 Be Enterprising Soul with mr-amateur.co.cc


echo "</table>\n";
mysql_free_result($hasil);
?>
</body>
</html>

(Gambar 18.6)

Langkah berikutnya adalah membuat skrip pegawaidel.php sebagai


berikut.

18.8. pegawaidel.php

<html>
<head>
<title>Menghapus Data Pegawai CaboelzZz.Inc</tit le>
<basefont face="Arial">
</head>
<body>
<?php
require("koneksi.inc.php");
mysql_select_db($db, $koneksi);
if (!$hapus) {
if (!$kodepegawai) {
die('Tidak ada Pegawai yang dipilih untuk dihapus!'); }
$query = "SELECT * FROM pegawai W HERE KODE='$kodepegawai'";
$hasil = mysql_query($query) or
die('Kesalahan pada proses query!');
$jml_rec = mysql_num_rows($hasil);

Be Enterprising Soul with mr-amateur.co.cc 95


if (!($jml_rec>0)) { die('Data tidak ditemukan!'); }
list($kode,$nama,$pangkat,$jabatan,$bertugas,$email,$hobi) =
mysql_fetch_row($hasil);
?> <center>
<form action="<?php echo $PHP_SELF ?>" method="POST">
<font size=5>Edit Data Pegawai CaboelzZz.Inc</font>
<p>
<table border=0 cellspacing=2 cellpadding=2>
<tr>
<td>Nama Pegawai</td>
<td>
<input type="hidden" name="form_kode"
value="<?php echo $kode ?>">
<?php echo $nama ?>
</td>
</tr>
<tr>
<td>Pangkat</td>
<td>
<?php echo $pangkat ?>
</td>
</tr>
<tr>
<td>Jabatan</td>
<td>
<?php echo $jabatan ?>
</td>
</tr>
<tr>
<td>Lama Bertugas</td>
<td>
<?php echo $bertugas ?> tahun
</td>
</tr>
<tr>
<td>e-mail</td>
<td>
<?php echo $email ?>
</td>
</tr>
<tr>
<td>Hobi</td>
<td>
<?php echo $hobi ?>

96 Be Enterprising Soul with mr-amateur.co.cc


</td></tr>
<tr>
<td colspan=2 align=center>
<input type="submit" name="hapus" value=" Hapus Data ">
</td></tr>
</table>
</form>
</center>
<?php
mysql_free_result($hasil);
}
else { $query = "DELETE FROM pegawai
W HERE KODE='$form_kode'";
$hasil = mysql_query($query)
or die('Kesalahan pada proses query!'); ?>
<center>
<font size=5>Proses Hapus Berhasil!</font><p>
Data Pegawai Nama
<b><?php echo addslashes($form_nama) ?></b>
telah dihapus.
<p>
<a href="pegawaidsp.php">Klik di sin i untuk kembali</a>
</center>
<?php
}
?>
</body>
</html>

(Gambar 18.7)

Be Enterprising Soul with mr-amateur.co.cc 97


PHP, kembali lagi kita harus berterimakasih kepadanya, menyediakan
banyak sekali alat bantu pelacakan kesalahan (error tracking). Untuk
melacak kesalahan pada proses pengaksesan MySQL, PHP
menyediakan fungsi-fungsi mysql_errno() yang menunjukkan nomor
indeks dari kesalahan yang terjadi, dan mysql_error() yang
memberikan keterangan kepada kita mengenai kesalahan apa yang
terjadi. Berikut ini adalah contoh penggunaannya.

18.9. sql_error.php

<html>
<head>
<title>Melacak Kesalahan SQL</tit le>
</head>
<body>
<?php
require("koneksi.inc.php");
$query = "SELECT FROM pegawai";
$hasil = mysql_db_query($db, $query, $koneksi);
if (!$hasil)
{
$no_error = mysql_errno();
$pesan_error = mysql_error();
echo "Kesalahan MySQL No $no_error : $pesan_error";
}
?>
</body>
</html>

Jika skrip di atas dijalankan, maka akan muncul pesan kesalahan


sebagai berikut.

Kesalahan MySQL No 1064 : You have an error in your SQL


syntax near ' FROM pegawai'
at line 1

  

98 Be Enterprising Soul with mr-amateur.co.cc


19 PHP dan
MySQL III

Disesi ini kita akan membahas fungsi PHP dan MySQL dalam sistem
database kepegawaian. Seperti yang sudah kita pelajari di latihan
sebelumya, sekarang kita akan mengembangkan program yang kita
pelajari sebelumnya, menjadi program database relasional berbasis
Web intranet, tentunya dengan PHP. Contoh database pegawai
CaboelzZz.Inc, sebuah perusahaan Konsultan IT yang mengatur data
pegawainya melalui aplikasi berbasis web secara Intranet.

Disesi ini kita akan menggunakan phpMyAdmin sebagai sarana


pembuatan database-nya.

Pastikan program phpMyAdmin sudah terinstal di computer


anda.

19.1. phpMyAdmin

phpMyAdmin adalah sebuah program database yang berbasis web


yang dibuat menggunakan aplikasi PHP, tujuan dibuatnya pr ogram ini
adalah untuk akses database MySQL, intinya adalah digunakan untuk
menjadi Administrator dari ser ver MySQL.

19.2. Menjalankan phpMyAdmin

Sebelumnya kita harus mengingat bahwa phpMyAdmin adalah sebuah


program database yang berbasis web yang dibuat menggunakan
aplikasi PHP, untuk mempermudah kita dalam mengakses database
MySQL.

1. Jalankan Server Apache

2. buka web browser ketik http://localhost -> alamat folder


phpMyAdmin. Contoh : http://localhost/phpmyadmin/ jika

Be Enterprising Soul with mr-amateur.co.cc 99


anda benar melakukannya maka akan muncul tampilan
jendela seperti pada. (Gambar 19.2)

(Gambar 19.2)

19.3. Membuat Database

 Untuk membuat database baru, anda dapat menuliskannya


kedalam kolom edit dibawah tulisan create new database,
buatlah database baru dengan nama db_pegawai_caboelz
lihat (Gambar 19.3).

(Gambar 19.3)

100 Be Enterprising Soul with mr-amateur.co.cc


 Jika sukses maka disamping kiri layar dibawah menu Home
terdapat database baru yang baru kita buat bernama
db_pegawai_caboelz, database yang telah kita buat tadi.

 Sekarang cobalah untuk membuat tabel dengan nama


data_pegawai dengan jumlah Field 9 buah

 Kemudian isi tiap-tiap kolom seper ti berikut. (Gambar 19.3.2)

(Gambar 19.3.2)

 Lalu simpan tabel yang kita buat dengan menekan button


Save.

 Sekarang kita isi tabel yang kita buat dengan cara klik insert
kemudian isi tiap-tiap kolom seper ti berikut. (Gambar 19.3.3)

Be Enterprising Soul with mr-amateur.co.cc 101


(Gambar 19.3.3)

 Lakukan secara pengisian beberapa kali agar database


yang kita buat tadi bisa kita tampilkan di page PHP yang
akan kita buat nanti.

 Kemudian buat lagi tabel baru dengan nama admin dan


jumlah Field 2 buah. Beri nama tiap field dengan nama
useradmin dan passadmin. Lihat ( Gambar 19.3.4)

(Gambar 19.3.4)

102 Be Enterprising Soul with mr-amateur.co.cc


 Isi tabel-tabel yang kita buat tadi lihat (Gambar 19.3.5)

(Gambar 19.3.5)

Buatlah sebuah folder baru didalam folder root yang nantinya


akan kita isi dengan program database pegawai yang akan
kita buat, agar kita mudah mengaksesnya melalui server.
Contoh : book

19.4. koneksi.inc.php

Program ini untuk membuat koneksi kedalam database dan ser ver.

<?php
$host="localhost";
$user=" user";
$passuser="passuser";
$database="db_pegawai_caboelz";
$connect=mysql_connect($localhost, $user, $passuser);
if (! $connect) {
echo "wah ga bisa";
}
mysql_select_db($database)
or die(" Database gak ada tuh");
?>

Be Enterprising Soul with mr-amateur.co.cc 103


Diinginkan tampilan pada halaman web yang kita bangun
akan mempunyai konsistensi pada layout, bahwa ada header
dan ada footer, pada bagian tengah adalah isi.

19.4.1. header.php

<!DOCTYPE html PUBLIC "-//W 3C//DTD XHTML 1.0 Strict//EN"


"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Database Pegawai CaboelzZz.Inc</title>
</head>
<body link="#0000FF" vlink="#0000FF" alink="#0000FF">
<div id="content">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tbody>
<tr>
<td bgcolor="#226a7c" height="108"><div style="padding -
left:20px"><font size="+7" color="#FFFFFF">
Database Pegawai <br>CaboelzZz.Inc</font></div></td>
</tr>
<tr>
<td bgcolor="#2e91a9" height="10">&nbsp;
</td>
</tr>
</tbody>
</table>

19.4.2. footer.php

<p>&nbsp;</p>
<div style="position: static;">
<div style="text -align: center; padding-top: 5px;
padding-bottom: 5px; background-color: #2e91a9;">
</div>
</div>
<div style="position: static;">
<div style="text -align: center; padding-top: 5px; padding-bottom: 5px;
background-color: rgb(34, 106, 124); color: rgb(255, 255, 255);">
Registered &reg; CaboelzZz.Inc 2009
</div>
</div>
</body>
</html>

104 Be Enterprising Soul with mr-amateur.co.cc


19.4.3. index.php

<?php include "header.php"; ?>


<br>
<table border="0" cellpadding="0" cellspacing="0" width="100%"
height="25">
<tr>
<td bgcolor="#226a7c"><strong style="color:#FFFFFF">
Welcome Administrator</strong></td>
</tr>
</table>
<p>&nbsp;</p><form action="login-admin.php" method="POST">
<table align="center" border="0">
<tr>
<td>Username :
<input name="useradmin" size="25" type="text">
</td>
<tr>
<td>Password :
<input name="passadmin" size="25" type="password">
</td>
<td><input name="Submit" value="&nbsp; Login &nbsp;" type="submit ">
</td>
</tr>
</table>
</form>
<?php include "footer.php"; ?>

19.4.4. login_admin.php

Untuk proses login Administrator pada page index.php yang kita buat
sebelumnya. Anda har us memasukan username dan password sesuai
dengan data yang anda isi pada table admin tadi.

<?php
include "koneksi.inc.php";
$perintah="SELECT * FROM admin W HERE useradmin='$useradmin' AND
passadmin='$passadmin'";
$hasil=mysql_query($perintah);
$row=mysql_fetch_array($hasil);
if ($row[useradmin]==$useradmin AND $row[passadmin]=$passadmin)
{
session_start();
session_register("useradmin");

Be Enterprising Soul with mr-amateur.co.cc 105


session_register("passadmin");
session_register("level");
$useradmin=$row[useradmin];
$passadmin=$row[passadmin];
$level=$row[level];
include "menampilkandata.php";
}
else
{
include "header.php";
echo "<br>
<table border=0 cellpadding=0 cellspacing=0 width=100% height=25>
<tr>
<td bgcolor=#226a7c>
<strong style=color:#FFFFFF>W elcome Administrator</strong>
</td> </tr>
</table>
<p>&nbsp;</p>
<form action=login-admin.php method=POST>
<table align=center border=0>
<tr>
<td>Username :
<input name=useradmin size=25 type=text></td>
<tr>
<td>Password :
<input name=passadmin size=25 type=password></td>
<td><input name=Submit value=&nbsp;Login&nbsp; type=submit>
</td>
</tr>
</table>
</form>
<center><br>
<blink>
USER ADMIN AND PASSWORD DIDN'T MATCH
</blink></center>";
include "footer.php";
}
?>

106 Be Enterprising Soul with mr-amateur.co.cc


(Gambar 19.4.4)

19.4.5. menampilkandata.php

Untuk menampilkan database yang tersimpan pada MySQL.

<?php include "header.php"; ?>


<form action="prosessrc.php" method="post">
<table border="0" cellpadding="4" cellspacing="1">
<tbody><tr>
<td>Masukkan Kriteria Pencarian (Nama)</td>
</tr> <tr>
<td><input name="nama" size="25" type="text">
<input name="Submit" value="GO!" type="submit ">
</td> </tr>
</tbody></table>
</form>
</div>
</div> <?php
require("koneksi.inc.php");
$query = "SELECT * FROM data_pegawai ";
$hasil = mysql_db_query($database, $query, $connect)
or die("Kesalahan pada query!");
echo"<table width=92% border=0 cellspacing=2 cellpadding=1
align=center>\n";
echo"<tr height=30>\n";
echo"<td width=5%></td>\n";
echo"<td width=6%></td>\n";

Be Enterprising Soul with mr-amateur.co.cc 107


echo"<td bgcolor=#226a7c width=7%>
<input type=hidden name=form_id value=$id size=5 maxlength=4><font
color=FFFFFF>NIP</font></td>\n";
echo"<td bgcolor=#226a7c width=15%>
<font color=FFFFFF>Nama</font></td>\n";
echo"<td bgcolor=#226a7c width=10%>
<font color=FFFFFF>Tempat Lahir</font></td>\n";
echo"<td bgcolor=#226a7c width=10%>
<font color=FFFFFF>Tanggal Lahir</font></td>\n";
echo"<td bgcolor=#226a7c width=10%>
<font color=FFFFFF>Alamat</font></td>\n";
echo"<td bgcolor=#226a7c width=12%>
<font color=FFFFFF>Telepon</font></td>\n";
echo"<td bgcolor=#226a7c width=12%>
<font color=FFFFFF>Jabatan</font></td>\n";
echo"<td bgcolor=#226a7c width=16%>
<font color=FFFFFF>Pendapatan</font></td>\n";
echo"</tr>\n";
while(list($id,$NIP,$nama,$tmpt_lahir,$tgl_lahir,$alamat,$telepon,$jabatan,$g
aji) =mysql_fetch_row($hasil))
{
$gaji ="Rp.".$gaji;
echo "<tr>\n";
echo "<td bgcolor=#E6E6E6><font color=#000000>
<a href=\"edit_db.php?idpegawai=$id\">Edit</a>
</font></td>\n";
echo "<td bgcolor=#E6E6E6>
<font color=#000000>
<a href=\"delete_db.php?idpegawai=$id\">Delete</a>
</font></td>\n";
echo "<td bgcolor=#E6E6E6>
<font color=#000000>$NIP</font></td>\n";
echo "<td bgcolor=#E6E6E6><font
color=#000000>$nama</font></td>\n";
echo "<td bgcolor=#E6E6E6><font
color=#000000>$tmpt_lahir</font></td>\n";
echo "<td bgcolor=#E6E6E6 align=center>
<font color=#000000>$tgl_lahir</font></td>\n";
echo "<td bgcolor=#E6E6E6><font
color=#000000>$alamat</font></td>\n";
echo "<td bgcolor=#E6E6E6>
<font color=#000000>$telepon
</font></td>\n";
echo "<td bgcolor=#E6E6E6>

108 Be Enterprising Soul with mr-amateur.co.cc


<font color=#000000>$jabatan</font></td>\n";
echo "<td bgcolor=#E6E6E6 align=right>
<font color=#000000>$gaji</font></td>\n";
echo "</tr>\n";
}
echo "</table>\n";
mysql_free_result($hasil);
echo "<div style=padding-left:910px;>
<a href=tambah_db.php>Add</a></div>";
?><?php include "footer.php"; ?>

(Gambar 19.4.5)
19.4.6. tambah_db.php

Untuk menambah database pegawai yang nantinya secara otomatis


disimpan kedalam database yang kita buat data_pegawai_caboel
tepatnya kedalam tabel data_pegawai.

<?php include"header.php";?><p>&nbsp;</p>
<?php
if (!$tambah)
{
?>
<form action="<?php echo $PHP_SELF ?>" method="POST">
<font size=5 color=#226a7c>Masukkan Data Pegawai Baru
CaboelzZz.Inc</font>
<p><table border=0 cellspacing=2 cellpadding=2>
<tr>

Be Enterprising Soul with mr-amateur.co.cc 109


<td>NIP</td>
<td>
<input type="text" name="form_nip" size="5" maxlength="4">
</td>
</tr>
<tr>
<td>Nama</td>
<td>
<input type="text" name="form_nama" size="50" maxlength="50">
</td>
</tr>
<tr>
<td>Tempat Lahir</td>
<td>
<input type="text" name="form_tmpt_lahir" size="20" maxlength="50">
</td>
</tr>
<tr>
<td>Tanggal Lahir</td>
<td>
<input type="text" name="form_tgl_lahir" size="20" maxlength="50">
</td>
</tr>
<tr>
<td>Alamat</td>
<td>
<input type="text" name="form_alamat" size="50" maxlength="50">
</td>
</tr>
<tr>
<td>Telepon</td>
<td>
<input type="text" name="form_telepon" size="25" maxlength="50">
</td>
</tr>
<tr>
<td>Jabatan</td>
<td>
<input type="text" name="form_jabatan" size="30" maxlength="50">
</td>
</tr>
<tr>
<td>Pendapatan</td>
<td>

110 Be Enterprising Soul with mr-amateur.co.cc


<input type="text" name="form_gaji" size="20" maxlength="50" dir="rtl">
</td>
</tr>
</table>
<input name="tambah" type="submit" value=" Save ">
<input name="clear" type="reset" value=" Clear ">
</form>
<?php
}
else
{
require("koneksi.inc.php");
$query = "INSERT INTO data_pegawai VALUES ( Null,
'".addslashes($form_nip)."',
'".addslashes($form_nama)."',
'".addslashes($form_tmpt_lahir)."',
'".addslashes($form_tgl_lahir)."',
'".addslashes($form_alamat)."',
'".addslashes($form_telepon)."',
'".addslashes($form_jabatan)."',
'".addslashes($form_gaji)."' )";
$hasil = mysql_db_query($database, $query, $connect)
or die('Kesalahan pada proses query!');
?>
<center>
<font size=5>Proses Input Berhasil!</font><p>
Data Pegawai yang bernama
<b> <?php echo addslashes($form_nama) ?> </b>
telah disimpan.
<p>
<a href="<?php echo $PHP_SELF ?>">Klik di sini untuk kembali</a>
</center>
<?php
}
?>
<center>
<a href="menampilkandata.php"> Back to menu </a>
</center>
<?php include"footer.php";?>

Be Enterprising Soul with mr-amateur.co.cc 111


(Gambar 19.4.6)

19.4.7. delete_db.php

Untuk menghapus data pegawai yang sudah ada.

<?php include"header.php";?><p>&nbsp;</p>
<?php
require("koneksi.inc.php");
mysql_select_db($database, $connect);
if (!$hapus) {
if (!$idpegawai) {
die('Tidak ada Pegawai yang dipilih untuk dihapus!'); }
$query = "SELECT * FROM data_pegawai W HERE id='$idpegawai'";
$hasil = mysql_query($query) or
die('Kesalahan pada proses query!');
$jml_rec = mysql_num_rows($hasil);
if (!($jml_rec>0)) { die('Data tidak ditemukan!'); }
list($id,$NIP,$nama,$tmpt_lahir,$tgl_lahir,$alamat,$telepon,$jabatan
,$gaji) = mysql_fetch_row($hasil);
?>
<form action="<?php echo $PHP_SELF ?>" method="POST">
<font size=5>Delete Data Pegawai CaboelzZz.Inc</font>
<p>
<table border=0 cellspacing=2 cellpadding=2>
<tr><input type="hidden" name="form_id"
value="<?php echo $id ?>">
<td>NIP :</td>

112 Be Enterprising Soul with mr-amateur.co.cc


<td>
<?php echo $NIP ?>
</td>
</tr>
<tr>
<td>Nama Pegawai :</td>
<td>
<input type="hidden" name="form_nama"
value="<?php echo $nama ?>">
<?php echo $nama ?>
</td>
</tr>
<tr>
<td>Tempat lahir :</td>
<td>
<?php echo $tmpt_lahir ?>
</td>
</tr>
<tr>
<td>Tanggal lahir :</td>
<td>
<?php echo $tgl_lahir ?>
</td>
</tr>
<tr>
<td>Alamat :</td>
<td>
<?php echo $alamat ?>
</td>
</tr>
<tr>
<td>Telepon :</td>
<td>
<?php echo $telepon ?>
</td>
</tr>
<tr>
<td>Jabatan :</td>
<td>
<?php echo $jabatan ?>
</td>
</tr>
<tr>
<td>Pendapatan :</td>

Be Enterprising Soul with mr-amateur.co.cc 113


<td>
Rp. <?php echo $gaji ?>
</td>
</tr>
<tr>
<td colspan=2>
<input type="submit" name="hapus" value=" Hapus Data ">
</td>
</tr>
</table>
</form>
<?php
mysql_free_result($hasil); }
else {
$query = "DELETE FROM data_pegawai
WHERE id='$form_id'";
$hasil = mysql_query($query)
or die('Kesalahan pada proses query!'); ?>
<center>
<font size=5>Proses Hapus Berhasil!</font><p>
Data Pegawai Nama
<b><?php echo addslashes($form_nama) ?></b>
telah dihapus.<p>
<a href="<?php echo $PHP_SELF ?>">Klik di sini untuk kembali</a>
</center>
<?php
}
?>
<center>
<a href="menampilkandata.php"> Back to menu </a>
</center>
<?php include"footer.php";?>

114 Be Enterprising Soul with mr-amateur.co.cc


(Gambar 19.4.7)

19.4.8. edit_db.php

Untuk meng-edit atau mengubah data pegawai yang sudah ada.

<?php include"header.php";?><p>&nbsp;</p>
<?php
require("koneksi.inc.php");
mysql_select_db($database, $connect);
if (!$simpan) {
if (!$idpegawai) {
die('Tidak ada Pegawai yang dipilih untuk diedit!');
}
$query = "SELECT * FROM data_pegawai WHERE id='$idpegawai'";
$hasil = mysql_query($query) or
die('Kesalahan pada proses query!');
$jml_rec = mysql_num_rows($hasil);
if (!($jml_rec>0)) { die('Data tidak ditemukan!');
}
llist($id,$NIP,$nama,$tmpt_lahir,$tgl_lahir,$alamat,$telepon,$jabatan,$gaji) =
mysql_fetch_row($hasil);
?>
<form action="<?php echo $PHP_SELF ?>" method="POST">
<font size=5>Edit Data Pegawai CaboelzZz.Inc</font>
<p>
<p><table border=0 cellspacing=2 cellpadding=2>
<tr>

Be Enterprising Soul with mr-amateur.co.cc 115


<td>NIP</td>
<td>
<input type="hidden" name="form_id" value="<?php echo $id ?>" size="5"
maxlength="4">
<input type="text" name="form_nip" value="<?php echo $NIP ?> " size="5"
maxlength="4">
</td>
</tr>
<tr>
<td>Nama</td>
<td>
<input type="text" name="form_nama" value="<?php echo $nama ?>"
size="50" maxlength="50">
</td>
</tr>
<tr>
<td>Tempat Lahir</td>
<td>
<input type="text" name="form_tmpt_lahir" value="<?php echo $tmpt_lahir
?>" size="20"
maxlength="50">
</td>
</tr>
<tr>
<td>Tanggal Lahir</td>
<td>
<input type="text" name="form_tgl_lahir" value="<?php echo $tgl_lahir ?>"
size="20" maxlength="50">
</td>
</tr>
<tr>
<td>Alamat</td>
<td>
<input type="text" name="form_alamat" value="<?php echo $alamat ?>"
size="50" maxlength="50">
</td>
</tr>
<tr>
<td>Telepon</td>
<td>
<input type="text" name="form_telepon" value="<?php echo $telepon ?>"
size="25" maxlength="50">
</td>
</tr>

116 Be Enterprising Soul with mr-amateur.co.cc


<tr>
<td>Jabatan</td>
<td>
<input type="text" name="form_jabatan" value="<?php echo $jabatan ?>"
size="30" maxlength="50">
</td>
</tr>
<tr>
<td>Pendapatan</td>
<td>
<input type="text" name="form_gaji" value="<?php echo $gaji ?>"
size="20" maxlength="50" dir="rtl">
</td>
</tr>
</table>
<input name="simpan" type="submit" value=" Save ">
<input name="clear" type="reset" value=" Reset ">
</form>
<?php
mysql_free_result($hasil);
}
else {
$query = "UPDATE data_pegawai SET
id='".addslashes($form_id)."',
nip='".addslashes($form_nip)."',
nama='".addslashes($form_nama)."',
tmpt_lahir='".addslashes($form_tmpt_lahir)."',
tgl_lahir='".addslashes($form_tgl_lahir)."',
alamat='".addslashes($form_alamat)."',
telepon='".addslashes($form_telepon)."',
jabatan='".addslashes($form_jabatan)."',
gaji='".addslashes($form_gaji)."'
W HERE id='$form_id'";
$hasil = mysql_query($query)
or die('Kesalahan pada proses query!');
?> <center>
<font size=5>Proses Edit Berhasil!</font><p>
Data Pegawai Nama
<b><?php echo addslashes($form_nama) ?></b>
telah disimpan perubahannya.
<p>
<a href="<?php echo $PHP_SELF ?>">Klik di sini untuk kembali</a>
</center>
<?php

Be Enterprising Soul with mr-amateur.co.cc 117


}
?><center>
<a href="menampilkandata.php"> Back to menu </a></center>
<?php include"footer.php";?>

(Gambar 19.4.8)

19.4.9. Serach Engine

Search engine merupakan sebuah program untuk mencari data yang


kita butuhkan. Program ini mencari data dari quer y-query yang
tersimpan didalam database.

Untuk menambahkan program ini kedalam program Database Pegawai


CaboelzZz.Inc, kita harus membuat tiga program.

1. prosessrc.php

untuk memproses form search engine yang kita buat di program


menampilkandata.php

<?php
include "koneksi.inc.php";
if (!empty($nama)) {
$perintah="SELECT * FROM data_pegawai W HERE nama='$nama'";
$hasil=mysql_query($perintah);
$row=mysql_fetch_array($hasil);

118 Be Enterprising Soul with mr-amateur.co.cc


if ($row[nama]==$nama) {
session_start();
session_register("nama");
$nama=$row[nama];
$NIP=$row[NIP];
$tmpt_lahir=$row[tmpt_lahir];
$tgl_lahir=$row[tgl_lahir];
$alamat=$row[alamat];
$telepon=$row[telepon];
$jabatan=$row[jabatan];
$gaji=$row[gaji];
$nama=$row[nama];
$id=$row[id];
include "search_engine.php";
}
else {
include "search_error.php";
}
}
else {
include "search_error.php";
}
?>

2. search_engine.php

untuk menampilkan data pegawai yang kita cari melalui form search
engine.

<?php include"header.php";?>
<form action="prosessrc.php" method="post">
<table border="0" cellpadding="4" cellspacing="1">
<tbody><tr>
<td>Masukkan Kriteria Pencarian (Nama)</td>
</tr>
<tr>
<td><input name="nama" size="25" type="text">
<input name="Submit" value="GO!" type="submit ">
</td>
</tr>
</tbody></table>
</form> </div>
</div>
<?php

Be Enterprising Soul with mr-amateur.co.cc 119


include "koneksi.inc.php";
$perintah=mysql_query("SELECT *FROM data_pegawai")
or die (""); {
echo "<p><strong style=color:#226a7c>DATA YANG ANDA
MAKSUD</strong>\n";
echo "<p><b>";
echo "| $NIP |</font></td>\n";
echo "$nama |</font></td>\n";
echo "$tmpt_lahir |</font></td>\n";
echo "$tgl_lahir |</font></td>\n";
echo "$alamat |</font></td>\n";
echo "$telepon |</font></td>\n";
echo "$jabatan |</font></td>\n";
echo "Rp. $gaji |</font></td></b>\n";
}
?>
<p>&nbsp;</p>
<?php
require("koneksi.inc.php");
$query = "SELECT * FROM data_pegawai ";
$hasil = mysql_db_query($database, $query, $connect)
or die("Kesalahan pada query!");
echo"<table width=92% border=0 cellspacing=2 cellpadding=1
align=center>\n";
echo"<tr>\n";
echo"<td width=5%></td>\n";
echo"<td width=6%></td>\n";
echo"<td bgcolor=#226a7c width=7%>
<input type=hidden name=form_id value=$id size=5 maxlength=4><font
color=FFFFFF>NIP</font></td>\n";
echo"<td bgcolor=#226a7c width=15%>
<font color=FFFFFF>Nama</font></td>\n";
echo"<td bgcolor=#226a7c width=10%>
<font color=FFFFFF>Tempat Lahir</font></td>\n";
echo"<td bgcolor=#226a7c width=10%>
<font color=FFFFFF>Tanggal Lahir</font></td>\n";
echo"<td bgcolor=#226a7c width=10%>
<font color=FFFFFF>Alamat</font></td>\n";
echo"<td bgcolor=#226a7c width=12%>
<font color=FFFFFF>Telepon</font></td>\n";
echo"<td bgcolor=#226a7c width=12%>
<font color=FFFFFF>Jabatan</font></td>\n";
echo"<td bgcolor=#226a7c width=16%>
<font color=FFFFFF>Pendapatan</font></td>\n";

120 Be Enterprising Soul with mr-amateur.co.cc


echo"</tr>\n";
while(list($id,$NIP,$nama,$tmpt_lahir,$tgl_lahir,$alamat,$telepon,$jabatan,$g
aji) =mysql_fetch_row($hasil))
{
$gaji ="Rp.".$gaji;
echo "<tr>\n";
echo "<td bgcolor=#E6E6E6><font color=#000000>
<a href=\"edit_db.php?idpegawai=$id\">Edit</a></font></td>\n";
echo "<td bgcolor=#E6E6E6><font color=#000000>
<ahref=\"delete_db.php?idpegawai=$id\">Delete</a></font>
</td>\n";
echo "<td bgcolor=#E6E6E6>
<font color=#000000>$NIP</font></td>\n";
echo "<td bgcolor=#E6E6E6>
<font color=#000000>$nama</font></td>\n";
echo "<td bgcolor=#E6E6E6>
<font color=#000000>$tmpt_lahir</font></td>\n";
echo "<td bgcolor=#E6E6E6 align=center><font
color=#000000>$tgl_lahir</font></td>\n";
echo "<td bgcolor=#E6E6E6>
<font color=#000000>$alamat</font></td>\n";
echo "<td bgcolor=#E6E6E6><font
color=#000000>$telepon</font></td>\n";
echo "<td bgcolor=#E6E6E6>
<font color=#000000>$jabatan</font></td>\n";
echo "<td bgcolor=#E6E6E6 align=right>
<font color=#000000>$gaji</font></td>\n";
echo "</tr>\n";
}
echo "</table>\n";
mysql_free_result($hasil);
echo "<div style=padding-left:910px; padding-top:10px;>
<a href=tambah_db.php>Add</a></div>";
?>
<?php include"footer.php";?>

Be Enterprising Soul with mr-amateur.co.cc 121


(Gambar 19.4.9)

3. search_error.php

untuk menampilkan kesalahan apabila data pegawai tidak ada atau


tidak terdapat pada database pegawai CaboelzZz.Inc.

<?php include"header.php";?>
<p>&nbsp;</p>
<font face="Arial" size="2">
<CENTER>
<BR>
" <? echo $nama; ?> "
<?
echo("<p>Maaf Data yang anda cari tidak ada<BR>");
echo("Silahkan mencoba kembali");
?>
<?php include"footer.php";?>

122 Be Enterprising Soul with mr-amateur.co.cc


(Gambar 19.4.9.1)

Untuk menjalankan semua program yang kita buat tadi, caranya kita
buka di web browser ketik http://localhost/book/, lalu masukkan
username dan password admin yang telah anda buat sebelumnya
pada tabel admin.

  

Be Enterprising Soul with mr-amateur.co.cc 123


Daftar Pustaka

Pemrograman Web dengan PHP Revisi ke – 2, tahun 2004,


oleh Betha Sidik, Ir

Aplikasi Pemrograman Web Dinamis dengan PHP dan


MySQL, tahun 2004, oleh Bunafit Nugroho

Teknik Pemrograman PHP, tahun 2004, oleh Ivan Irawan,


http://ilmukomputer.com

Cara Gampang Belajar PHP di Windows! , tahun


2004, oleh Abe Poetra, http://ilmukomputer.com

Tutorial PHP, tahun 2009, oleh Gratcy Palma P Hutapea,


http://mr-amateur.co.cc

Tips-Trik PHP, tahun 2008, oleh Gratcy Palma P Hutapea,


http://geocities.com/caboel_is/

124 Be Enterprising Soul with mr-amateur.co.cc

Anda mungkin juga menyukai