You are on page 1of 63

1

INSTALASI PHP
Langka-langkah instalasi PHP dengan menggunakan xampplite. Xamplite adalah
program yang berisi paket aplikasi PHP-Apache dan Mysql yang sudah
terintegrasi dimana instalasi untuk ke-3 aplikasi tersebut hanya dilakukan sekali
saja. Kelemahannya adalah versi apache,php dan mysql tidak bisa dipilih sesuai
dengan keinginan user, paket ini sudah mencakup versi-versi yang kompatibel
antara php-apache dan mysql.
Langka-langkah instalasi adalah sebagai berikut :
1) Download file xampplite.zip dibagian download
2) Ekstrak file tersebut sehingga menjadi xampplite-win32-1.5.3a.exe

3) Double klik file xampplite-win32-1.5.3a.exe dan pilih lokasi instalasi di d:\

4) Maka akan ada direktori baru di d:\ yaitu d:\xampplite
5) Setelah proses instalasi selesai lihat di direktori instalasi tersebut (xampplite)
dan jalankan file xampp-start.exe
6) Akan muncul jendela ms-dos dan memberitahukan bahwa program is starting
now (minimize jendela tersebut, jangan di tutup).
7) Direktori kerja berada di dalam folder instalasi ->htdocs ->xampp atau
d:\xampplite\htdocs\xampp\
8) Buatlah folder baru sesuai dengan nama anda, misal : agus, maka path
direktori kerja adalah d:\xampplite\htdocs\xampp\agus\







Agus Ramdhani Nugraha, MT.
2
PENGENALAN PHP


I. SCRIPT PHP

PHP pada awalnya merupakan Personal Home Page dan secara resmi menjadi
PHP Hypertext Preprocessor. PHP adalah bahasa script pemrograman web
server side yang bisa disisipkan pada script html. Script php dimulai dengan tag
awal <?php dan diakhiri dengan tag akhir ?>
Berikut adalah script php yang disisipkan pada script html
latihan_Ia.php












Script diatas sama tampilannya dengan script dibawah ini :
latihan_Ib.php









Atau sama dengan script di bawah ini :
latihan_Ic.php











<ht ml >
<head>
<t i t t l e>Lat i han I a</ t i t l e>
</ head>
<body>
<?php
echoI ni adal ah kal i mat yang di t ul i s dengan
php;
?>
</ body>
</ ht ml >
<ht ml >
<head>
<t i t t l e>Lat i han I b</ t i t l e>
</ head>
<body>
I ni adal ah kal i mat yang di t ul i s dengan ht ml
</ body>
</ ht ml >
<?php
echo<ht ml >;
echo<head>;
echo<t i t t l e>Lat i han I c</ t i t l e>;
echo</ head>;
echo<body>;
echoI ni adal ah kal i mat yang di t ul i s dengan php
mur ni ;
echo</ body>;
echo</ ht ml >;
?>
Agus Ramdhani Nugraha, MT.
3

Meskipun isi scriptnya berbeda tapi tampilannya sama yaitu memunculkan
tulisan. Latihan_Ia.php disebut embedded script yang artinya script php
ditempelkan pada script html, Latihan-Ib.php disebut script html murni dan
latihan_Ic.php disebut script php murni atau lebih dikenal dengan non-
embedded script.
Script yang disarankan adalah embedded script (Latihan_Ia.php), hal ini untuk
mempermudah penelusuran kesalahan.

II. KOMENTAR

Ada 3 jenis komentar dalam php
1) /* isi komentar */ ->Cara penulisan komentar bahasa C
2) // isi komentar ->Cara penulisan komentar bahasa C++
3) #isi komentar -> Cara penulisan komentar script bourne di
unix/linux
<ht ml >
<head>
<t i t t l e>Lat i han I d</ t i t l e>
</ head>
<body>
<?php
/ / i ni adal ah koment ar car a ke- 2 dan t ak akan
di t ampi l kan
echoI ni adal ah kal i mat yang di t ul i s dengan php;
/ *
I ni j uga koment ar dan t ak akan di t ampi l kan
Koment ar i ni mer upan car a penul i san koment ar
dengan menggunakan car a ke- 1
*/
?>
</ body>
</ ht ml >
Yang sering digunakan adalah no 1 dan 2, jika komentar terdiri dari banyak
baris maka digunakan cara ke 1 tetapi jika hanya satu atau beberapa baris
digunakan cara 2 dan 3 dengan ketentuan untuk ketiga cara tersebut adalah
komentar ditulis didalah tag php
Misal :
latihan_Id.php



















III. TAG <SCRIPT >

pasangan tag <script>bisa digunakan untuk menggantikan pasangan tag awal
<?php dan tag akhir ?>
Misal :
Agus Ramdhani Nugraha, MT.
4
<ht ml >
<head>
<t i t t l e>Lat i han I e</ t i t l e>
</ head>
<body>
<scr i pt l anguage=php>
echoI ni adal ah kal i mat yang di t ul i s dengan
t ag scr i pt ;
</ scr i pt >
</ body>
</ ht ml >
latihan_Ie.php












Inti dari penggunaan tag<script>adalah mengubah tag awal <?php dan tag
akhir ?>. pada Latihan_Ie.php merupakan modifikasi dari Latihan_Ia.php
dengan menambahkan <scrip language=php>untuk mengganti <?php dan
</script>untuk mengganti tag akhir ?>

<ht ml >
<head>
<t i t t l e>Lat i han I f </ t i t l e>
</ head>
<body>
<?php
$nama = Agus Ramdhani ;
$Nama = Agus Ramdhani Nugr aha;
echoI si var i abl e \ $nama = $nama;
echo<br >;
echoI si var i abl e \ $Nama = $Nama;
?>
</ body>
</ ht ml >
IV. CASE SENSITIVE

Php case sinsitive artinya bahasa pemrograman php membedakan tulisan besar
dan kecil. Misal $nama =Agus Ramdhani; berbeda dengan $Nama =Agus
Ramdhani Nugraha; meskipun kedua variable tersebut memiliki nilai string
yang sama.
latihan_Jika.php














Terlihat bahwa $nama dan $Nama adalah berbeda, penulisan variable seperti itu
disebut case sensitive dimana php membedakan antara N besar dan n kecil.





Agus Ramdhani Nugraha, MT.
5
VARIABEL DAN TIPE_TIPE DATA


I. SYARAT-SYARAT VARIABLE

Variabel dalam php diawali dengan karakter $ (dollar) dan diikuti dengan nama
variable tanpa spasi.
$nama_mhs =Agus; // betul
$nama mhs =Agus; // salah
$nama/mhs =Agus; // salah
$nama?mhs =Agus; // salah
Antara nama dan mhs tidak boleh ada spasi dan tanda baca kecuali tanda ( _ ).
Ada beberapa penamaan variable yang tidak bisa digunakan sebagai variable
diantaranya :
$HTTP_POST_VARS atau $_POST
$HTTP_GET_VARS atau $_GET
$HTTP_SERVER_VARS atau $_SERVER
$GLOBALS
$HTTP_COOKIE_VARS atau $_COOKIE
$HTTP_POST_FILES atau $_FILES
$HTTP_ENV_VARS atau $_ENV
$REQUEST
$HTTP_SESSION_VARS atau $_SESSION
variabel-variabel tersebut tidak bisa digunakan karena merupakan variable
default php yang mempunyai fungsi-fungsi tertentu yang akan dibahas pada bab
tersendiri.

Kata Kunci GLOBAL
var01.php











Script diatas tidak akan menampilkan angka 1 karena variabel $a merupakan
variabel global sedangkan variable $a dialam fungsi Test merupakan variable
lokal khusus untuk variable yang ada didalam fungsi Test.
Untuk memunculkan data yang ada dalam variable $a dapat dilakukan dengan
beberapa cara : memindahkan $a =1; kedalam fungsi Test, menuliskan global
$a ;didalam fungsi test. Dan jika didalam fungsi Test dibuatkan variable $a =4;
<?php
$a = 1; / * var i abel gl obal */

function Test ( )
{
echo $a; / * var i abel l okal */
}

Test ( ) ;

?>
Agus Ramdhani Nugraha, MT.
6
maka yang akan ditampilkan adalah angka 4 bukan angka 1 meskipun ada
variable $a yang nilainya 1, tetapi yang diambil adalah variable $a yang
angkanya 4 karena berada didalam fungsi Test.
var02.php













Terlihat dalam script diatas bahwa variable $a dan $b diglobalkan didalam
fungsi J umlah sehingga nilai $a menjadi 1 dan Variable $b menjadi 2. Maksud
di globalkan disini adalah nilai variable $a dan $b nilai globalnya dijadikan
milik fungsi J umlah
Kesimpulannya adalah nilai $b berubah sesudah melewati fungsi, tetapi nilai
variable $b akan tetap bernilai 2 sebelum melewati fungsi J umlah.
Latihan : coba modJ ikaikasi script diatas sehingga menampilkan 1+2=3
var03.php












Pada script dibawah terlihat bahwa variable $GLOBALS['a'] mewakili variable
$a yang diglobalkan didalam fungsi J umlahkan. Hasil dari penjumlahan 2 dan 4
bisa ditampilkan dengan menggunakan echo$GLOBALS[ ' b' ] ;
Latihan : coba modJ ikaikasi script diatas sehingga menampilkan 2+4=6






<?php
$a = 1;
$b = 2;
function J uml ah( )
{
global $a, $b;

$b = $a + $b;
}

J uml ah( ) ;
echo $b;
?>
<?php
$a = 2;
$b = 4;

f unct i on J uml ahkan( )
{
$GLOBALS[ ' b' ] = $GLOBALS[ ' a' ] + $GLOBALS[ ' b' ] ;
}

J uml ahkan ( ) ;
echo $b;
?>
Agus Ramdhani Nugraha, MT.
7
var04.php

$a berisi string hello, ${$a} berisi string world dan variable $hello berisi string
world. $hello berisi string world karena $$a menjadi $(isi dari variable $a) yaitu
hello maka $hello

var05.php


$hai berisi string agus karena $$a =${$a} dan $a berisi hai jadi $hai =agus;,
variabel $agus berisi manis karena $+$$a menjadi $$$a dan isi dari $$$a =
manis;

Variabel-variable diluar PHP

var06.php

Script diatas akan menampilkan 2 input form dengan method POST. Kedua
input mempuanyai parameter bernama user dan email. Nilai dari ke-dua variable
tadi tergantung dari kalimat yang dimasukan kedalam formulir. Action
menunjukkan bahwa parameter akan dikirim ke file var07.php.

var07.php

<?php
$a = ' hel l o' ;
$$a = ' wor l d' ;

echo " $a ${$a}" ;
echo" <br >" ;
echo " $a $hello" ;
?>
<?php
$a = ' hai ' ;
$$a = ' agus' ;
$$$a = m ' ' ani s ;
echo " $a $hai $agus" ;
?>
<f or mact i on=" var 07. php" met hod=" post " >
Nama: <i nput t ype=" t ext " name=" user " / ><br / >
Emai l : <i nput t ype=" t ext " name=" emai l " / ><br / >
<i nput t ype=" submi t " name=" submi t " val ue=" KI RI M" / >
</ f or m>
<?php
echo $_POST[ ' user ' ] ;
echo" <br >" ;
echo $_REQUEST[ ' user ' ] ;
echo" <br >" ;
echo $_POST[ ' emai l ' ] ;
echo" <br >" ;
echo $_REQUEST[ ' emai l ' ] ;

?>
Agus Ramdhani Nugraha, MT.
8
Dengan cara $_POST[user]; dan $_REQUEST['user']; parameter yang
dikirimkan dari file var06.php akan ditangkap dan ditampilkan, begitu juga
dengan parameter email.

Lebih jauh mengenai varable-variable formulir
var08.php


























Ketika pertama kali script dipanggil maka variabel kirim_form tidak bernilai
ada sehingga akan ditampilkan proses yang ada didalam else yaitu menampilkan
form input text nama dan email serta select option (combo box pada delphi)
yang berisi jurusan. Setelah tombol KIRIM ditekan maka variable kirim_form
yang bertipe hidden dengan nilai (ada) akan dikirim sehingga proses akan
menampilkan hasil dari string yang diinputkan oleh user.

$_SERVER[ ' PHP_SELF' ] adalah variable internal yang berfungsi sebagai
alamat atau link ke file itu sendiri. Pada File var08.php terdapat
<a hr ef =" ' . $_SERVER[ ' PHP_SELF' ] . ' " >
itu sama artinya dengan
<a hr ef =" var 08. php" >.
Dengan menggunakan
<a hr ef =" ' . $_SERVER[ ' PHP_SELF' ] . ' " >
meskipun nama file diubah maka kita tidak perlu merubah linknya.
<?php
$nami na = $_POST[ ' ngar an' ] ;
$i mel na = $_POST[ ' i mel ' ] ;
$j ur usana = $_POST[ ' j ur usan' ] ;
if ( $_POST[ ' ki r i m_f or m' ] == ' ada' )
{
echo ' <pr e>' ;
echo" $namina r >" ; <b
echo" $imelna<br >" ;
echo" $jurusana<br >" ;
echo ' <a hr ef =" ' . $_SERVER[ ' PHP_SELF' ] . ' " >Si l ahkan Coba
Lagi </ a>' ;
echo ' </ pr e>' ;
}
?>
else {
<f or mact i on=" <?php echo $_SERVER[ ' PHP_SELF' ] ; ?>" met hod=" post " >
Nama: <i nput t ype=" t ext " name=" ngar an" / ><br / >
Emai l : <i nput t ype=" t ext " name=" i mel " / ><br / >
J ur usan <br / >
<sel ect name=" j ur usan" >
<opt i on val ue=" t i " >Tekni k I nf or mat i ka</ opt i on>
<opt i on val ue=" mi " >Manaj emen I nf or mat i ka</ opt i on>
<opt i on val ue=" si " >Si st emI nf r omasi </ opt i on>
</ sel ect ><br / >
<i nput t ype=" hi dden" name=" ki r i m_f or m" val ue=" ada" / >
<i nput t ype=" submi t " name=" submi t " val ue=" Ki r i m" / >
</ f or m>
<?php
}
?>
Agus Ramdhani Nugraha, MT.
9

Untuk tombol KIRIM bisa diganti dengan image/gambar sehingga tampilan bisa
disesuaikan dengan kehendak programmer. Script yang digunakan :

<input type="image" src="image.gJ ika" name="tombol" />


II. TIPE_TIPE DATA

PHP mendukung 8 tipe data primitive
Boolean
Nilai boolean terdiri dari dua kemungkinan yaitu TRUE (1) dan FALSE
(Kosong).
tipe01.php







$agus akan bernilai 1 karena type data booleannya True dan variable
$ramdhani akan bernilai kosong karena type data booleannya False.
tipe02.php















Latihan : coba ubah tampilan script diatas menjadi kebalikannya, komentar
script merupakan proses yang ditampilkan. Ubah True menjadi False dan
kebalikannya juga.
Ketika akan mengubah ke tipe data boolean maka nilai yang akan
dimasukan dianggap bernilai False, misalnya
<?php
$agus = Tr ue; / / dekl ar asi TRUE pada $agus
echo" Ni l ai agus = $agus" ; / / akan ber ni l ai 1
echo<br >;
$r amdhani = Fal se; / / dekl ar asi Fal se pada $agus
echo" Ni l ai r amdhani = $r amdhani " ; / / akan ber ni l ai kosong
?>
<?php
var _dump( ( bool ) " " ) ; / / bool ( f al se)
echo" <br >" ;
var _dump( ( bool ) 1) ; / / bool ( t r ue)
echo" <br >" ;
var _dump( ( bool ) - 2) ; / / bool ( t r ue)
echo" <br >" ;
var _dump( ( bool ) " f oo" ) ; / / bool ( t r ue)
echo" <br >" ;
var _dump( ( bool ) 2. 3e5) ; / / bool ( t r ue)
echo" <br >" ;
var _dump( ( bool ) ar r ay( 12) ) ; / / bool ( t r ue)
echo" <br >" ;
var _dump( ( bool ) " f al se" ) ; / / bool ( t r ue)
?>
Nilai boolean yang False dengan sendirinya (misal pada tipe01.php)
Nilai integer 0 (nol)
Agus Ramdhani Nugraha, MT.
10
tipe03.php
<?php
$angka1 = $_POST[ ' angka' ] ;

I f ( $_POST[ ' ki r i m_f or m' ] == ' ada' )
{
I f ( $angka1 == TRUE)
{
echo ' <pr e>' ;
echo" $angka1<br >" ;
echo ' <a hr ef =" ' . $_SERVER[ ' PHP_SELF' ] . ' " >Si l ahkan Coba
Lagi </ a>' ;
echo ' </ pr e>' ;
}
el se
{
echo ' <pr e>' ;
echo" Yang anda masukan adal ah 0 at au kosong<br >" ;
echo ' <a hr ef =" ' . $_SERVER[ ' PHP_SELF' ] . ' " >Si l ahkan Coba
Lagi </ a>' ;
echo ' </ pr e>' ;
}
}
el se
{
?>
<f or mact i on=" <?php echo $_SERVER[ ' PHP_SELF' ] ; ?>"
met hod=" post " >
Masukan sembar ang ni l ai : <i nput t ype=" t ext " name=" angka"
/ ><br / >
<i nput t ype=" hi dden" name=" ki r i m_f or m" val ue=" ada" / >
<i nput t ype=" submi t " name=" submi t " val ue=" Ki r i m" / >
</ f or m>
<?php
}
?>
Ketika memasukan nilai bukan 0 atau kosong(empty) maka akan
ditampilkan hasil inputannya else akan dikeluarkan peringatan bahwa
nilai yang dimasukan adalah 0 atau kosong.

Nilai float 0.0
String yang kosong atau string bernilai 0
Array dengan element 0
Objek dengan variabel anggota 0
NULL

Integer
tipe04.php
<?php
$a = 1234; / / nomor desi mal
$b = - 123; / / nomor negat J i ka
$c = - 0123; / / okt al ( 83 deci mal )
$d = 0x1A; / / hexadeci mal ( 26 deci mal )
Agus Ramdhani Nugraha, MT.
11
echo" $a<br >$b<br >$c<br >$d" ;
?>
Struktur integr yang munkin adalah :
decimal : [1-9][0-9] misal 1234
hexadicimal : 0[xX][0-9a-fA-F] misal : 0x9aA
oktal : 0[0-7] misal : 0999
integer : [+-]decimal | [+-]hexadecimal | [+-]oktal

Float
$nomor =10.24
$nomber =0.123

String
Tipe data string ditandai dengan tanda petik tunggal atau tanda petik data.
$nama =agus;
$nami =agus ramdhani;

Array
Array adalah variable yang mempunya banyak elemen, yang diacu dengan
nama yang sama. misal :
tipe05.php
<?php
$var _ar r ay = ar r ay( " agus" => " mani s" , " benar " => t r ue) ;
echo $var _ar r ay[ " agus" ] ; / / mani s
echo" <br >" ;
echo $var _ar r ay[ " benar " ] ; / / 1
?>
$var_array adalah variable yang memiliki 2 elemen yaitu agus dan benar,
agus bernilai manis dan bernilai bernilai True(1).

Array didalam array
tipe06.php
<?php
$ar r = ar r ay( " somear r ay" => ar r ay( 6 => 5, 13 => 9, " a" => 42) ) ;

echo $ar r [ " somear r ay" ] [ 6] ; / / 5
echo $ar r [ " somear r ay" ] [ 13] ; / / 9
echo $ar r [ " somear r ay" ] [ " a" ] ; / / 42
?>
$arr["somearray"] memiliki 3 elemen yaitu 6,13 dan a
Lebih jauh tentang array akan dibahas pada bab tersendiri

Objek
Tipe data objek merupakan pengembangan PHP untuk mendukung
pemrograman berorientasi objek Tipe data objek adalah tipe data yang
didalamnya mengandung data dan metode.


Agus Ramdhani Nugraha, MT.
12
tipe07.php
<?php
cl ass obj ek
{
f unct i on pr oses_obj ek( )
{
echo " Pr oses Obj ek 1" ;
}
f unct i on pr oses_obj ek2( )
{
echo " Pr oses Obj ek 2" ;
}
}

$var _bar u = new obj ek;
$var _bar u- >pr oses_obj ek( ) ;
echo" <br >" ;
$var _bar u- >pr oses_obj ek2( ) ;
?>
Data objek didefiniskan dengan membuat sebuah kelas, variable yang
bertipe objek diinisialisasikan dengan menggunakan new diikuti nama
objek.
$var _bar u = new obj ek;
Metode didalam objek biasanya berupa fungsi.

Resources
Tipe data resources adalah variable khusus yang menjadi referensi ke
resorce dari luar, misal ke mysql. resource dibuat dan digunakan oleh fungsi
khusus.

NULL
tipe08.php
<?php
$var = NULL;
echo" I si dar i var i bael NULL adal ah = $var " ;
?>
Hanya ada satu nilai dari tipe data NULL yaitu kalimat NULL ditulis
dengan huruf besar semua dan isi dari $var adalah kosong jika ditampilkan.












Agus Ramdhani Nugraha, MT.
13
Konstanta adalah sebuah pengenal untuk sebuah nilai yang sederhana,
setelah nama diberikan/dideklarasikan nilai tidak bisa berubah selama proses
eksekusi dari script tersebut (kecuali untuk konstatnta magic yang tidak
konstant). Konstanta defaultnya case-sensitive Berdasarkan ketentuan dan
kebiasaan konstatnta selalu ditulis dengan huruf kapital. Ketentuan menulis
konstanta adalah sebagai berikut. [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]
Dengan demikian penulisan konstanta tidak boleh diawali dengan angka

<?php

/ / konst ant a yang benar
def i ne( " FOO" , " somet hi ng" ) ;
def i ne( " FOO2" , " somet hi ng el se" ) ;
def i ne( " FOO_BAR" , " somet hi ng mor e" ) ;

/ / konst ant a yang sal ah
def i ne( " 2FOO" , " somet hi ng" ) ;
?>

kontanta01.php
<?php
def i ne( " CONSTANT" , " Hel l o wor l d. " ) ;
echo CONSTANT; / / kel uar annya Hel l o wor l d.
echo" <br >" ;
echo Const ant ; / / kel uar nnya Const ant
?>

Perbedaan penulisan sangat berpengaruh dalam penamaan konstanta.

konstanta02.php
<?php
def i ne( " CONSTANT" , " Hel l o wor l d. " ) ;
echo CONSTANT;
echo Const ant ;
def i ne( " GREETI NG" , " Hel l o you. " , t r ue) ;
echo GREETI NG; / / kel uar annya " Hel l o you. "
echo Gr eet i ng; / / kel uar annya " Hel l o you. "
?>
Dengan menggunakan nilai TRUE konstanta akan ditetapkan case-insesitive
artinya konstanta tidak membedakan besar dan kecil tulisan seperti pada
konstanta GREETING.

Ada beberapa perbedaan antara konstanta dan variabel
1) Konstanta tidak diawali dengan tanda $
2) Konstanta didefinisikan dengan fungsi define()
3) Konstanta bisa diakses dimana saja

Konstanta Magic
konstanta03.php
<?php

KONSTANTA
Agus Ramdhani Nugraha, MT.
14
def i ne( " __LI NE__" ) ;
echo __LI NE__;
echo" <br >" ;
def i ne( " __FI LE__" ) ;
echo __FI LE__;

?>
Konstanta __LINE__ merupakan fungsi yang menunjukkan urutan baris
dimana script dituliskan.
Konstanta __FILE__ merupakan fungsi yang menunjukkan path file yang
mengandung script tersebut.

konstanta04.php
<?php

def i ne( " MAXSI ZE" , 100) ;

echo MAXSI ZE;
echo" <br >" ;
echo const ant ( " MAXSI ZE" ) ; / / sama dengan yang di at as

?>



























Agus Ramdhani Nugraha, MT.
15
Operator adalah sesuatu yang digunakan untuk memanipulasi data terhadap satu
atau lebih data.
Operator dibedakan menjadi :
1) Operator Aritmetika
2) Operator String
3) Operator increment/decrement
4) Operator Logika (bitwise)
5) Operator Ternary
6) Operator Perbandingan
7) Operator Assigment
8) Operator Kontrol Error
9) Operator Eksekusi

I. Operator Aritmetika
Contoh Nama Hasil
-$a Negasi Nilai sebaliknya dari $a.
$a +$b Penjumlahan J umlah $a dan $b
$a - $b Pengurangan Selisih $a dan $b
$a * $b Perkalian Hasil kali $a dan $b
$a / $b Pembagian Bilangan bulat dari $a dibagi $b
$a % $b Modulud Sisa pembagian dari $a dibagi $b.

operator01.php
<?php
/ / ni l ai awal
$a = 8;
$b = 3;
/ / oper asi
$negasi = - $a;
$t ambah = $a + $b;
$kur ang = $a - $b;
$kal i = $a * $b;
$bagi = $a / $b;
$modul us = $a %$b;
/ / yang di t ampi l kan
echo" Ni l ai Awal <br >" ;
echo" \ $a = 8" ;
echo" <br >" ;
echo" \ $b = 3" ;
echo" <br >" ;
echo" Hasi l Oper asi <br >" ;
echo" - \ $a = $negasi " ;
echo" <br >" ;
echo" \ $a + \ $b = $t ambah<br >" ;
echo" \ $a - \ $b = $kur ang<br >" ;
echo" \ $a * \ $b = $kal i <br >" ;
echo" \ $a / \ $b = $bagi <br >" ;
echo" \ $a %\ $b = $modul us<br >" ;
OPERATOR
Agus Ramdhani Nugraha, MT.
16
?>

Pada script diatas terdapat variable $modulus yang merupakan sisa bagi dari
8/3. Ketika 8 % 3 maka yang keluar adalah hasilnya 2 karena yang paling
mendekati perkalian dengan angka 3 adalah 2 (3 x 2 =6) dan bukan (3 x 3 =9)
karena sembilan sudah melebihi nilai dari angka 8. Ketika 3 x 2 sama dengan 6
maka sisa nya untuk mencapai angka 8 adalah 2 sehingga 8 % 3 =2.

II. Operator String
Contoh Nama Hasil
$a.$b Concatenation Gabungan string $a dan $b

operator02.php
<?php
/ / ni l ai awal
$a = 8;
$b = 3;
/ / oper asi
$gabung = $a. $b;
/ / yang di t ampi l kan
echo" Ni l ai Awal <br >" ;
echo" \ $a = 8<br >\ $b =
3<br >" ;
echo" Hasi l Oper asi <br >" ;
echo" - \ $a . \ $b =
$gabung" ;

?>
Hasil dari script diatas adalah 83 karena 8 dan 3 digabungkan artinya operasi
concatenation adalah operasi penggabungan.

III. Operator increment/decrement
Cintoh Nama Hasil
++$a Pre-increment Tambahkan $a dengan 1, hasilnya masukan ke dalam $a
$a++ Post-increment Berikan nilai $a, kemudian tambahkan 1 kepada $a.
--$a Pre-decrement Kurangkan $a dengan 1, hasilnya masukkan ke dalam $a
$a-- Post-decrement Berikan nilai $a kemudian kurangkan 1 kepada $a

operator03.php
<?php

echo " <h3>Post i ncr ement </ h3>" ;
$a = 5;
echo" \ $a = $a<br >" ;
echo " Dengan \ $a++ t et ap : " . $a++ . " <br / >\ n" ;
echo " Kemudi an Menj adi : " . $a . " <br / >\ n" ;

echo " <h3>Pr ei ncr ement </ h3>" ;
Agus Ramdhani Nugraha, MT.
17
$a = 5;
echo" \ $a = $a<br >" ;
echo " Dengan ++\ $a menj adi : " . ++$a . " <br / >\ n" ;
echo " t et ap : " . $a . " <br / >\ n" ;

echo " <h3>Post decr ement </ h3>" ;
$a = 5;
echo" \ $a = $a<br >" ;
echo " Dengan \ $a- - t et ap : " . $a- - . " <br / >\ n" ;
echo " Kemudi an Menj adi : " . $a . " <br / >\ n" ;

echo " <h3>Pr edecr ement </ h3>" ;
$a = 5;
echo" \ $a = $a<br >" ;
echo " Dengan - - \ $a menj adi : " . - - $a . " <br / >\ n" ;
echo " Kemudi an Tet ap : " . $a . " <br / >\ n" ;
?>

operator04.php
<?php
$i = ' A' ;
f or ( $n=1; $n<6; $n++)
{
echo ++$i . " <br >" ;
}
?>
Pada script operator06.php nilai $i naik satu tingkat-satu tingkat yang dimulai
dari B karena diakibatkan $n++dan $n huruf kurang dari 6.

IV. Operator Logika(bitwise)
Contoh Nama Hasil
$a & $b And
Nilai bernilai 1 jika kedua bit pada posisi yang sama bernilai
1
$a | $b Or
Nilai bernilai 1 jika salah satu bit pada posisi yang sama
dalam $a dan $b bernilai 1
Tabel and
a b a&b
0 0 0
1 0 0
0 1 0
1 1 1

operator05
<?php
$ni l ai _a = 4;
$ni l ai _b = 8;
echo" <h3>Penggunaan Oper at or AND</ h3><br >" ;
/ / kedua ni l ai har us ber ni l ai sama
J i ka( $ni l ai _a == " 4" and $ni l ai _b == ' 8' )
{
Agus Ramdhani Nugraha, MT.
18
echo" Benar j i ka kedua ni l ai ber ni l ai benar " ;
}
el se
{
echo" Sal ah j i ka sal ah sat u at au ke dua ni l ai ber ni l ai
sal ah" ;
}

?>

J ika kedua variable ($nilai_a atau $nilai_b) bernilai benar akan dianggap benar
maka akan diproses echo"Benar jika kedua nilai bernilai benar";
J ika salah satu variable ($nilai_a atau $nilai_b) ada yang tidak benar akan
dianggap salah maka diproses echo"Salah jika salah satu atau ke dua nilai
bernilai salah";

Tabel or
a b a|b
0 0 0
1 0 1
0 1 1
1 1 1

operator06.php
<?php
$ni l ai _a = " agus" ;
$ni l ai _b = " suga" ;
echo" <h3>Penggunaan Oper at or OR</ h3><br >" ;
/ / sal ah sat u ni l ai benar
/ / coba di bul ak bal i k dan coba j uga t i dak ada yang sama
J i ka( $ni l ai _a == " agus" OR $ni l ai _b == " suga" )
{
echo" Benar j i ka sal ah sat u ni l ai at au keduanya benar " ;
}
el se
{
echo" Sal ah j i ka dan hanya j i ka ke dua ni l ai sal ah" ;
}
?>
J ika salah satu nilai atau keduanya benar maka akan diproses echo"Benar jika
salah satu nilai atau keduanya benar";. J ika kedua nilai salah maka akan diproses
echo" Salah jika dan hanya jika ke dua nilai salah";.

V. Operator Ternary
Sintaksnya : (Ekspresi1)? (Ekspresi2) : (Ekspresi3);
Ekspresi satu dievaluasi, apabila bernilai benar maka Ekspresi2 diproses dan
jika bernilai salah maka Ekspresi3 diproses.

operator07.php
<?php
Agus Ramdhani Nugraha, MT.
19
$ni l ai _a = " agus" ;
$ni l ai _b = " suga" ;
echo" <h3>Penggunaan Oper at or Tr enar y</ h3><br >" ;
( $ni l ai _a == $ni l ai _b) ? ( $hasi l = " benar " ) : ( $hasi l =" sal ah" ) ;
echo" $hasi l " ;
?>
($nilai_a ==$nilai_b) =Ekspresi1
($hasil ="benar") =Ekspresi2
($hasil ="salah") =Ekspresi3
Hasil dari program/script diatas adalah salah karena $nilai_a dan $nilai_b tidak
sama sehingga diproses Ekspresi3.
J ika $nilai_b =suga; diubah menjadi $nilai_b =agus; maka bisa dipastikan
bahwa ekspresi1 yang akan diproses.

VI. Operator Perbandingan
Contok Nama Hasil
$a ==
$b
Sama dengan BENAR J ika $a sama dengan $b.
$a ===
$b
Identik
BENAR J ika $a sama dengan $b, atau typenya tidak
sama. (mulai PHP 4)
$a !=$b Tidak Sama BENAR J ika $a tidak sama dengan $b.
$a <>$b Tidak Sana BENAR J ika $a tidak sama dengan $b.
$a !==
$b
Tidak Identik
BENAR J ika $a tidak sama dengan $b, atau typenya
tidak sama. (mulai PHP 4)
$a <$b Lebih Kecil BENAR J ika $a lebih kecil dari $b.
$a >$b Lebih Besa BENAR J ika $a lebih besar dari $b.
$a <=$b
Lebih kecil sama
dengan
BENAR J ika $a lebih kecil sama dengan $b.
$a >=$b
Lebih besar sama
dengan
BENAR J ika $a lebih besar sama dengan $b.

operator08.php
<?php
$ni l ai _a = 8;
$ni l ai _b = " 8" ;
echo" <h3>Penggunaan Oper at or Pembandi ng</ h3><br >" ;
echo" \ $ni l ai _a = $ni l ai _a <br > \ $ni l ai _b = $ni l ai _b<br ><br >" ;
i f ( $ni l ai _a == $ni l ai _b)
{
echo" \ $ni l ai _a == \ $ni l ai _b<br >" ;
}
i f ( $ni l ai _a === $ni l ai _b)
{
echo" \ $ni l ai _a === \ $ni l ai _b j i ka t i pe dat anya sama<br >" ;
}
i f ( $ni l ai _a ! = $ni l ai _b)
Agus Ramdhani Nugraha, MT.
20
{
echo" \ $ni l ai _a ! = \ $ni l ai _b<br >" ;
}
i f ( $ni l ai _a <> $ni l ai _b)
{
echo" \ $ni l ai _a <> \ $ni l ai _b<br >" ;
}

i f ( $ni l ai _a ! == $ni l ai _b)
{
echo" \ $ni l ai _a ! == \ $ni l ai _b ( t i dak i dent i k) j i ka t i pe
dat anya t i dak sama<br >" ;
}
i f ( $ni l ai _a > $ni l ai _b)
{
echo" \ $ni l ai _a > \ $ni l ai _b<br >" ;
}
i f ( $ni l ai _a < $ni l ai _b)
{
echo" \ $ni l ai _a < \ $ni l ai _b<br >" ;
}
i f ( $ni l ai _a >= $ni l ai _b)
{
echo" \ $ni l ai _a >= \ $ni l ai _b<br >" ;
}
i f ( $ni l ai _a <= $ni l ai _b)
{
echo" \ $ni l ai _a <= \ $ni l ai _b<br >" ;
}

$j ml = $ni l ai _a + $ni l ai _b;
echo" $j ml " ;
?>
Pada script diatas terlihat bahwa 8 dan 8 adalah sama tapi tidak identik.
Karena 8 dianggap integer dan 8 dianggap string. Pada PHP string 8 dan
integer 8 jika masuk kedalam operasi perhitungan maupun perbandingan maka
aakan dianggap interger, hal itu bisa dibuktikan pada hasil pertambahan antara
$nilai_a dan $nilai_b dengan menghasilkan 16.

VII. Operator Assigment
Operator assigment/penugasan ditandai dengan simbol =, secara tanda
merupakan sama dengan tetapi bukan itu. tanda =disinni berarti bahwa operand
disebelah kiri =mendapatkan nilai yang berada disebelah kanan =.

$a = ( $b = 4) + 5;
/ / $a akan ber i si 9 , dan $b mendapat i si 4.

operator09.php
<?php

$a = 3;
$a += 5; / / set $a dengan i si 8, at au $a = $a + 5;
$b = " Hel l o " ;
$b . = " Ther e! " ; / / set $b dengan i si " Hel l o Ther e! " , seper t i $b
Agus Ramdhani Nugraha, MT.
21
= $b . " Ther e! " ;

echo" $a<br >" ;
echo" $b<br >" ;
?>


VIII. Operator Kontrol Error
Php mendukung operator error kontrol dengan syarat bahwa track_errors pada
file konfigurasi (php.ini) di set On.
operator10.php
<?php
/ / scr i pt unt uk koneksi ke dat abase
/ / akan muncul er r or yang di aki bat kan koneksi ke db gagal
/ / j i ka ser ver l ocal host j al an maka akan di cek user dan
passwor dnya
/ / kar ena t i dak ada user agus dan passwor d mani s maka muncul
er r or t sb
$konek = mysql _connect ( " l ocal host " , " agus" , " mani s" ) or
di e ( " Kesal ahan ' $php_er r or msg' " ) ;
i f ( $konek)
{
echo" Koneksi ke dat abase benar " ;
}
?>
Dan jika koneksi ke database benar kama akan tampil Koneksi ke database
benar. Coba ubah user dan password menjadi

$konek =mysql_connect("gentayangan","mhs","mhs")

Maksud dari script diatas adalah, lakukan koneksi ke komputer mysql server
dengan nama komputer gentayangan dengan user mhs dan password mhs.
karena di server tsb ada user mhs dengan password mhs maka koneksi benar.

IX. Operator Eksekusi
Operator eksekusi adalah suatu perintah yang dimasukan kedalam variable.
Perintah tersebut dibuat ke dalam variable dengan ketentuan dimaukan ke dalam
tanda backticks dan hanya berlaku di lingkungan *.nix(Unix dan Linux) dengan
web servernya apache.

<?php
$kel uar annya = `l s - l `;
echo " <pr e>$ kel uar annya </ pr e>" ;
?>

operator11.php
<?php
$keluarannya =`dir/p`;
echo "<pre>$keluarannya </pre>";
?>
Agus Ramdhani Nugraha, MT.
22
STRUKTUR PENGENDALI
Ketika saya bereksperimen dengan menggunakan dir/p maka ditampilkanlah
semua file didalam direktori dimana terletak file operator11.php berada.
Ternyata operatoe eksekusi berjalan di lingkungan windows dengan php versi
5.1.2
I. IF
Sintaks umum penggunaan if adalah
If(ekspresi)
pernyataan
if01.php


if02.php


Pada script if02.php terdapat dua pernyataan, pertama menampilkan kalimat a
lebih besar dari b dan menyatakan variable $a kedalam varibel $b.


<?php
$a = 4;
$b = 2;
i f ( $a > $b)
echo " a l ebi b besar dar i b" ;
?>
<?php
$a = 4;
$b = 2;

i f ( $a > $b) {
echo " a l ebi b besar dar i b<br >" ;
$b = $a;
echo" $b" ; / / ni l ai b menj adi 4
}
?>
II. ELSE
Misal kita ingin mengeksekusi sebuah pernyataan ketika kondisinya ditemukan
atau pernyataan yang berbeda ketika kondisi tidak ditemukan.
else01.php



<?php
$a = 4;
$b = 2;
i f ( $a > $b) {
echo " a l ebi h besar dar i b" ;
} el se {
echo " a l ebi h keci l dar i b" ;
}
?>
Agus Ramdhani Nugraha, MT.
23
III. ELSEIF
Elseif seperti terlihat dari sintaksnya merupakan gabungan dari if dan else.
Untuk lebih jelasnya bisa dilihat dari contoh berikut:
elseif01.php

Supaya terlihat hasilnya maka variable $b diubah menjadi sama dengan $a atau
lebih besar dari $a.

<?php
$a = 4;
$b = 2;
i f ( $a > $b) {
echo " a l ebi h besar dar i b" ;
} el sei f ( $a == $b) {
echo " a sama dengan b" ;
} el se {
echo " a l ebi h keci l dar i b" ;
}
?>
IV. SINTAKS ALTERNATIF UNTUK STRUKTUR PENGENDALI
PHP menawarkan sintaks alternatif untuk struktur pengendali pada : if, while,
for foreach dan switch. Dalam masing-masing kasus, bentuk dasar dari
sintaksnya adalah dengan menggunakan tanda titik dua ( : ) untuk menggantikan
kurung kurawal pembuka ( { ) dan mengganti tanda kurung kurawal tutup ( } )
dengan endif;, endwhile, endfor, endforeach

alternatif01.php


<?php
$a = 6; / / gant i dengan 5
i f ( $a == 5) :
echo " a sama dengan 5" ;
echo " . . . " ;
el sei f ( $a == 6) :
echo " a sama dengan 6" ;
echo " ! ! ! " ;
el se:
echo " a bukan angka 5 at au 6" ;
endi f ;
?>
V. WHILE
While merupakan sebuah pengulangan, Struktur pengendali ini memungkin
mengeksekusi seurutan perintah-perintah secara berulang-ulang dengan jumlah
pengulangan ditentukan oleh nilai dari suatu ekspresi
Bentuk umum while adalah :
while (ekspresi)
pernyataan

atau dengan menggunakan bentuk alternatif :
Agus Ramdhani Nugraha, MT.
24
while (ekspresi):
pernyataan
endwhile;

while01.php


<?php
/ * cont oh 1 */

$i = 1;
whi l e ( $i <= 10) {
echo $i ++; / * akan menampi l kan angka 1 s/ d 10 */
}

/ * cont oh 2 */

$i = 1;
whi l e ( $i <= 10) :
echo $i ;
$i ++;
endwhi l e;
?>
VI. DO-WHILE
do ....while berfungsi sama dengan while, yaitu untuk mengeksekusi suatu
perintah / pernyataan secara berulang-ulang. Bedanya adalah do ...while proses
pemeriksaan ekspresi dilakukan di akhir blok pengulangan.
Sintaks umum :
do{
pernyataan_1;
..........
}
while(ekspresi)
dowhile01.php

Pada script dowhile01.php akan menampilkan hasil 0 karena nilai ekpresi
memberitahukan bahwa $i >0 sehingga proses pengulangan berhenti.. J ika $1
diganti dengan 1 maka akan terjadi pengulangan samapai tak terhingga (jangan
dilakukan karena akan berakibat komputer anda terus melakukan proses
pengulangan)




<?php
$i = 0;
do {
echo $i ;
} whi l e ( $i > 0) ;
?>
Agus Ramdhani Nugraha, MT.
25
dowhile02.php


dowhile03.php

Pada script dowhile02.php akan menampilkan angka 3,6,9 sedangkan pada
dowhile03.php akan menampilkan angka 6,9,12. Logikanya begini : Pada script
dowhile02.php nilai variable $angka ditemukan dahulu yaitu 3 dan ditampilkan
(hasil pertama =3) angka 3 kemudian ditambahkan dengan 3 menjadi 6, cek
apakah kurang dari 10 (ya) dan ditampilkan (hasil kedua =6) kemudian angka 6
ditambahkan dengan 3 manjadi 9, cek apakah kurang dari 10 (ya), dan
ditampilkan (hasil ketiga =9) angka 9 ditambahkan dengan 3 menjadi 12 cek
apakah kurang dari 10 (tidak) tidak ditampilkan, proses looping berhenti.
J elaskan logika yang terjadi pada script dowhile03.php

<?php
$angka = 3;
do {
echo" i ni = $angka<br >" ;
$angka = $angka + 3;
} whi l e ( $angka < 10) ;
?>
<?php
$angka = 3;
do {
$angka = $angka + 3;
echo"ini = $angka<br>";
} while ($angka < 10);
?>
<?php
for($angka = 1;$angka <=10;$angka++)
{
echo$angka<br>;
}
?>
VII. FOR
Sintaks
for(ekspresi)
{
pernyataan;
}
for.php






Script for.php diatas digunakan untuk menampilkan angka 1 sampai dengan 10
tetapi kebawah bukan kesamping dikarenakan ada tanda <br>. Coba buang
tanda <br>maka angka akan ditampilkan ke samping.
For merupakan struktur kontrol pengulangan dengan jumlah pengulangan dan
perhitungan yang ditentukan ditentukan. Pada ekspresi ($angka = 1;$angka
<=10;$angka++) dikatakan bahwa nilai awal variable $angka adalah 1,
pengulangan dilakukan sampai nilai variabel $angka mencapai <=10 dengan
Agus Ramdhani Nugraha, MT.
26
perhitungan $angka++ yang artinya setiap pengulangan terjadi maka nilai
variabel $awal dijumlahkan dengan nilainya sendiri. Selain dengan
menggunakan $variable++, bisa juga dengan menggunakan $variable+=n. n
adalah nilai pertambahan yang diinginakan.
Coba buat deret bilangan genap ke bawah dari 4 sampai dengan 20.???



<?php
$var_array = array(1, 2, 3, 4);
foreach ($var_array as $nilai)
{
$nilai = $nilai * 2;
echo"$nilai &nbsp;";
}
// $var_array sekarang menjadi array(2, 4, 6, 8)
?>
VIII. FOREACH
Foreach adalah struktur kontrol pengulangan yang diterapkan pada varibel array.
Kita tidak perlu membatasi jumlah pengulangan karena didasarkan pada jumlah
array. J ika jumlah array adalah 4 maka akan dilakukan pengulangan sebanyak 4
kali.
foreach.php

IX. BREAK
Break digunakan untuk keluar dari suatu blok pernyataan pada struktur
for,foreach,do,do-while, dan switch.

break01.php
<?php
$no_hari = 0;
switch($no_hari)
{
case 0:
echo"minggu";
break;
case 1:
echo"senin";
break;
case 2:
echo"selasa";
break;
case 4:
echo"rabu";
break;
case 5:
echo"kamis";
break;
case 6:
echo"jumat";
Agus Ramdhani Nugraha, MT.
27
break;
case 7:
echo"sabtu";
break;
}
?>


Untuk membuktikannya coba jadikan komentar untuk semua script break.

X. CONTINUE
continue digunakan dalam proses looping (pengulangan) untuk melewati proses
sehingga pengulangan setelah perintah continue tidak dijalankan.
continue01.php


Tampilan dari script continue01.php adalah angka 8 dan 9. Hasil dari
pengulangan itu adalah angka 0 sampai dengan 9, karena angka 0 7 masuk
kedalah blok pernyataan yang mengandung continue, maka dilewati sampai
ketemu nilai pengulangan yang tidak masuk ke dalam blok pernyataan yang
tidak mengandung script continue yaitu angka 8 dan 9.

XI. SWICTH
Seperti pada script break01.php, switch sama halnya dengan pernyataan IF.
Agar proses pencarian nilai yang sudah sesuai dengan ekpresi dihentikan maka
pada setiap case digunakan perintah break;
Untuk lebih jelasnya silahkan lihat script break01.php
XII. REQUIRE()
Require digunakan untuk menggabungkan script php atau file text dari
script/file lain dengan script pemanggilnya.
demo.php
<?php
require"header.php";
?>
Wilujeng Sumping di Website MACAN
<p>
Ini merupakan sebuah website contoh dalam rangka
pembelajaran pemrograman web dengan menggunakan PHP-Apache dan
<?php
for ($i = 0; $i < 10; $i++)
{
if ($i < 8)
{
continue;
}
echo"$i";
}
?>
Agus Ramdhani Nugraha, MT.
28
MySQL
<p>
jangan beranggapan PHP itu Sulit karena tidak akan ada yang sulit Selama kita
mencoba untuk bisa
<?php
require"footer.php";
?>


header.php










<html>
<head>
<title>Require()</title>
</head>
<body>
<h1>Website Macan</h1>
Ini adalah contoh sebuah Header
<br>
<hr>
footer.php









Script requireheader.php yang berada pada file demo.php akan memanggil file
require.php dan script requirefooter.php akan memanggil file footer.php.
Dengan menggunakan pemisahan header isi dan footer seperti layaknya sebuah
dokumen dengan dengan header dan footer, maka apapun isi dari dokumen itu,
maka header dan footer akan tetap dan konsisten. Ketika akan mengadakan
perubahan header dan footer maka hanya dengan sekali perubahan pada header
dan footer tersebut maka seluruh halaman dalam website tersebut akan ikut
berubah pula. Dengan konsep seperti itu maka pemrogram bisa fokus pada isi
dari website itu bukan terhadap tampilannya. Tampilan web site bisa diserahkan
pada designer web, dengan menggunakan tool-tool seperti macromedia
dreamweaver, frontpage dll.

XIII. INCLUDE()
include01.php
<?php
//include"header.php";
<p>&nbsp;
</p>
<hr>
</small>&copy;2007 - Oleh Macan
Tasikmalaya</small>
</body>
</html>
Agus Ramdhani Nugraha, MT.
29
include"demo.php";
//include"footer.php";
?>


Script include"demo.php"; pada file include01.php akan memanggil file
demo.php. File demo.php berisi script yang memanggil file header dan footer
php.






































Agus Ramdhani Nugraha, MT.
30
FUNGSI


I. USER-DEFINED FUNCTION (UDF)
UDF adalah fungsi yang dibuat oleh user/pemrogram untuk menyelesaikan
persoalan karena tidak tersedia fungsi built-in.
fungsi_udf_01.php













function fungsi_pertama() berisi fungsi kedua yang akan menampilkan kalimat
Saya tidak ada sampai fungsi fungsi_pertama() dipanggil. fungsi_kedua tidak
bisa dipanggil sebelum fungsi pertama dipanggil. J ika hanya fungsi_pertama()
yang dipanggil maka tidak akan menampilkan apa-apa karena kalimat yang akan
ditampilkan berada pada fungsi_pertama();

Fungsi untuk menghitung selisih
fungsi_udf_02.php
<?php
function hitung_selisih($a, $b)
{
if ($a >$b)
{
$selisih =$a - $b;
}
else
$selisih =$b - $a;
return $selisih;

<?php
function fungsi_pertama()
{
function fungsi_kedua()
{
echo "Saya tidak ada sampai fungsi fungsi_pertama() dipanggil";
}
}
/* Kita belum bisa memanggil fungsi fungsi_kedua
sampai fungsi fungsi_pertama() ada */
//fungsi fungsi_pertama(); dipanggil
fungsi_pertama();
/* Sekarang kita dapat memanggil fungsi fungsi_kedua();
karena fungsi fungsi_pertama() telah ada */
fungsi_kedua();
?>
Agus Ramdhani Nugraha, MT.
31
}

$bilangan_1 =12;
$bilangan_2 =1;

$hasil =hitung_selisih($bilangan_1, $bilangan_2);
echo"Selisih antara $bilangan_1 dan $bilangan_2 = $hasil";

?>



II. INTERNAL FUNCTION

Fungsi internal adalah fungsi yang disediakan oleh PHP. Misalnya kita ingin
melihat konfigurasi server apache dengan menggunakan fungsi phpinfo();

fungsi_internal01.php





Ketika seorang pemrogram akan menampilkan huruf kabital dari A-Z dan
didalam fungsi internal tidak ada fungsi untuk menampilkan itu, maka
pemrogram harus membuat fungsi sendiri berdasarkan fungsi built-in. Didalam
PHP ada fungsi chr yang berfungsi untuk menampilkan huruf ASCII
berdasarkan bilangan.

fungsi_internal02.php










Hal yang pertama dilakukan adalah membuat urutan bilangan dari 65 sampai 90,
karena angka 65 adalah huruf A. Dengan fungsi chr angka tersebut akan
dikonversi menjadi huruf ASCII. Coba modifikasi angka tersebut sehingga yang
tampil adalah huruf a-z ( a kecil sampai z kecil).


<?php
phpinfo();
?>
<?php
for($angka =65;$angka <91;$angka ++)
{
$huruf =chr($angka);
echo"$angka =$huruf<br>";
}
?>
Agus Ramdhani Nugraha, MT.
32
PEMROSESAN FILE



File secara umum dibagi menjadi 2, yaitu file yang berisi text (ASCII) dan file
biner (binary). File text (ASCII) misalnya adalah file-file yang telah kita buat
yang berkstension *.php, contoh lainnya adalah file-file dengan ektension txt,html
dll. Sedangkan file biner adalah file program yang disimpan dalam format biner.
Pada bab ini kita akan membahas bagaimana mengolah data yang tersimpan
didalam file dengan ekntension *.txt seperti file telepon.txt dibawah ini yang
menggunakan pemisah dengan menggunakan tabulasi.
telepon.txt







Pada dasarnya bekerja dengan file mempunyai pola sbb :
1) Membuka file.
2) Memproses file
3) Menutup file
Seperti layaknya bekerja dengan file dokumen yang sudah ada (bayangkan dengan
file MS Word yang sudah ada). Pertama kita harus membuka dokumen,
melakukan input atau edit kemudian menutup file tersebut. Sama halnya jika kita
akan bekerja dengan file teks menggunakan PHP.

I. BUKA/TUTUP FILE

Sintaks untuk membuka file : $variable = fopen(nama/path file,mode
akses);
J ika file sumber (yang mengandung fopen) berada satu direktori dengan file
yang akan dibuka (misal telepon.txt) maka :
$buka_file = fopen(telepon.txt,r);

Mode akses terdiri dari ;
Mode Akses Keterangan
r Membaca file
r+ Membaca dan menulis file, pointer di awal file
w Menulis ke dalam file,menghapus data
w+ Membaca dan menulis ke dalam file, pointer di awal file.
a Menyimpan data di awal file, pointer diakhir
a+ Membaca dan menuliskan data, pointer di akhir file.
b Binary, digunakan agar file yang disimpan tidak dibedakan
sebagai teks atau biner.
Agus 0265-322684
Macan 08164669720
Ika 0265-337339
Dian 0265-337865
Buyung 08164661616
Agus Ramdhani Nugraha, MT.
33

Menutup file
Sintaks : fclose($variable)
$variable disini adalah $variable yang menangani pembukaan file.

II. BACA DATA

fgets()
Sintaks : $var = fgets($variable_buka_file, jumlah_data)
fgets01.php










Berdasarkan file fgets01.php $variable untuk membuka file adalah $buka dan
variable untuk membaca file telepon.txt adalah $ambil. Angka 25 digunakan
sebagai 25 byte (jumlah data). J adi fgets() digunakan untuk membaca file baris
per baris sebanyak jumlah data yang didefiniskan dalam ukuran byte.

fread()
Sintaks : $var = fread($variable_buka_file, jumlah_data)
fread akan mebaca data dengan mengabaikan data itu berada dalam satu baris
atau tidak. Fread akan membaca data dalam jumlah data yang didefiniskan dan
langsung menampilkannya. Salin isi file fgets01.php, ubah isi fgets menjadi
fread dan simpan file menjadi fread01.php.
fread01.php











Lihat perbedaan tampilan antara fgets01.php dan fread01.php. Terdapat
beberapa perbedaan yang disebabkan pola/metode pembacaan data antara fread
dan fgets.
<?php
$buka =fopen("telepon.txt", "r");

while($ambil =fgets($buka, 25))
{
echo"$ambil<br>";
}
fclose($buka);
?>
<?php
$buka =fopen("telepon.txt", "r");

while($ambil =fread($buka, 25))
{
echo"$ambil<br>";
}
fclose($buka);
?>
Agus Ramdhani Nugraha, MT.
34

fscanf()
Sintaks : list ($var1, $var2 .....var_n) = fscanf($variable_buka_file, format)

fscanf01.php










Karena file telpon.txt terdiri dari dua kolom, bisa dikatakan data dalam file
telpon txt terdiri dari nama dan no telepon. Oleh karena itu kita akan
membuatkan variable baru yaitu $nami dan $no_telp seperti pada file
fscanf01.php. Format %s/t%s menandakan ada 2 variable yang diwakili
dengan %s dan dipisahkan dengan tab (simbol /t).

feof()
Sintaks : feof($variable_buka_file)
Feof() digunakan untuk memeriksa apakah file sudah habis terbaca atau belum.
Hasilnya adalah False jika belum habis terbaca dan True jika sudah habis
terbaca.

fgetc()
Digunakan untuk membaca data yang ada didalam file per karakter. (karakter
per karakter). Fungsi fgetc() digunakan untuk pemrosesan data secara khusus.
Sintaks : string =fegtc($variable_buka_file);
kota.txt
Tasikmalaya
Garut
Ciamis

fgetc01.php
<?php
$buka_file =fopen('kota.txt', 'r');
if (!$buka_file)
{
echo 'Tidak bisa buka file kota.txt';
}
else
{
$huruf =0;
<?php
$buka =fopen("telepon.txt", "r");

while(list ($nami, $no_telp) =fscanf($buka, "%s\t%s"))
{
echo"$nami ->$no_telp<br>";
}
fclose($buka);
?>
Agus Ramdhani Nugraha, MT.
35
$baris =1;
while (!feof($buka_file))
{
$baca_char =fgetc($buka_file);
if(($baca_char <> " ") && ($baca_char <> "\n") &&
($baca_char <>"\t"))
$huruf++;
if (($baca_char =="\n"))
$baris++;
}
echo "J umlah huruf =$huruf<br>";
echo "J umlah baris =$baris<br>";
}
?>

J umlah huruf sama dengan 23 karena ada penambahan 1 setiap pindah baris
sehingga menjadi 25. J umlah baris sama dengan 3. \t untuk mengabaaikan spasi,
\n untuk mengabaikan tabulasi.

readfile()
Readfile berfungsi untuk membaca dan langsung menuliskan isi file dalam
bentuk standar output.
Sintaks : $var =readfile(nama_file);
Misal : $buka =readfile(telepon.txt);
readfile01.php
<?php
$buka =readfile("telepon.txt");
echo"$buka";
?>
Berbeda dengan fopen(), readfile bisa melakukan beberapa proses sekaligus
yaitu membuka dan membaca. Baris pertama membuka dan membaca, baris
kedua menuliskan hasil pembacaan kedalam standar output.

III. MENULIS KE DALAM FILE

Sintaks : fpust($var_buka_file, nama_file);
Misal : fputs($buka_file, $isinya);
Ketika akan menuliskan data kedalam sebuah file, perlu diperhatikan mode
penulisan data agar tidak terjadi kesalahan yang sangat fatal, misalnya data anda
menjadi hilang.

fputs01.php
<?php
$nama_file ="lat_tulis01.txt";
$isinya ="Agus, Tasikmalaya, 08164669720";
$buka_file =fopen($nama_file,"w");
Agus Ramdhani Nugraha, MT.
36
fputs($buka_file, $isinya);
fclose($buka_file);

echo" berhasil membuat file teks dengan nama : $nama_file <br>";
echo" Data yang dituliskan : $isinya";
?>
Scrip fputs01.php akan membuat file dengan nama lat_tulis01.txt dan
menuliskan Agus, Tasikmalaya, 08164669720 kedalam file lat_tulis01.txt
tersebut.

fputs02.php
<?php
$nama_file ="lat_tulis01.txt";
$isinya ="Agus, Tasikmalaya, 0265-322684 ";
$buka_file =fopen($nama_file,"w");
fputs($buka_file, $isinya);
echo" Data yang dituliskan : $isinya<br>";
fputs($buka_file, $isinya);
echo" Data yang dituliskan : $isinya<br>";
fclose($buka_file);

echo" Berhasil membuat file teks dengan nama : $nama_file <br>";
?>
Script fputs02.php akan menuliskan data sebanyak 2 kali ke dalam file
lat_tulis01.txt yang sebelumnya berisi data Agus, Tasikmalaya, 08164669720,
kemudian setelah script/file fputs02 dijalankan makan file lat_tulis.txt akan
berubah isinya. Mode w digunakan untuk membuat data baru dan membuang
data yang lama. Penulisan data tidak pindah baris tetapi langsung ke kanan,
untuk mengantisipasi agar penulisan data pindah baris maka digunakan karakter
ganti baris \n.
Coba disebelah mana kita menyisipkan karakter ganti baris tersebut.?
Coba gunakan mode a? Apa yang akan terjadi ?.

IV. PEMERIKSAAN FILE

Pemerikasaan file meliputi : ada atau tidaknya file yang didefiniskan, atributnya
(apakah bisa ditulis atau tidak). Hal ini sangat penting bagi programmer untuk
melakukan tindakan berikutnya terhadap file tersebut, apakah akan ditimpa atau
ditulis ulang.

file_exists();
<?php
$nama_file ="lat_tulis01.txt";
if(file_exists($nama_file))
{
echo" file $nama_file sudah ada";
Agus Ramdhani Nugraha, MT.
37
}
else
{
echo" file $nama_file belum ada";
}
?>
Hasil dari pemeriksaan file menggunakan script file_exists01.php adalah file
lat_tulis01.txt sudah ada hal ini dikarenakan file lat_tulis01.txt sudah ada dan
berada satu direktori dengan file yang memeriksanya (file_exists01.php).

copy();
Sintaks : copy($file_lama, $hasil_kopian);
copy_file01.php
<?php
$f i l e_l ama = ' l at _t ul i s01. t xt ' ;
$hasi l _kopi = ' l at _t ul i s02. t xt ' ;

i f ( ! copy( $f i l e_l ama, $hasi l _kopi ) )
{
echo " Fi l e $f i l e_l ama gagal di kopi . . . \ n" ;
}
el se
{
echo" f i l e $f i l e_l ama ber hasi l di kopi ke $hasi l _kopi " ;
}
?>
Dari script copy_file01.php diproses suatu penduplikatan file yaitu file
lat_tulis01.txt ke lat_tulis02.txt. Prosesnya sama seperti copy-paste di windows
explorer.

disk_free_space();
$var =disk_free_space(C:);
misal : $c =disk_free_space("C:");
Digunakan untuk mengetahui total spasi kosong pada tiap drive atau partisi di
windows dan linux.

disk_free_space01.php
<?php
$c =disk_free_space("C:");
$d =disk_free_space("D:");
echo"yang masih kosong di c : $c<br>";
echo"yang masih kosong di d : $d";
?>
Untuk melihat kebenaran nilai yang diberikan yaitu dengan melihat free space di
msdos dengan mengetikan <dir > bukan di windows explorer.



Agus Ramdhani Nugraha, MT.
38
filesize();
Digunakan untuk mengetahui ukuran dari suatu file yang didefinisikan didalam
script (dalam bytes)

filesize01.php
<?php

/ / mi sal kel uar annya kot a. t xt : 1024 byt es

$f i l ename = ' kot a. t xt ' ;
echo $f i l ename . ' : ' . f i l esi ze( $f i l ename) . ' byt es' ;

?>

is_writable()
Digunakan untuk mengetahui apakah atribut file yang didefinisikan bisa ditulis
atau tidak (read only)
Kopikan file kota.txt dan rename menjadi kota2.txt. Ubah propertinya menjadi
read only.

is_writable01.php
<?php
$f i l ename = ' kot a2. t xt ' ;
i f ( i s_wr i t abl e( $f i l ename) ) {
echo ' Bukan Read Onl y' ;
} el se {
echo ' Read onl y' ;
}
?>

Tugas : Temukan fungsi lain yang berhubungan dengan pengolahan file.
Misalnya membuat direktori, menghapus file dll. Minimal 5 fungsi dan contoh
scriptnya.
















Agus Ramdhani Nugraha, MT.
39
PENGOLAHAN DATA DARI FORM

FORM

Form sering juga disebut formulir. Dalam halaman web form biasa digunakan
untuk mengirimkan data yang diinputkan oleh user ke server. Data tersebut akan
diolah oleh server atau dimasukan ke dalam database. Proses validasi form bisa di
dua sisi yaitu sisi klien dan server. Pada sisi klien bahasa pemrograman yang
paling populer adalah javascript. Pada sisi server kita gunakan PHP. karena kita
membahas PHP maka validasi yang digunakan adalah disisi server.

GET
Get merupakan metode pengiriman data dari klien ke server dengan
menampilakan variable dan nilai di sisi kliennya.
get01.html
<f or mact i on=' get 01. php' met hod=' get ' >
Nama: <i nput t ype=' t ext ' name=' nama' ><br >
Emai l : <i nput t ype=' t ext ' name=' emai l ' ><br >
<i nput t ype=' submi t ' name=' ki r i m' val ue=' KI RI M' >
</ f or m>

get01.php
<?php
/ / Ber l aku dar i PHP 4. 1. 0 keat as

echo ' Car a 1 : ' . $_GET[ ' nama' ] . ' &nbsp; dan &nbsp; ' .
$_GET[ ' emai l ' ] ;
echo" <br >" ;
echo ' Car a 2 : ' . $_REQUEST[ ' nama' ] . ' &nbsp; dan &nbsp; ' .
$_REQUEST[ ' emai l ' ] ;
echo" <br >" ;
echo ' Car a 3 : ' . $HTTP_GET_VARS[ ' nama' ] . ' &nbsp; dan &nbsp; ' .
$HTTP_GET_VARS[ ' emai l ' ] ;

?>
get01.html merupakan halaman formulir yang diisi oleh klien untuk dikirimkan ke
server.
Data yang akan dikirim dalam satu kali pengiriman berada dalam tag
<form>.....</form>. Lihat pada script/file get01.html.

<form action='get01.php' method='get'> artinya form yang berada
didalam script get01.html dan berada didalam tag <form>...</form> akan
dikirimkan ke server dan diolah oleh file yang didefinisikan setelah action, dalam
script ini yaitu get01.php dengan methode get.

Nama: <i nput t ype=' t ext ' name=' nama' / ><br / > artinya Nama :
merupakan tulisan yang akan ditampilkan di halaman web. type=text merupakan
tipe tulisan yang berlaku didalam form, name=nama merupakan variable yang
akan dikirim adalah nama. Type submit merupakan tombol dengan nama variable
Agus Ramdhani Nugraha, MT.
40
yang berada sesudah name (kirim) dan tulisan yang berada didalam tombol
didefiniskan setelah value (KIRIM).
Untuk memperindah tampilan formulir, bisa menggunakan tabel. Berikut adalah
contoh formulir dengan beberapa type.

get02.html
<f or mmet hod=' get ' act i on=' get 02. php' >
<t abl e wi dt h=' 450' bor der =' 0' bgcol or =#FFFCCC>
<! - - Bar i s 1 - - >
<t r ><t d wi dt h=' 125' >User name</ t d><t d wi dt h=' 5' >: </ t d><t d><i nput
t ype=' t ext ' name=' nama_user ' si ze=' 12' maxl engt h=' 30' ></ t d></ t r >
<! - - Bar i s 2 - - >
<t r ><t d>Passwor d</ t d><t d>: </ t d><t d><i nput t ype=' passwor d'
name=' kat a_kunci ' si ze=' 30' maxl engt h=' 12' ></ t d></ t r >
<! - - Bar i s 3 - - >
<t r ><t d>J eni s Kel ami n</ t d><t d>: </ t d><t d><i nput t ype=' r adi o'
name=' j k' val ue=' L' >Laki - l aki <i nput t ype=' r adi o' name=' j k'
val ue=' P' >Per empuan</ t d></ t r >
<! - - Bar i s 4 - - >
<t r ><t d>Hobi </ t d><t d>: </ t d><t d><i nput t ype=' checkbox'
name=' hobi 1' val ue=' spor t ' >Ol ahr aga <i nput t ype=' checkbox'
name=' hobi 2' val ue=' manci ng' >Manci ng<i nput t ype=' checkbox'
name=' hobi 3' val ue=' dugem' >Dugem</ t d></ t r >
<! - - Bar i s 5 - - >
<t r ><t d>J ur usan</ t d><t d>: </ t d><t d>
<SELECT NAME=' j ur usan' >
<OPTI ON val ue=' ' SELECTED>- - - - - Pi l i h J ur usan - - - - - </ OPTI ON>
<OPTI ON val ue=' t i ' >Tekni k I nf or mat i ka</ OPTI ON>
<OPTI ON val ue=' mi ' >Managemen I nf or mat i ka</ OPTI ON>
</ SELECT>
</ t d></ t r >
<! - - Bar i s 6 - - >
<t r ><t d></ t d><t d></ t d><t d><I NPUT NAME=l ogi n TYPE=i mage
VALUE=l ogi n sr c=' t ombol l ogi n. gi f ' wi dt h=' 68'
hei ght =' 20' ></ t d></ t r >
</ t abl e>
</ f or m>

get02.php
<?php
$nama_user = $_GET[ ' nama_user ' ] ;
$kat a_kunci = $_GET[ ' kat a_kunci ' ] ;
$j k = $_GET[ ' j k' ] ;
$hobi 1 = $_GET[ ' hobi 1' ] ;
$hobi 2 = $_GET[ ' hobi 2' ] ;
$hobi 3 = $_GET[ ' hobi 3' ] ;
$j ur usan = $_GET[ ' j ur usan' ] ;

?>

<t abl e wi dt h=' 450' bor der =' 0' bgcol or =#FFFCCC>
<! - - Bar i s 1 - - >
<t r ><t d wi dt h=' 125' >User name</ t d><t d wi dt h=' 5' >: </ t d><t d><?php
echo $nama_user ?></ t d></ t r >
Agus Ramdhani Nugraha, MT.
41
<! - - Bar i s 2 - - >
<t r ><t d>Passwor d</ t d><t d>: </ t d><t d><?php echo $kat a_kunci
?></ t d></ t r >
<! - - Bar i s 3 - - >
<t r ><t d>J eni s Kel ami n</ t d><t d>: </ t d><t d><?php echo $j k
?></ t d></ t r >
<! - - Bar i s 4 - - >
<t r ><t d>Hobi 1</ t d><t d>: </ t d><t d><?php echo $hobi 1 ?></ t d></ t r >
<! - - Bar i s 5 - - >
<t r ><t d>Hobi 2</ t d><t d>: </ t d><t d><?php echo $hobi 2 ?></ t d></ t r >
<! - - Bar i s 6 - - >
<t r ><t d>Hobi 3</ t d><t d>: </ t d><t d><?php echo $hobi 3 ?></ t d></ t r >
<! - - Bar i s 7 - - >
<t r ><t d>J ur usan</ t d><t d>: </ t d><t d><?php echo $j ur usan
?></ t d></ t r >
<! - - Bar i s 6 - - >
</ t abl e>

Latihan ......
1) Salin get02.html menjadi post01.html dan get02.php menjadi post01.php
2) Ubah metode pada post01.html menjadi POST dan actionnya ke post01.php,
lakukan juga perubahan pada file post01.php.
3) Bagaimana hasilnya dengan membandingkan dengan metode get

Tugas
1) Buatlah sebuah modul buku tamu dengan dengan 4 buah file :
a) menu.html =>sebagai menu utama untuk memilih antara lihat buku
tamu dan isi buku tamu.

b) input_bktm.html =>berguna sebagai form masukan dari user

Agus Ramdhani Nugraha, MT.
42

c) bukutamu.php =>sebagai tempat memproses masukan dari user
dan menyimpannya ke dalam file bukutamu.txt.

d) lihat_bktm.php => file yang digunakan untuk melihat isi buku tamu

e) bukutamu.txt =>tempat meyimpan data buku tamu


2) Ke 4 file di zip/rar menjadi misal : bukutamu_32040023.rar/zip.
3) Kirim ke kategori <kirim file tugas dan latihan>sub bagian PHP.











Agus Ramdhani Nugraha, MT.
43
PHP-MySQL



I. SEKILAS MySQL

MySQL adalah software database yang populer di lingkungan Linux dan sudah
sifatnya yang open source, gratis dan kecepatan query.
Setiap sistem informasi memilki paket-paket setup MySQL yang telah
terintegrasi dengan sistem operasinya.
Paket distribusi MySQL terdiri atas komponen-komponen
1. Server MySQL, merupakan komponen yang menjadi inti dari MySQL
sebagai engine dan menyediakan akses kepada database
2. Program klien untuk mengakses kepada server. Program interaktif yang
memungkinkan kita untuk melakukan query dan memanipulasi data dan
kemudian melihat hasilnya secara langsung
3. Sekumpulan library ubtuk menulis program yang mengakses server
nerupakan library fungsi yang dapat digunakan untuk membuat
program.klien sendiri dengan menggunakan bahasa C, karena library yang
disediakan dalam bahasa C. Sebenarnya bisa juga digunakan oleh bahasa
pemrograman lain.

a) Platform MySQL
Database MySQL tersedia untuk banyak sistem operasi. Berikut adalah
daftar sistem operasi yang mempunyai distribusi binary nya. Artinya
mendukung MySQL.
1. Linux RedHat
2. Windows (95/98/ME/NT4/2000/XP)
3. OS/2
4. Berbagai varian UNIX seperti MacOS X, HP-UX, Intel-optimized
Linux, FreeBSD, SGI Irix dan Alpha Based Linux.
Sistem operasi lain yang tidak mempunyai distribusi binarynya dapat
melakukan kompilasi sendiri untuk membuat binarynya, mungkin perlu
membuat perubahan perubahan agar hasilnya dapat dijalankan dan
digunakan karena source program dari MySQL dapat didownload dan
dikembangkan sesuai dengan kebutuhan sendiri.

b) Download MySQL
MySQL dapat diperoleh dengan mudah di Internet, setiap yang berminat
menggunakan MySQL dapat mengakses http://www.mysqll.com/download.
Pilih paket MySQL sesuai dengan sistem operasi yang akan digunakan pada
komputer server database yang anda siapkan.
Pada situs web MySQL ada informasi paket MySQL yang stabil (stable) dan
yang release, atau alpha/beta, pilihlah yang stabil, karena paket ini telah
dicoba dan diuji oleh banyak pemakai di seluruh dunia, mempunyai sedikit
sekali bug, dan tidak menyebabkan hang pada saat dijalankan.
Agus Ramdhani Nugraha, MT.
44


c) Struktrur Direktori Database MySQL
MySQL secara default akan dipasang dalam drive dimana kita
menginstallkan xampplite dengan direktori C.\xampplite\mysql\ (dengan
asumsi kita mengintall xampplite di drive C ) pada sistem operasi Windows,
baik Windows XP, baik Windows 98/ME atau pun NT4/2000. Direktori ini
bisa saja diubah sesuai dengan keinginan dari administrator sistem, dalam
modul ini dibahas menggunakan setting default software MySQL.
Berikut adalah struktur direktori MySQL :






Direktori yang paling penting dalam struktur direktori mysql di atas adalah
direktori bin dan data. Di dalam subdirektori bin merupakan direktori yang
menyimpan semua program database MySQL, sedangkan suddirektori data
digunakan untuk menyimpan data bagi setiap database. Setiap database
MySQL direpresentasikan sebagai sebuah direktori di dalam subdirektori
data ini.

Di direktory mysql\bin terdapat beberapa file pendukung lainnya salah
satunya adalah beberapa varian mysqld
\ bin
\ data
\ backup
\ share
Mysqld.exe
Mysqld-nt.exe
Mysqld-max.exe
Mysqld-max-nt.exe
Mysqld tanpa -nt adalah server mysql yang berjalan di windows 98/98/ME.
Sedangkan yang menggunakan -nt digunakan untuk dijalankan pada
windows NT/2000/XP.
Mysql dengan max menunjukkan mysql yang telah dilengkapi dengan
kemampuan penanganan transaksi (seperti commit dan rollback) yang
menggunakan table InnoDB dan BDB.


II. MEMBUAT DATABASE DAN TABEL

Bukalah Command Prompt melalui Start Menu +Program +Accessories +
Command Prompt atau dari start menu +run (ketikan cmd untuk windows
xp). Maka akan tampil layar seperti berikut dan ikuti perintah seperti yang ada
di gambar.
Agus Ramdhani Nugraha, MT.
45

Untuk password coba jangan diisi (langsung tekan enter).
Langkah langkah membuat database php dan tabel mhs

1) create database php; =>digunakan untuk meciptakan database php
2) user php =>digunakan untuk mengaktifkan database php
3) create table mhs(nim int(8) primary key not null, nama varchar(30)); =>
digunakan untuk meciptakan tabel mhs dengan 2 kolom yaitu nim type
datanya integer dengan maksimal 8 digit tidak boleh sama (primary key)
dan nama dengan type data varchar maksimal 30 karakter.
Langkah-langkah untuk mengiputkan data dan melihat data :

Agus Ramdhani Nugraha, MT.
46
1) insert into mhs(nim,nama)values(32050001,'Agus R'); =>digunakan
untuk memasukan data 32050001 ke kolom nim dan Agus R ke kolom
nama.
2) select * from mhs; =>digunakan untuk melihat data yang ada di dalam
tabel mhs di semua kolom.

III. KONEKSI PHP-MYSQL

Sebelum melakukan pemrosesan data yang ada di dalam database, kita harus
melakukan koneksi terlebih dahulu dengan server database. Informasi yang
diperlukan untuk melakukan koneksi terhadap database adalah :
1) Nama komputer server database atau IP address server database
2) User dan password yang ada pada server database

Script php untuk melakukan koneksi ke database adalah sebagai berikut :
$konek = mysql_connect(nama_komp/ip_address,user,password);

test_konek.php
<?php
$konek = mysql _connect ( l ocal host , r oot , ) ;
i f ( $konek)
{
EchoKONEKSI BERHASI L;
}
El se
EchoKONEKSI GAGAL;
?>


$konek merupakan variable yang berisi scrip koneksi php-mysql, J ika terdapat
error berarti ada kesalahan pada 3 paramater sesudah mysql_connect ; nama
komputer, user dan password.

IV. MENAMPILKAN DATA DARI DATABASE

J ika koneksi ke database berhasil langkah berikkutnya adalah memilih database
dan melakukan query terhadap tabel-tabel yang ada di database.
Agus Ramdhani Nugraha, MT.
47
tampil_data.php
<?php
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
$car i = mysql _quer y( " sel ect * f r ommhs" ) ;
Whi l e( $kol om= mysql _f et ch_ar r ay( $car i ) )
{
echo" $kol om[ ni m] &nbsp; $kol om[ nama] <br >" ;
}
}
el se
echo" KONEKSI GAGAL" ;
?>
Hasilnya :

Keterangan script
$db = mysql _sel ect _db( " php" ) ; => Memilih database
$car i = mysql _quer y( " sel ect * f r ommhs" ) ; => query terhadap tabel
mhs.

Whi l e( $kol om= mysql _f et ch_ar r ay( $car i ) )
{
echo" $kol om[ ni m] &nbsp; $kol om[ nama] <br >" ;
}

Karena hasil query dengan menggunakan variable $cari menghasilkan data yang
banyak maka digunakan mysql_fetch_array. Bagaimana jika yang kita
kehendaki adalah menampilakan data-tertentu. Misal :
Agus Ramdhani Nugraha, MT.
48

Dengan query select * from mhs; kita hanya ingin menampilkan nama Agus R
saja.
tampil_data02.php
<?php
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
$car i = mysql _quer y( " sel ect * f r ommhs" ) ;
$hasi l = mysql _r esul t ( $car i , 0, 1) ;
echo" $hasi l " ;
}
el se
echo" KONEKSI GAGAL" ;
?>

Keterangan script tampil_data02.php
$hasil =mysql_result($cari,0,1); =>digunakan untuk menampilkan data
berdasarkan baris dan kolom, berarti baris 0 kolom 1.

Kolom 0 Kolom 1
Baris 0 32050001 Agus R
Baris 1 32050002 Ahmad S
Agus R berada pada baris 0 kolom 1 sehingga $hasil =mysql_resul($cari,0,1);
Ahmad S berada pada baris 0 kolom 1 sehingga $hasil =mysql_resul($cari,1,1);



Agus Ramdhani Nugraha, MT.
49
V. MENCARI DATA

cari_data01.html
<f or mmet hod=' post ' act i on=' car i _dat a01. php' >
<t abl e wi dt h=' 400' bor der =' 0' bgcol or =#FFFCCC>
<! - - Bar i s 1 - - >
<t r ><t d wi dt h=' 100' >Nama</ t d><t d wi dt h=' 5' >: </ t d><t d><i nput
t ype=' t ext ' name=' nama' si ze=' 12' ></ t d></ t r >
<t r ><t d></ t d><t d></ t d><t d><I NPUT NAME=l ogi n TYPE=submi t
VALUE=CARI ></ t d></ t r >
</ f or m>


cari_data01.php
<?php
$nama = $_POST[ ' nama' ] ;
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
$car i = mysql _quer y( " sel ect * f r ommhs wher e nama
l i ke' $nama%' " ) ;
Whi l e( $kol om= mysql _f et ch_ar r ay( $car i ) )
{
echo" $kol om[ nama] &nbsp; $kol om[ ni m] <br >" ;
}
}
el se
echo" KONEKSI GAGAL" ;
?>

Modifikasi hanya terjadi pada proses penangkapan variable yang dikirimkan
oleh file/script cari_data01.html yaitu : $nama = $_POST[ ' nama' ] ; dan
memodifikasi query menjadi select * from mhs where nama like$nama%.
Penggunaan like$nama% adalah mencari data yang hanya disesuaikan dengan
awalannya saja. Misal kita hanya memasukan nama a, maka akan dicari ke
Agus Ramdhani Nugraha, MT.
50
dalam database nama yang awalannya a dan apapun kata sesudah a akan
diabaikan.

VI. MENGUBAH DATA

Dengan memodifikasi file tampil_data menjadi tampil_data03.php
tampil_data03.php
<?php
$edi t = $_POST[ ' edi t ' ] ;
$ni m= $_POST[ ' ni m' ] ;
$ni mna = $_POST[ ' ni mna' ] ;
$namana = $_POST[ ' namana' ] ;
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
i f ( $edi t == ' EDI T' )
{
mysql _quer y( " updat e mhs set ni m=' $ni mna' , nama=' $namana'
wher e ni m=' $ni m' " ) ;
}
$car i = mysql _quer y( " sel ect * f r ommhs" ) ;
echo" <t abl e bor der =' 1' >" ;
Whi l e( $kol om= mysql _f et ch_ar r ay( $car i ) )
{
echo" <t r ><t d>$kol om[ ni m] </ t d><t d>$kol om[ nama] </ t d><t d><a
hr ef =' edi t _dat a03. php?ni m=$kol om[ ni m] ' >Edi t </ a></ t d></ t r >" ;
}
echo" </ t abl e>" ;
}
el se
{
echo" KONEKSI GAGAL" ;
}
?>

Tampilannya


Agus Ramdhani Nugraha, MT.
51
Keterangan Script

$edi t = $_POST[ ' edi t ' ] ;

Variabel $edit merupakan variable yang dikirim oleh script yang mengandung
action ke tampil_data03.php dengan method=POST.

<a hr ef =' edi t _dat a03. php?ni m=$kol om[ ni m] ' >Edi t </ a>

Menampikan huruf EDIT yang merupakan link ke script/file
edit_data03.php?nim=<yang didifenisikan oleh database>. Nilai nim akan
berubah-ubah sesuai dengan data yang ada di variable $kolom[nim]

Untuk lebih jelasnya kita lihat script yang mengirim formulir karena script
tampil_data03.php melakukan dua proses : Menampilkan data dan melakukan
proses pemasukan data dari form ke database.

edit_data03.php
<?php
$ni m= $_GET[ ' ni m' ] ;
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
$car i = mysql _quer y( " sel ect * f r ommhs wher e ni m=' $ni m' " ) ;
$hasi l = mysql _r esul t ( $car i , 0, 1) ;
?>
<f or mmet hod=' post ' act i on=' t ampi l _dat a03. php' >
<t abl e wi dt h=' 450' bor der =' 0' >
<i nput t ype=' hi dden' name=' ni m' val ue=' <?php echo $ni m; ?>' >
<! - - Bar i s 1 - - >
<t r ><t d wi dt h=' 60' >NI M</ t d><t d wi dt h=' 5' >: </ t d><t d><i nput
t ype=' t ext ' name=' ni mna' si ze=' 12' val ue=' <?php echo $ni m;
?>' ></ t d></ t r >
<! - - Bar i s 2 - - >
<t r ><t d>Nama</ t d><t d>: </ t d><t d><i nput t ype=' t ext ' name=' namana'
si ze=' 12' val ue=' <?php echo $hasi l ; ?>' ></ t d></ t r >
<t r ><t d></ t d><t d></ t d><t d><I NPUT t ype=submi t NAME=edi t
VALUE=EDI T></ t d></ t r >
</ t abl e>
</ f or m>

Ketika kita menekan tombol EDIT untuk Agus R maka link/address akan
menunjukkan edit_data03.php?nim=32050001. Seperti dibahas sebelumnya
proses ini ditangkap oleh edit_data03.php dengan metode GET. Lihat di file
edit_data03.php.
$ni m= $_GET[ ' ni m' ] ;
Script ini yang nenangkap variable dan nilainya.
$nim =32050001
Kemudian dicari ke database data-data yang nim nya 32050001
$car i = mysql _quer y( " sel ect * f r ommhs wher e ni m=' $ni m' " ) ;

Agus Ramdhani Nugraha, MT.
52
Karena hasil dari SQL (select * from mhs where nim=32050001) merupakan 2
dua buah kolom yaitu nim dan nama dan yang akan kita ambil adalah nama
maka :
$hasi l = mysql _r esul t ( $car i , 0, 1) ;
J adi yang dipakai adalah baris 0 kolom 1
Sehingga :
$nim =32050001
$hasil =Agus R

Pada saat menampilkan data di file edit_data03.php terjadi perubahan paramater
yang akan dikirimkan ke file yang didefinisikan di action (dalam kasus ini ke
file tampil_data03.php.
Ada dua isian : NIM dan Nama, NIM bernilai sesuai dengan variable $nim dan
nama bernilai sesuai dengan $nama. Paramater untuk NIM adalah $nimna (lihat
di property name) dan Nama adalah $namana, sedangkan variable $nim
dikirimkan dengan type disembunyikan.
Agar perubahan data hanya terjadi pada NIM yang disebutkan maka variable
$nim yang belum mengalami perubahan dikirimkan juga ke file yang
memrosesnya. Agar tidak ditampilan maka type=hidden.
Proses ini berlaku jika yang kita klik adalah EDIT untuk nama Akhmad S

Tugas
Buatlah satu opsi lagi disamping EDIT, yaitu DELETE yang berfungsi untuk
menghapus data. File yang akan memrosesnya adalah delete_data03.php.
Ketentuan proses, ketika DELETE diklik maka akan tampil pilihan Ya dan
Tidak jika ya maka data terhapus dan proses masuk ke tampil data dan jika
tidak data tidak terhapus dan masuk ke tampil data


VII. VALIDASI USER DAN PASSWORD

Buatlah sebuah table pengguna di database php dengan dua buah kolom yaitu :
nama_user dan kata_kunci
Agus Ramdhani Nugraha, MT.
53
SQL :
cr eat e t abl e pengguna ( nama_user var char ( 10) pr i mar y key not
nul l , kat a_kunci var char ( 32) ) ;
i nser t i nt o pengguna( nama_user , kat a_kunci ) val ues ( ' agus' ,
MD5( ' mani s' ) ) ;
sel ect * f r ompengguna;
mysql>select * from pengguna;

+-----------+----------------------------------+
| nama_user | kata_kunci |
+-----------+----------------------------------+
| agus | 5ef3b52bf2d948fb88bd38aa5e244246 |
+-----------+----------------------------------+

nama_user=agus
kata_kunci=manis

Lihat bahwa kata_kunci dienkripsi dengan menggunakan MD5 sehingga
password/kata_kunci yang disimpan didatabase tidak akan diketahui oleh orang
lain dan hanya si user saja yang tahu.
Lalu bagaimana vrifikasinya:
SQL nya :
sel ect count ( *) f r ompengguna wher e nama_user = agus and
kat a_kunci =md5( mani s ) ;
Perintah ini kana menghasilkan angka 1 jika benar dan angka 0 jika salah. Coba
ganti salah satu nama_user dan atau kata_kunci menjadi :
sel ect count ( *) f r ompengguna wher e nama_user = agus and
kat a_kunci =md5( ani s ) ;
Maka akan menghasilkan angka 0 karena kata_kuncinya salah.

login.html
<f or mmet hod=' post ' act i on=' l ogi n. php' >
<t abl e wi dt h=' 300' bor der =' 0' >
<! - - Bar i s 1 - - >
<t r ><t d wi dt h=' 100' >USER</ t d><t d wi dt h=' 5' >: </ t d><t d><i nput
t ype=' t ext ' name=' nama_user ' si ze=' 10' ></ t d></ t r >
<t r ><t d wi dt h=' 100' >PASSWORD</ t d><t d wi dt h=' 5' >: </ t d><t d><i nput
t ype=' passwor d' name=' kat a_kunci ' si ze=' 12' ></ t d></ t r >
<t r ><t d></ t d><t d></ t d><t d><I NPUT NAME=l ogi n TYPE=submi t
VALUE=LOGI N></ t d></ t r >
</ f or m>
Tampilannya

Agus Ramdhani Nugraha, MT.
54
login.php
<?php
$nama_user = $_POST[ ' nama_user ' ] ;
$kat a_kunci = $_POST[ ' kat a_kunci ' ] ;
$l ogi n = $_POST[ ' l ogi n' ] ;
/ / koneksi
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
i f ( $l ogi n == ' LOGI N' )
{
$cek = mysql _quer y( " sel ect count ( *) f r ompengguna wher e
nama_user =' $nama_user ' and kat a_kunci =md5( ' $kat a_kunci ' ) " ) ;
$hasi l _cek = mysql _r esul t ( $cek, 0, 0) ;
i f ( $hasi l _cek == ' 1' )
{
echo" User dan Passwor d bet ul " ;
}
el se
{
echo" Ti dak Ber hak" ;
}
}

}
el se
{
echo" KONEKSI GAGAL" ;
}
?>
Ada tiga parameter yang dikirimkan login.html :
$_POST[ ' nama_user ' ] ;
$_POST[ ' kat a_kunci ' ] ;
$_POST[ ' l ogi n' ] ;

Ketiga dibuatkan variable menjadi :
$nama_user = $_POST[ ' nama_user ' ] ;
$kat a_kunci = $_POST[ ' kat a_kunci ' ] ;
$l ogi n = $_POST[ ' l ogi n' ] ;

Ketika tombol LOGIN ditekan
i f ( $l ogi n == ' LOGI N' )
{
$cek = mysql _quer y( " sel ect count ( *) f r ompengguna wher e
nama_user =' $nama_user ' and kat a_kunci =md5( ' $kat a_kunci ' ) " ) ;

/ / scr i pt l ai n f r ee memor y
}
Variable $cek akan mencari kedalam database apakah nilainya 1 atau 0.




Agus Ramdhani Nugraha, MT.
55
VIII. BUKU TAMU

Tugas : membuat buku tamu seperti bukutamu yang menggunakan file teks.
Syarat....data disimpan di database MySQL.

IX. PAGINATION (PENGHALAMAN)

Penghalaman berfungsi untuk menggulung halaman agar data yang ditampilkan
tidak terlalu banyak ke bawah. Misal : ada data sebanyak 108 baris dan akan
ditampilkan sebanyak per 10 baris.
pagination.php
<?php
$awal = $_GET[ ' awal ' ] ;
$page = $_GET[ ' page' ] ;
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
i f ( empt y( $awal ) )
{
$awal = 0;
}
echo" <t abl e wi dt h=' 500' bor der =' 1' >" ;
echo" <t r ><t h col span=' 4' al i gn=' l ef t ' >Hal aman :
$page</ t h></ t r >" ;
echo" <t r ><t h>No</ t h><t h>Kode</ t h><t h>Nama Mat a
Kul i ah</ t h><t h>sks</ t h></ t r >" ;
$car i = mysql _quer y( " sel ect * f r ommk l i mi t $awal , 10" ) ;
Whi l e( $kol om= mysql _f et ch_ar r ay( $car i ) )
{
echo" <t r ><t d>$kol om[ no] </ t d><t d>$kol om[ kd_mt kul ] </ t d>
<t d>$kol om[ nama_mt kul ] </ t d><t d>$kol om[ sks] </ t d></ t r >" ;
}
$car i 2=" SELECT * FROM mk" ;
$hasi l =mysql _quer y( $car i 2) ;
$j uml ah=mysql _num_r ows( $hasi l ) ;
$i =$j uml ah/ 10;
$i =cei l ( $i ) ;
echo" <t r ><t d col span=' 4' al i gn=' l ef t ' >" ;
echo( " <f ont f ace=' t i mes new r oman' si ze=' 2' >" ) ;
echo( " Hal aman : &nbsp; " ) ;
f or ( $j =1; $j <=$i ; $j ++)
{
$awal =( ( $j - 1) *9+$j ) - 1;
/ / echo" $awal &nbsp; " ;
echo( " <a hr ef =' pagi nat i on. php?awal =$awal &page=$j ' >
$j &nbsp " ) ;
}
echo" </ t d></ t r >" ;
echo" </ t abl e>" ;
}
el se
echo" KONEKSI GAGAL" ;
?>
Agus Ramdhani Nugraha, MT.
56
Penjelasan script.

$awal = $_GET[ ' awal ' ] ;
$page = $_GET[ ' page' ] ;

digunakan untuk menangkap parameter yang dikirimkan oleh script
pagination.php yang berada di <a href='pagination.php?awal=$awal&page=$j'>

i f ( empt y( $awal ) )
{
$awal = 0;
}

J ika variabel $awal belum memiliki nilai maka nilai dari $awal=0;

$car i = mysql _quer y( " sel ect * f r ommk l i mi t $awal , 10" ) ;

Karena $awal =0, maka select * from mk limit 0,10 artinya menampilkan
data sebanyak 10 dimulai dari data ke 0. (0 artinya data pertama).

output :

Agus Ramdhani Nugraha, MT.
57



X. FUNGSI-FUNGSI MYSQL

1) mysql_affected_rows


Perhatikan tulisan 1 row affected, ketika terjadi satu proses penginputan
data, maka akan diinformasikan jumlah baris yang bertambah. Begitu juga
dengan proses perubahan dan penghapusan.
1 row affected artinya 1 baris berubah (bertambah/berkurang/termodifikasi)

mysql_affected_rows.php
<?php
$konek = mysql _connect ( ' l ocal host ' , ' r oot ' , ' ' ) ;
i f ( ! $konek)
{
di e( ' Gak Konek: ' . mysql _er r or ( ) ) ;
}
mysql _sel ect _db( ' php' ) ;
$ubah = mysql _quer y( " updat e mhs set nama=' Macan' wher e
nama=' Agus R' " ) ;
echo" J uml ah Dat a Yang Di ubah : " , mysql _af f ect ed_r ows( ) ;
?>

Penjelasan script :

i f ( ! $konek)
{
di e( ' Gak Konek: ' . mysql _er r or ( ) ) ;
}
J ika ada yang salah dengan $koneksi (host,user dan password) maka akan
ditampilkan pesan errornya.

$ubah = mysql _quer y( " updat e mhs set nama=' Macan' wher e
nama=' Agus R' " ) ;

Agus Ramdhani Nugraha, MT.
58
Variable $ubah akan mengubah data yang namanya Agus R di table mhs
kolom nama dengan Macan

echo" J uml ah Dat a Yang Di ubah : " , mysql _af f ect ed_r ows( ) ;

Karena hanya ada satu nama Agus R yang akan diubah menjadi macan
maka nilai mysql_affected_rows adalah 1.

2) mysql_close

mysql_close tidak begitu penting karena mysql_connect() akan langsung
memutus hubungan ke database server secara otomatis.

mysql_close.php
<?php
$konek = mysql _connect ( ' l ocal host ' , ' r oot ' , ' ' ) ;
i f ( ! $konek) {
di e( ' Gak Konek : ' . mysql _er r or ( ) ) ;
}
echo ' Ber hasi l Konek' ;
mysql _cl ose( $konek) ;
?>


3) mysql_connect

mysql_connect berfungsi untuk membuka koneksi ke database mysql,.

mysql_connect01.php
<?php
$konek = mysql _connect ( ' l ocal host ' , ' r oot ' , ' ' ) ;
i f ( ! $konek) {
di e( ' Gak Konek : ' . mysql _er r or ( ) ) ;
}
echo ' Ber hasi l Konek' ;
mysql _cl ose( $konek) ;
?>

mysql_connect02.php
<?php
$konek = mysql _connect ( ' det i k. com: 3306' , ' r oot ' , ' ' ) ;
i f ( ! $konek) {
di e( ' Gak Konek : ' . mysql _er r or ( ) ) ;
}
echo ' Ber hasi l Konek' ;
mysql _cl ose( $konek) ;
?>

mysql_connect03.php
<?php
$konek = mysql _connect ( ' 127. 0. 01: 3306' , ' r oot ' , ' ' ) ;
Agus Ramdhani Nugraha, MT.
59
i f ( ! $konek) {
di e( ' Gak Konek : ' . mysql _er r or ( ) ) ;
}
echo ' Ber hasi l Konek' ;
mysql _cl ose( $konek) ;
?>

mysql_connect01.php dan mysql_connect03.php bisa konek ke database
karena localhost bisa diwakilkan dengan 127.0.0.1 sedangkan 3306 adalah
port yang digunakan mysql.
mysql-connect02.php gak bisa konek karena koneksi ke situs atau komputer
detik.com tidak bisa, Uknown Server berarti server tidak bisa ditemukan.

4) mysql_error

mysql error berfungsi untuk menampilkan error yang disebabkan kesalahan
dalam database mysql. Error ini akan ditangkap oleh php dan ditampilkan
dalam browser.

mysql_error.php
<?php
$konek = mysql _connect ( ' 127. 0. 01: 3306' , ' r oot ' , ' ' ) ;
$konek_ke_db = mysql _sel ect _db( ' admi ni st r asi ' ) ;
i f ( ! $konek_ke_db) {
di e( ' Gak Konek : ' . mysql _er r or ( ) ) ;
}
echo ' Ber hasi l Konek' ;
mysql _cl ose( $konek) ;
?>

J ika didalam database mysql tidak ada database dengan nama administrasi
maka mysql_error akan bernilai Unknown database 'administrasi'

5) mysql_fetch_array

Menampilkan data dalam bentuk arry asosiatif, aray nomor atau keduanya.
mysql_fetch_array01.php
<?php
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
$car i = mysql _quer y( " sel ect * f r ommhs" ) ;
Whi l e( $kol om= mysql _f et ch_ar r ay( $car i , MYSQL_ASSOC) )
{
echo" $kol om[ ni m] &nbsp; $kol om[ nama] <br >" ;
}
}
el se
echo" KONEKSI GAGAL" ;
?>
Agus Ramdhani Nugraha, MT.
60

mysql_fetch_array02.php
<?php
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
$car i = mysql _quer y( " sel ect * f r ommhs" ) ;
Whi l e( $kol om= mysql _f et ch_ar r ay( $car i , MYSQL_NUM) )
{
echo" $kol om[ 0] &nbsp; $kol om[ 1] <br >" ;
}
}
el se
echo" KONEKSI GAGAL" ;
?>

mysql_fetch_array03.php
<?php
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
$car i = mysql _quer y( " sel ect * f r ommhs" ) ;
Whi l e( $kol om= mysql _f et ch_ar r ay( $car i , MYSQL_BOTH) )
{
echo" $kol om[ 0] &nbsp; $kol om[ nama] <br >" ;
}
}
el se
echo" KONEKSI GAGAL" ;
?>



6) mysql_fetch_assoc

Menampilkan data dalam bentuk array asosiatif
mysql_fetach_assosc.php
<?php
$konek = mysql _connect ( " l ocal host " , " r oot " , " " ) ;
$db = mysql _sel ect _db( " php" ) ;
i f ( $konek)
{
$car i = mysql _quer y( " sel ect * f r ommhs" ) ;
Whi l e( $kol om= mysql _f et ch_assoc( $car i ) )
{
echo" $kol om[ ni m] &nbsp; $kol om[ nama] <br >" ;
}
}
el se
echo" KONEKSI GAGAL" ;
?>
Agus Ramdhani Nugraha, MT.
61

7) mysql_fetch_field

Untuk menampilkan informasi atau metadata kolom dalam tabel yang
didefiniskan oleh query.

mysql_fetch_field.php
<?php
$konek = mysql _connect ( ' l ocal host ' , ' r oot ' , ' ' ) ;
i f ( ! $konek) {
di e( ' Gak Konek : ' . mysql _er r or ( ) ) ;
}
mysql _sel ect _db( ' php' ) ;
$hasi l = mysql _quer y( ' sel ect * f r ommhs' ) ;
i f ( ! $hasi l ) {
di e( ' Quer y gagal : ' . mysql _er r or ( ) ) ;
}
/ * mengambi l met adat a kol om*/
$i = 0;
whi l e ( $i < mysql _num_f i el ds( $hasi l ) )
{
echo " I nf or masi unt uk kol omke- $i : <br / >\ n" ;
$met a = mysql _f et ch_f i el d( $hasi l , $i ) ;
i f ( ! $met a)
{
echo " Ti dak ada i nf or masi t er sedi a <br / >\ n" ;
}
echo " <pr e>
bl ob: $met a- >bl ob
max_l engt h: $met a- >max_l engt h
mul t i pl e_key: $met a- >mul t i pl e_key
name: $met a- >name
not _nul l : $met a- >not _nul l
numer i c: $met a- >numer i c
pr i mar y_key: $met a- >pr i mar y_key
t abl e: $met a- >t abl e
t ype: $met a- >t ype
def aul t : $met a- >def
uni que_key: $met a- >uni que_key
unsi gned: $met a- >unsi gned
zer of i l l : $met a- >zer of i l l
</ pr e>" ;
$i ++;
}
mysql _f r ee_r esul t ( $hasi l ) ;
?>


8) mysql_fetch_row

Menampilkan data dalam bentuk aray enumerasi.


Agus Ramdhani Nugraha, MT.
62
mysql_fetch_row.php
<?php
$konek = mysql _connect ( ' l ocal host ' , ' r oot ' , ' ' ) ;
i f ( ! $konek) {
di e( ' Gak Konek : ' . mysql _er r or ( ) ) ;
}
mysql _sel ect _db( ' php' ) ;
$hasi l = mysql _quer y( " SELECT nama, ni m f r om mhs wher e ni m
l i ke' 3%' " ) ;
i f ( ! $hasi l ) {
echo ' Quer y gagal : ' . mysql _er r or ( ) ;
exi t ;
}
$r ow = mysql _f et ch_r ow( $hasi l ) ;

echo" $r ow[ 0] &nbsp; $r ow[ 1] " ;

?>

Latihan : Buatlah sebuah file dengan nama mysql_fetch_row01.php, yang
bisa menampilkan semua data dari query pada $hasil di file
mysql_fetch_row.php.

9) mysql_num_fields

Menampilkan jumlah kolom yang didefiniskan oleh mysql_query

mysql_num_fields.php
<?php
$konek = mysql _connect ( ' l ocal host ' , ' r oot ' , ' ' ) ;
i f ( ! $konek) {
di e( ' Gak Konek : ' . mysql _er r or ( ) ) ;
}
mysql _sel ect _db( ' php' ) ;
$hasi l = mysql _quer y( " SELECT * f r ommhs" ) ;
echo mysql _num_f i el ds( $hasi l ) ;
?>

Output : 2
Karena jumlah kolom di tabel mhs adalah 2 dan sesuai dengan select *
from mhs yang artinya tampilkan semua table dalam tabel mhs.


10) mysql_num_rows

Menampilkan jumlah baris yang didefiniskan oleh mysql_query
mysql_num_rows.php
<?php
$konek = mysql _connect ( ' l ocal host ' , ' r oot ' , ' ' ) ;
i f ( ! $konek) {
di e( ' Gak Konek : ' . mysql _er r or ( ) ) ;
Agus Ramdhani Nugraha, MT.
63
}
mysql _sel ect _db( ' php' ) ;
$hasi l = mysql _quer y( " SELECT * f r om mhs wher e ni m
l i ke' %1' " ) ;
$j ml _bar i s = mysql _num_r ows( $hasi l ) ;

echo" j uml ah bar i s dat a : $j ml _bar i s bar i s" ;
?>

Outpunya : 1
Karena select * from mhs where nim like%1 artinya menampilkan data
yang nim nya diakhiri dengan angka 1.


11) mysql_query

Melakukan permintaan (query) terhadap tabel didalam database)

12) mysql_result

Menampilkan hasil query

mysql_result01.php
<?php
$l i nk = mysql _connect ( ' l ocal host ' , ' r oot ' , ' ' ) ;
i f ( ! $l i nk) {
di e( ' Coul d not connect : ' . mysql _er r or ( ) ) ;
}
mysql _sel ect _db( ' php' ) ;
$r esul t = mysql _quer y( ' SELECT * f r ommhs' ) ;
i f ( ! $r esul t ) {
di e( ' Coul d not quer y: ' . mysql _er r or ( ) ) ;
}
echo mysql _r esul t ( $r esul t , 0, 1) ; / / bar i s 0 kol om1

mysql _cl ose( $l i nk) ;
?>



13) mysql_select_db

Memilih database yang akan diproses.

XI. END

Agus Ramdhani Nugraha, MT.

You might also like