Komputer aplikasi e-Commerce

(1)

PHP dibuat oleh Rasmus Lerdorf pada tahun 1994, pada awalnya tidak untuk didistribusikan dan hanya digunakan pada homepage pribadinya. Pada tahun 1995 dikeluarkan versi pertama yang dapat digunakan oleh umum dengan nama Personal Home Page Tools. Ditulis kembali pada pertengahan-1995 dan diberi nama sebagai PHP/FI Version 2. FI berasal dari paket Rasmus yang mana merupakan html interpreter untuk data form. Pada hasil kombinasi tersebut juga ditambah dukungan terhadap mSQL. PHP/FI terus berkembang dan banyak orang mulai memberikan kontribusi dalam pengembangannya.

Pada tahun 1996 PHP/FI diperkirakan telah digunakan 15,000 situs web didunia, dan pada pertengahan 1997 jumlah ini berkembang melebihi 50,000. Pada pertengahan 1997 juga terjadi perubahan pada PHP dimana berubah menjadi proyek yang didukung oleh team yang lebih terorganisasi. Parsernya ditulis ulang oleh Zeev Suraski dan Andi Gutmans dan parser baru inilah yang membentuk basis untuk PHP versi 3. Banyak kode utility dari PHP/FI yang di masukkan ke PHP dan banyak diantaranya telah selesai ditulis kembali.

Sekarang baik PHP/FI atau PHP telah diikutsertakan dalam sejumlah produk komersil seperti C2's StrongHold web server dan RedHat Linux. Suatu perkiraan yang konservatif didasarkan dari hasil ekstrapolasi terhadap angka yang diperoleh dari NetCraft, PHP diperkirakan telah digunakan oleh lebih dari 150,000 situs diseluruh dunia. Dan secara perspektif, angka ini lebih besar dibandingkan dengan server yang menjalankan Netscape's flagship Enterprise server di Internet.

1.2. Mengenal Sintak PHP

Untuk menuliskan sesuatu dalam format PHP dapat dilakukan dengan beberapa cara, diantaranya adalah sebagai berikut:

Kode Program pertama.PHP <html>

<h1>Mengenal penulisan PHP </h1>

<?

echo ("<p>1. Cara Pertama this is the simplest, an SGML processing instruction\n"); ?>

<?php echo("<p>2. Cara Kedua if you want to serve XML documents, do like this\n"); ?>

<script language="php">

echo ("<p>3. Cara ketiga some editors (like FrontPage) don't like processing instructions");

</script> <%

echo ("<p>4. Cara Keempat You may optionally use ASP-style tags"); %>

<%= $variable; # This is a shortcut for "<%echo .." %> Akhir program pertama.PHP


(2)

Ini adalah output yang dihasilkan dari program di atas.

1.3. Pemisahan Instruksi

Pemisahan instruksi dalam PHP sama dengan pemisahan intruksi yang diguinakan dalam bahasa C atau PERL, yaitu dengan menggunakan titik koma sebagai penutup tiap statement dan diakhiri dengan tag ( ?>) dan juga berfungsi sebagai akhir statement.

Kode Program pisah.phtml <html>

<h1>Instruksi Pemisahan </h1>

Cara pertama <p>

<?php

echo "This is a test"; ?>

<p> Cara kedua <p>

<?php echo "This is a test" ?> Akhir Program pisah.phtml


(3)

Untuk menambahkan baris komentar dalam PHP dapat digunakan beberapa style yang didukung oleh PHP ini, yaitu komentar ‘C’, ‘C++’ dan Unix Shell-style, contoh:

<?php

echo "Halo ini penulisan komentar ";//Komentar gaya c++ /* Ini komentar lebih dari satu baris

yang ini juga */

echo "Ini juga penulisan komentar";

echo "Ini penulisan k omentar terakhir"; # Komentar gaya penulisan shell-style ?>

dibawah ini adalah contoh penulisan komentar yang salah <?php

/*

echo "This is a test"; /* This comment will cause a problem */ */

?> <?php

echo "This is a test"; // This is a one-line c++ style comment /* This is a multi line comment

yet another line of comment */ echo "This is yet another test";

echo "One Final Test"; # This is shell-style style comment ?>

1.5. Sekilas HTML

Sebuah dokumen HTML pada dasarnya berstruktur seperti gambar 2.1. Dokumen dibagi menjadi dua bagian besar, yaitu HEADER (bagian atas) dan bagian BODY (tubuh dokumen). Masing-masing ditandai oleh pasangan tag <HEAD> dan <BODY>. Bagian HEAD berisikan judul dokumen dan informasi-informasi dasar lain, sedangkan bagian BODY adalah data dokumennya.

Untuk mengetikkan dokumen, kita menggunakan Notepad atau text editor yang lain.

Struktur HTML

File HTML

Bagian

Bagian

BODY


(4)

Kedua instruksi yang pertama kali harus dituliskan adalah : <HTML>

…. </HTML>

Instruksi ini yang akan memberi tanda awal dan akhir suatu dokumen HTML. Kemudian kita buat bagian HEAD dokumen denga perintah <HEAD> dan </HEAD>. Didalam tag ini kita akan meletakkan judul dokumen , dengan perintah <TITLE> dan </TITLE>.

<HTML> <HEAD> <TITLE>

The Title of the Document </TITLE>

</HEAD> <BODY>

My first HTML Document </BODY>

</HTML>

Contoh kecil dokumen HTML sekarang telah lengkap, berisi semua tag dokumen HTML yang harus ada. Simpan file tersebut dengan nama- misalnya “first.html” dan selanjutnya dapat ditampilkan dalam browser web.

Untuk melihat dokumen HTML secara lokal melalui browser Web (misalkan Internet Explorer) kita buka file tersebut dengan memilih menu FILE dan OPEN FILE.

Contoh dokumen HTML

1.6. Headline

Dokumen yang kita buat dapat diperbaiki tampilannya dengan menggunakan tag headline. HTML mendukung enam tingkat headline <H1> sampai dengan <H6>. Untuk headline dengan ukuran kecil, digunakan nomor yang lebih besar misalnya <H2> atau <H5>. Headline secara otomatis akan melakukan pergantian baris dalam dokumen. Untuk menengahkan headline, gunakan kode berikut :


(5)

Dokumen yang kita buat sejauh ini belum mengenal pemisah baris dan paragraf. Instruksi <P> merupakan tag yang dipakai untuk mencegah berkumpulnya seluruh teks dokumen menjadi satu paragraf besar juga memberikan jarak antar paragraf. Untuk pergantian baris kita pergunakan instruksi <BR>. Hanya saja instruksi <P> dan <BR> ini bisa sangat melelahkan untuk dokumen yang panjang. Tag <PRE> akan mempermudahnya dengan membuat browser menampilkan teks dalam format aslinya, termasuk spasi dan carriage return. Perintah <PRE> akan sangat bermanfaat untuk membuat dokumen –dokumen yang membutuhkan banyak kolom, seperti tabel.

1.8. Blockquote

Tag <BLOCKQUOTE> memungkinkan untuk meletakkan suatu blok terindentasi sehingga memisahkannya dari tubuh teks. Tidak seperti <PRE>, <BLOCKQUOTE> tidak mempertahankan carriage return atau spasi kosong yang Anda buat, namun hanya membuat blok teks yang didalamnya sedikit tergeser ke dalam.

1.9. Font

Seperti program pengolah kata, HTML mengenal kemampuan untuk membuat teks tebal dengan tag <B>, teks miring dengan <I> dan teks bergaris bawah dengan tag <U>. Untuk memanipulasi ukuran font dengan menggunakan tag <FONT> yang diikuti sebuah atribut SIZE. Misalkan <FONT SIZE =+4> berarti teks yang akan ditampilkan dalam ukuran 4. Ukuran berada diantara angka 1 sampai dengan 7. Tanda + didepan angka jika menginginkan ukuran font yang lebih besar daripada normal. Demikian juga tanda – untuk sebaliknya.

1.10.Image

Agar tidak membosankan, ada baiknya bila kita juga menempatkan image (gambar) dalam homepage yang dibuat.

Format Image

Format yang paling terkenal adalah GIF dan JPG. Keduanya banyak sekali dipergunakan dalam dokumen-dokumen HTML sehingga sering disebut sebagai format standar untuk grafik. Secara umum, sebaiknya gunakan GIF bila Anda berencana menaruh terlalu banyak gambar di dalam dokumen. JPG baik dipergunakan jika Anda berkeinginan untuk meletakkan gambar berupa foto yang memiliki lebih dari 256 warna.

Menempatkan Image

HTML menyediakan suatu mekanisme sederhana untuk memadukan file gambar dengan dokumen web Anda. Instruksi <IMG> adalah sebuah open tag, yang artinya tidak memerlukan tanda penutup. Adapun cara penulisan perintah<IMG> adalah sebagai berikut : <IMG SRC=”/URL/nama_file”>

Tag <IMG> selalu diikuti dengan atribut SRC yang menunjukkan lokasi dan nama file grafik yang ingin kita tampilkan. URL (universal Resources Locator) adalah alamat absolut dari file grafik tersebut.

Atribut tambahan untuk instruksi <IMG> adalah ALIGN. Atribut ini mengendalikan letak (alignment) teks yang berada di baris yang sama dengan grafik terhadap sisi vertikal gambar.


(6)

<IMG SRC=”MyImage.gif” ALIGN=TOP> Atribut Image

• WIDTH dan HEIGHT memberikan informasi mengenai ukuran gambar kepada browser sebelum file grafiknya sendiri dikirimkan.

• VSPACE dan HSPACE yang menentukan jarak diatas dan dibawah (VSPACE) atau di kiri dan di kanan (HSPACE) dari sebuah gambar.

• BORDER menentukan garis pinggir di sekitar gambar. Bila BORDER diset sama dengan 0, garis pinggir akan dihilangkan dari dokumen .

1.11. Hypertext Link

Hypertext atau sering disebut teks interaktif, memungkinkan kita untuk membuat link (sambungan) antara dokumen-dokumen sehingga user dapat memperoleh dokumen-dokumen lain di luar dokumen yang sedang diakses. Suatu link hypertext, dalam suatu dokumen Web, dapat berupa gambar atau teks. Bila Anda mengklikkan mouse pada link-link tersebut, browser akan membawa Anda menuju ke dokumen lain yang ditunjukkan oleh link tersebut. Membuat Link

Buatlah contoh file berikut : <HTML>

<HEAD> <TITLE>

The Title of the Document </TITLE>

</HEAD> <BODY>

<A HREF =”MyLink.htm”>Click Here</A> </BODY>

</HTML>

Tag <A HREF =”MyLink.htm”> menyatakan bahwa bagian dokumen yang berada didalam tag ini adalah suatu link yang menuju ke sebuah dokumen HTML lain, yang dalam contoh diatas, bernama ”MyLink.htm”. Sembarang teks atau gambar yang berada diantara tag <A HREF=> dan </A> akan ditampilkan browser dalam bentuk yang berbeda dari bagian dokumen lain. Biasanya browser akan menandai link ini dengan garis bawah pada teks atau garis pinggir berwarna pada gambar. User dapat mengklikkan mousenya pada link ini untuk menuju ke dokumen “MyLink.htm”.

Anda dapat mengkaitkan suatu dokumen atau lokasi di Internet yang berada di luar sistem dimana dokumen sekarang berada. Anda dapat menerapkan link dari dokumen Anda ke suatu dokumen yang berada di Web site lain, FTP site, Gopher site atau ke sembarang sumber daya yang ada di Internet. Cobalah macam link berikut :

<A HREF =”http://www.microsoft.com”> Web Microsoft</A> <A HREF =”ftp://ftp.netscape.com”>FTP Server Netscape</A>

1.12. Form

Formulir (form) pada suatu web site disediakan untuk diisi oleh user sehingga memungkinkan untuk bisa berinteraksi dengan pihak penyedia informasi Web.


(7)

1.13. Merancang Form untuk Dokumen

Form dalam HTML ditandai dengan tag <FORM> dan </FORM>. Sewaktu kita membuat elemen form, kita perlu menentukan bagaimana dan kemana data yang diisikan ke dalam form tersebut akan dikirimkan dari browser ke Web server.

Hal ini dilakukan dengan pernyataan ACTION dan METHOD. ACTION menunjukkan lokasi tempat program CGI yang hendak dijalankan. METHOD menunjukkan bagaimana informasi yang diisikan dalam form harus dikirimkan ke Web server. METHOD yang umum adalah GET dan POST.

1.14.TextArea

Ada beberapa elemen form yang dapat kita pergunakan dengan <FORM> yaitu TEXTAREA, SELECT dan INPUT. TEXTAREA dipakai terutama bila kita menginginkan tempat bagi user Web untuk memasukkan informasi yang panjangnya beberapa baris. Perintah yang dipergunakan adalah :

<TEXTAREA NAME=”nama” ROWS=n COL=n>

NAME menyatakan nama data yang akan dimasukkan ke dalam textarea ini. COLS dan ROWS berturut-turut menentukan banyak lebar textarea dan jumlah baris di dalam textarea. BIla COLS dan ROWS tidak ditentukan dalam kode TEXTAREA, maka nilai yang akan dipergunakan adalah 40 karakter lebar dan 4 baris tinggi.

1.15. Select

Terkadang Anda ingin menyediakan beberapa pilihan kepada user dokumen Web Anda sebagai masukan. <SELECT> akan menampilkan suatu daftar yang dapat dipilih oleh user , baik dalam bentuk menu pop-up maupun menu gulung. Perhatikan contoh berikut :

<HTML> <HEAD> <TITLE>

The Title of the Document </TITLE>

</HEAD> <BODY> <FORM>

<SELECT NAME="pilih">

<OPTION SELECTED VALUE="bandung>Bandung <OPTION VALUE="jakarta">Jakarta <OPTION VALUE="surabaya">Surabaya <OPTION VALUE="semarang">Semarang </SELECT> </FORM> </BODY>


(8)

1.16. Input

Input adalah elemen form yang mungkin paling banyak dipakai. <INPUT> Dibentuk dalam beragan bentuk, yang dapat berupa kotak teks, tombol-tombol dan checkbox.

Macam-macam bentuk <INPUT> adalah :

TEXT, dipergunakan untuk menampilkan kotak teks sebagai masukan dari user. Panjang kotak teks ini dibatsi satu baris saja. Perintah yang dipergunakan adalah:

<INPUT TYPE=”text”>

RADIO Tombol-tombol akan nampak seperti sebuah lingkaran kosong yang bilamana dipilih, akan berisi lingkaran lain yang berwarna lain yang berwarna hitam didalamnya. <INPUT TYPE=”radio”>

<FORM>

Apakah Anda Suka Internet ? <BR>

<INPUT TYPE="radio" NAME="pilihan" VALUE="ya"> Ya

<INPUT TYPE="radio"NAME="pilihan"VALUE="tidak"> Tidak</FORM> CHECKBOX

Serupa dengan tombol, Checkbox memungkinkan user dokumen untuk memilih suatu pilihan dari beberapa pilihan yang tersedia, bedanya Checkbox mengijinkan user memilih lebih dari satu pilihan. Perintah yang digunakan :

<INPUT TYPE=”checkbox”> SUBMIT

Pada akhir sebuah form, haruslah terdapat satu tombol yang dipergunakan untuk mengirimkan data-data yang telah dimasukkan ke dalam form. Biasanya tombol ini diberi tulian “SUBMIT”. Perintahnya :

<INPUT TYPE=”submit”> PASSWORD

Bentuk input yang lain adalah PASSWORD, yang sebenarnya adalah kotak teks biasa namun tidak menampilkan ke layar data yang dimasukkan didalamnya.


(9)

<html>

Beberapa Perintah Input <hr>

<pre>

Masukan User Id : <INPUT TYPE="text" name=userid> Password : <INPUT TYPE="password" name=password> Apakah Anda Suka Internet ? <BR>

<INPUT TYPE="radio" NAME="pilihan" VALUE="ya"> Ya <INPUT TYPE="radio"NAME="pilihan"VALUE="tidak"> Tidak Kegemaran Anda:

<INPUT TYPE="checkbox" name=interest1>Baca <INPUT TYPE="checkbox" name=interest2>Jalan <INPUT TYPE="checkbox" name=interest3>Komputer <hr>

<INPUT TYPE="submit" value=submit> <INPUT TYPE="reset" value=reset>

1.17. Tabel

Tabel bermanfaat untuk menyajikan informasi yang memerlukan banyak kolom dan baris. Namun lebih daripada itu, tabel dapat menjadi alat utama dalam HTML untuk mengendalikan tataletak dokumen Web kita.

Dasar-dasar Tabel

Tabel dibuat dari tag<TABLE> dan </TABLE>. Didalam tag ini dapat dibuat baris-baris tabel dengan perintah <TR> dan </TR>. Didalam <TR> ini kemudian kita dapat menenpatkan perintah <TD> dan </TD>. Sebuah contoh sederhana untuk membuat tabel dengan dua baris dan tiga kolom :


(10)

<TABLE BORDER=1> <TR>

<TD>one</TD> <TD>two</TD> <TD>three</TD> </TR>

<TR>

<TD>four</TD> <TD>five</TD> <TD>six</TD> </TR>

</TABLE>

Perintah BORDER menentukan besarnya garis pinggir dalam tabel. Bila BORDER dipasang sama dengan nol, maka garis pinggir akan hilang.

Halaman dengan tabel

Lebar tabel keseluruhan dapat diatur dengan menentukan lebar tabel dalam pixel atau persentase di dalam

<TABLE WIDTH=x>

Sebagai contoh kita akan membuat tabel dengan lebar 80% lebar layar browser, maka perintahnya adalah :

<TABLE BORDER=1 WIDTH=80%>

Untuk meletakkan data agar berada di tengah-tengah sel tabel, kita memberikan pernyataan ALIGN=CENTER pada <TR>. Atau dapat pula dibuat rata kiri atau rata kanan dengan pernyataan ALIGN=LEFT atau ALIGN=RIGHT. Untuk menentukan tata letak vertikal, digunakan VALIGN. Nilai yang diberikan adalah CENTER, TOP atau BOTTOM. Misalnya: <TR VALIGN=BOTTOM>


(11)

1.8. Frame

Window browser dapat dibagi menjadi beberapa frame. Artinya, sebuah frame adalah daerah segiempat yang berada di dalam window browser. Setiap frame menampilkan isi dokumennya masing-masing.

Membuat frame

Untuk membuat frame, kita perlu ada tag <FRAMESET> dan <FRAME>. Halaman HTML untuk membuat dua frame bisa seperti berikut:

<HTML>

<FRAMESET ROWS="50%,50%">

<FRAME SRc="atas.html" NAME="frame1"> <FRAME SRc="bawah.html" NAME="frame2"> </FRAMESET>

</HTML>

Kode di atas akan menghasilkan dua frame. Perhatikan bahwa property ROWS digunakan pada tag <FRAMESET>. Artinya kedua frame akan tersusun dalam susunan atas-bawah. Frame atas me-load halaman HTML page1.htm dan frame bawah menampilkan halaman page2.htm. Hasilnya akan terlihat seperti gambar 2.5.

Jika hendak menyusun frame pada susunan kolom kita dapat tuliskan COLS sebagai pengganti ROWS pada tag <FRAMESET>. Bagian “50%,50%” menentukan seberapa besar ukuran kedua frame. Kita dapat juga menuliskan “50%,*” jika tidak mau menghitung berapa besar frame kedua (dengan ukuran total keduanya 100%). Ukuran juga dapat ditentukan dalam satuan pixel dengan menghilangkan tanda %. Setiap frame harus memiliki nama yang unik melalui property NAME pada tag <FRAME>.


(12)

Kita dapat juga membuat tag <FRAMESET> yang berlapis. Berikut ini contohnya: <frameset rows="20%,*">

<frame src="atas.html"> <frameset cols="20%,*"> <frame src="kiri.html"> <frame src="kanan.html">

Halaman dengan 3 frame

Menentukan ukuran border dapat dilakukan melalui property BORDER pada tag <FRAMESET>. Jika BORDER=0 berarti tidak digunakan border di antara frame (tidak berlaku pada Netscape 2.x).

1.9. Penanganan Action Dalam PHP

Berikut adalah beberapa contoh penanganan action dalam PHP, untuk mengambil nilai yang dikirim dari dokumen HTML, kedalam dokumen PHP

a. Penggunaan Perintah INPUT TEXT Input.html

<html>

<form action="input.php" methode=post> <h3>

<center> <pre>

MENGHITUNG TOTAL HARGA <table border=1>

<tr><td>Nama Barang<td><input type=text name=NB size=30> <tr><td>Harga<td><input type=text name=HARGA size=10> <tr><td>Jumlah<td><input type=text name=JUMLAH size=10> </table>

<br>

<input type=submit value=Hitung><input type=reset value=Batal> </form>


(13)

input.php

<html> <h1> <center> PESANAN ANDA <table border=1> <?

echo "<tr><td>Nama Barang<td>$NB"; echo "<tr><td>Harga<td>$HARGA"; echo "<tr><td>Jumlah<td>$JUMLAH"; $TOTAL = $HARGA * $JUMLAH;

echo "<tr><td>Total<td>$TOTAL"; ?>

</table>

Halaman Dengan Input Tipe Text

b. Menggunakan INPUT TYPE RADIO

input2.html

<html>

<form action="input2.php" methode=post> <h3>

<pre>

Menggunakan Type Radio <table border=1>

<tr><td>Diskon<td><input type=radio name=rd1 value=ya>Ya <tr><td><td><input type=radio name=rd1 value=no>Tidak </table>

<br>

<input type=submit value=Hitung><input type=reset value=Batal> </form>


(14)

input2.php <html> <h3> <pre>

ISI PARAMETER <table border=1> <?

echo "<tr><td>Isi Parameter yang dikirim<td>$rd1"; if($rd1=='ya')

echo "<tr><td>Keterangan<td>Dapat Diskon"; if($rd1=='no')

echo "<tr><td>Keterangan<td>Tidak Dapat Diskon"; ?>

Halaman Dengan Input Tipe Radio

b. Menggunakan INPUT TYPE CHECKBOX input3.html

<html>

<form action="input3.php" methode=post> <h3>

<pre>

Menggunakan Type Checkbox Peralatan Elektronik Anda <table border=1>

<tr><td><input type=checkbox name=alat1>Radio <tr><td><input type=checkbox name=alat2>TV

<tr><td><input type=checkbox name=alat3>Komputer </table>

<br>

<input type=submit value=Hitung><input type=reset value=Batal> </form>


(15)

input3.php <html> <h3> <pre>

MENAMPILKAN ISI PARAMETER CHECKBOX <table border=1>

<?

echo "<tr><td>Isi Parameter yang dikirim<td>"; if($alat1=='on')

{

echo "<tr><td>RADIO"; }

if($alat2=='on') {

echo "<tr><td>TV"; }

if($alat3=='on') {

echo "<tr><td>KOMPUTER"; }

?> </table>


(16)

c. Menggunakan Select Select.html

<html>

<form action="select.php" methode=post> <h3>

<pre>

Menggunakan Select <table border=1>

<tr><td>NAMA KOTA<td><select name=kota> <option value=bandung>Bandung

<option value=garut>Garut

<option value=tasik>Tasikmalaya </table>

<br>

<input type=submit value=Hitung><input type=reset value=Batal> </form>

Select.php <html> <h3> <pre>

MENAMPILKAN ISI PARAMETER SELECT <table border=1>

<?

echo "<tr><td>KOTA<td>$kota"; ?>

</table>


(17)

Textarea.html <html>

<form action="textarea.php" methode=post> <h3>

<pre>

Menggunakan Textarea <table border=1>

<tr><td>Pesan Anda<td><textarea name=pesan cols=50 rows=5> </textarea>

</table> <br>

<input type=submit value=Hitung><input type=reset value=Batal> </form>

Textarea.php <html>

<h3> <pre>

MENAMPILKAN ISI PARAMETER TEXTAREA <table border=1>

<?

echo "<tr><td>PESAN ANDA<td>$pesan"; ?>

</table>


(18)

2.1. Tipe data dan Variabel pada PHP

PHP mendukung tipe data berikut ini:

• integer

• double

• string

• array

• object

Tipe variabel ini tidak perlu ditentukan oleh programmer, melainkan ditentukan pada saat runtime oleh PHP dengan kebergantungan pada konteks pemakaian variabel tersebut.

2.2. Menginisialiasi Variabel

Untuk menginisialisasi suatu variabel dalam PHP, secara sederhana berikan saja suatu nilai padanya. Tetapi untuk tipe seperti array dan objek membutuhkan mekanisme yang berbeda. $nama = "Ilham";

$umur = 6; $berat = 20.5;

2.3. Menginisialisasi Array

Array dapat diinisialisasi dengan dua cara: dengan pemberian nilai langsung, dan menggunakan konstruksi array() (yang akan dijelaskan pada bagian Fungsi).

Untuk memberikan nilai secara langsung pada suatu array, secara sederhana adalah memberikan nilai ke variabel array dengan subscript kosong. Nilai tersebut akan ditambahkan sebagai elemen terakhir dari array.

$names[] = "Ilham"; // $names[0] = "Ilham" $names[] = "Melati"; // $names[1] = "Melati"

Sesuatu yang perlu diingat adakah elemen array dimulai dari index 0 (bukan 1)

2.4. Menginisialiasi Objek

Untuk menginisialisasi suatu object, anda dapat mengunakan perintah new. Perintah ini digunakan untuk menginisialisasi suatu object kepada suatu variabel.

class kosong {

function masa_bodo () {

echo "Tidak melakukan apa-apa."; }

}

$bar = new kosong; $bar -> masa_bodo ();

2.5. Jangkauan dari variabel

Jangkauan dari suatu variabel adalah tergantung pada dimana variabel tersebut didefinisikan. Pada umumnya semua variabel PHP hanya memiliki suatu jangkauan. Setiap variabel yang digunakan dalam suatu fungsi, maka secara default jangkauannya adalah lokal. Sebagai contoh:

$awal = 1; /* jangkauan global */

function Coba () {

echo $awal; /* mengacu pada variabel jangkauan lokal */ }


(19)

$awal lokal yang tidak memiliki nilai apapun. Hal ini berbeda dengan bahasa C dimana setiap variabel global akan berlaku bagi semua function, kecuali didefinisikan sebagai local. Dalam PHP, variabel global harus dideklarasikan sebagai global didalam suatu fungsi jika mereka akan digunakan dalam fungsi tersebut, contoh :

$panjang = 10; $lebar = 5;

function Hitungluas () {

global $panjang, $lebar;$luas $luas = $panjang * $lebar; }

Hitungluas (); echo $luas;

Script diatas akan menghasilkan keluaran "50". Dengan mendeklarasikan $panjang dan $lebar sebagai global didalam fungsi.

Cara kedua untuk mengakses variabel sebagai acuan global adalah dengan mengunakan definisi $GLOBAL array pada PHP. Contoh sebelumnya dapat juga ditulis menjadi:

$panjang= 1; $lebar= 2;

function Hitungluas () {

$GLOBALS["luas"] = $GLOBALS["panjang"] * $GLOBALS["lebar"]; }

Hitungluas (); echo $luas;

$GLOBALS array adalah suatu asosiasi array dengan key adalah nama dari variabel global. Hal lain yang penting dari jangkuan adalah variabel static. Suatu variabel hanya ada pada jangkauan lokal fungsi, dan nilainya akan tetap dipertahankan:

function Coba () { $a = 0;

echo $a; $a++; }

Pada fungsi diatas nilai $panjang kembali menjadi 0 untuk setiap pemanggilan. Artinya nilai $panjang akan hilang begitu program keluar dari fungsi. Contoh berikut menggunakan variabel static.

Function Coba () { static $a = 0; echo $a; $a++; }

Sekarang, setiap kali fungsi Coba(), dipanggil maka nilai $a adalah nilai $a pada pemanggilan sebelumnya.


(20)

2.6. Variabel variabel

Kadang-kandang adalah lebih nyaman mengunakan variable-variabel; Yang mana adalah nama variabel yang dapat digunakan secara dinamis. Secara normalnya variabel dibuat dengan :

$a = "hello";

Suatu variabel variabel akan mengunakan nilai dari suatu variabel menjadi nama variabel, Contoh:

$a = "hello"; $$a = "world";

Pada contoh diatas akan terbentuk dua variabel yaitu $a dan $hello. Dimana $a berisi "hello" dan $hello berisi "world". Selanjutnya perintah berikut ini:

echo "$a ${$a}"; atau

echo "$a $hello"

Akan menghasilkan keluaran : hello world

2.7. Penentuan tipe variabel

PHP tidak membutuhkan deklarasi variabel secara eksplisit; tipe variabel ditentukan berdasarkan konteks pemakaiannya pada saat runtime. Dengan kata lain; jika anda memberi nilai string kesuatu variabel var, var menjadi suatu variabel tipe string. Jika anda memberi nilai integer ke var, maka otomatis berubah menjadi tipe integer.

Suatu contoh dari otomatisasi konversi tipe pada PHP adalah operator penjumlahan '+'. Jika salah satu operandnya adalah tipe double, maka semua operand lainya dievaluasi sebagai double dan hasilnya adalah double.

$coba = "0"; // $coba adalah string (ASCII 48) $coba++; // $coba adalah string "1" (ASCII 49) $coba += 1; // $coba sekarang adalah integer (2) $coba = $coba + 1.3; // $coba sekarang adalaj double (3.3) $coba = 5 + "10 kotak"; // $coba adalah integer (15)

$coba = 5 + "10 kotak kecil"; // $coba adalah integer (15)

2.8. Mengetahui tipe suatu variabel

Karena PHP menentukan tipe variabel sesuai dengan konteks pemakaiannya, maka anda dapat menggunakan fungsi berikut untuk memeriksa tipe pada suatu variabel gettype(), is_long(), is_double(), is_string(), is_array(), dan is_object().

2.9. Tipe casting

Tipe casting dalam PHP bekerja seperti dalam C: nama dari tipe yang diinginkan ditulis didalam kurang sebelum variabel yang akan di cast.

$coba = 10; // $coba adalah suatu integer $bar = (double) $coba; // $bar adalah suatu double

2.10. Cast yang diperbolehkan:

(int), (integer) - cast ke integer

(real), (double), (float) - cast ke double (string) - cast ke string

(array) - cast ke array (object) - cast ke object


(21)

Ketika suatu string dievaluasikan sebagai suatu nilai numerik, nilai hasil dan tipe ditentukan sebagai berikut.

String akan dievaluasikan sebagai suatu double jika mengandung salah satu karakter '.', 'e' tatau 'E'. Jika tidak akan dievaluasikan sebagai suatu string.

Jika string dimulai dengan data numerik yang sah, maka nilai tersebut akan digunakan, jika tidak akan memiliki nilai 0 (nol).

$coba = 1 + "10.5"; // $coba adalah double (11.5) $coba = 1 + "-1.3e3"; // $coba adalah double (-1299) $coba = 1 + "bob-1.3e3"; // $coba adalah integer (1) $coba = 1 + "bob3"; // $coba adalah integer (1)

$coba = 1 + "10 Small Pigs"; // $coba adalah integer (11) $coba = 1 + "10 Little Piggies"; // $coba adalah integer (11); $coba = "10.0 pigs " + 1; // $coba adalah int (11)

$coba = "10.0 pigs " + 1.0; // $coba adalah double (11)

Tipe dari variabel tergantung pada ekspresi kedua, jika ekspresi pertamanya adalah string

2.12. Menangani variabel Form, Cookies dan Environment

Pada pemrograman CGI, program kita akan berinteraksi dengan variabel-variabel dari luar yang dikirim melalui form baik dengan metode GET maupun metode POST.

Ketika suatu form dikirim ke suatu PHP script, semua variabel dari form secara otomatis dapat diproses oleh script PHP sebagaimana variabel biasanya. Sebagai contoh, perhatikan form berikut ini:

<form action="kosong.php" method="post"> Nama: <input type="text" name="nama"><br> <input type="submit" value="Kirim">

</form>

Top of Form Nama:

Submit

Bottom of Form

Ketika form disubmit, maka PHP akan membuat variabel $nama, yang mana mengandung apa yang diketikkan pada field Nama: di form tersebut.

PHP juga mendukung variabel array dalam kontek form, tetapi dibatasi hanya 1 dimensi, Contoh:

<form action="array.html" method="post">

Nama: <input type="text" name="personal[nama]"><br> Email: <input type="text" name="personal[email]"><br> Beer: <br>

<select multiple name="beer[]"> <option value="warthog">Warthog <option value="guinness">Guinness </select>


(22)

Top of Form

Nama : Email :

Beer:

Submit Bottom of Form

2.13. Variabel pada IMAGE SUBMIT

Ketika mengirim suatu form, juga dimungkinkan untuk menggunakan suatu gambar sebagai pengganti tombol submit dengan tag HTML berikut ini:

<input type=image src="image.gif" name="sub">

Ketika pemakai melakukan klik pada gambar tersebut, makan form akan dikirim ke CGI dengan dua variabel tambahan, yaitu sub_x dan sub_y. Kedua variabel ini adalah koordinat dimana klik dilakukan pada gambar.

2.14. HTTP Cookies

PHP secara transparan mendukung HTTP cookies. Cookies adalah suatu mekanisme penyimpanan data secara remote pada browser klien. Hal ini dapat digunakan untuk mengidentifikasikan pemakai pada kunjungan berikutnya.

Anda dapat menggunakan fungsi SetCookie(). Cookie adalah bagian dari HTTP header, jadi fungsi SetCookie harus dipanggil sebelum output lainnya dikirim ke browser. Hal ini adalah sama batasannya untuk fungsi Header(). Semua cookies yang dikirim pada anda dari klien akan secara otomatis di ubah kedalam suatu variabel PHP seperti method GET dan POST data.

Jika anda ingin memberikan banyak nilai pada suatu cookie tunggal, tambahkan saja [] pada nama cookie.

Sebagai contoh:

SetCookie ("MyCookie[]", "Testing", time()+3600);

Catatan bahwa suatu cookie akan menimpa cookie sebelumnya yang memiliki nama yang sama dalam browser anda, kecuali path atau domainnya berbeda. Jadi untuk suatu aplikasi shopping cart anda perlu menyimpan suatu counter dan mengirimnya bersamaan.

Contoh. $Count++;

SetCookie ("Count", $Count, time()+3600); SetCookie ("Cart[$Count]", $item, time()+3600);

2.15. Variabel Environment

PHP secara otomatis membuat variabel lingkungan normalnya seperti variabel PHP. echo $HOME; /* Shows the HOME environment variable, if set. */

Sejak informasi datang dengan GET, POST dan mekanisme Cookies secara secara otomatis menjadi variabel PHP, adalah lebih baik membaca variabel langsung dari lingkungan untuk mendapatkan versi yang sebenarnya. Fungsi getenv() dapat digunakan untuk melakukan hal ini. Anda dapat juga dapat membentuk suatu variabel lingkungan dengan fungsi putenv().


(23)

Suatu PHP script terdiri dari sejumlah perintah yang berurutan. Suatu perintah dapat berupa pemberi nilai, pemanggilan terhadap fungsi, perulangan, perintah kondisi dan baris kosong. Setiap perintah diakhiri dengan sebuah titik koma (;). Dan beberapa perintah dapat dikelompokan menjadi satu dalam kurung kurawal {dan }.

Catatan : Setiap perintah diakhir dengan sebuah titik koma (;). Konstanta

PHP memiliki sejumlah konstanta yang telah didefinisikan, dan anda diberi kesempatan untuk membuat konstanta sesuai dengan kebutuhan anda.

Konstanta yang telah didefinisikan adalah __FILE__ (nama file yang sedang diproses) __LINE__ (nomor baris dari file yang sedang diproses)

Contoh : <?php

function report_error($file, $line, $message) {

echo "Suatu kesalahan terjadi pada file $file baris $line: $message."; }

report_error(__FILE__,__LINE__, "Telah terjadi suatu kesalahan!"); ?>

Anda dapat mendefinsikan konstanta ciptaan dengan menggunakan fungsi define().

Contoh : <?php

define("CONSTANT", "Hello world.");

echo CONSTANT; // akan mencetak "Hello world." ?>

2.17. Ekspresi

Hampir semua yang anda tulis dalam PHP script adalah ekspresi. Definisi yang paling mudah dari ekspresi adalah "segala sesuatu yang memiliki nilai".

Contohnya yang paling sederhana dari ekpresi adalah konstanta dan variabel. Ketika anda mengetik "$a = 5", anda telah memberikan nilai '5' ke $a.

Contoh yang lebih komplek untuk suatu ekspresi adalah fungsi. Untuk jelasnya perhatikan contoh berikut:

function hello () { return 5; }

maka kalau anda menulis $c = hello() adalah sama dengan memberikan nilai 5 ke variabel $c, karena fungsi hello mengembalikan 5. Diatas adalah contoh fungsi yang sederhana.

PHP mendukung tiga tipe nilai skalar yaitu : nilai integer, floating point dan string. (nilai skalar adalah nilai yang tidak dapat dibagi menjadi bagian yang lebih kecil, seperti array). PHP juga mendukung dua tipe nilai bukan skalar yaitu array dan objek.


(24)

3.1. Operator pada PHP

Operator merupakan symbol yang biasa di libatkan dalam program untuk melakukan suatu operasi atau manipulasi.

Misalnya untuk:

Menjumlahkan dua buah nilai Memberikan nilai ke suatu variable Membandingkan kesamaan dua buah nilai

3.2. Operator aritmatika

Adalah operator yang digunakan dalam melakukan suatu proses operasi matematika, seperti penjumlahan, perkalian dan sebagainya.

Contoh: $a + $b

symbol + merupakan operator untuk melakukan operasi penjumlahan dari kedua operand-nya (yaitu $a dan $b). Karena operator penjumlahan melibatkan dua buah operand, maka operator ini tergolong sebagai operator binary.

Tabel 1. Operator Aritmatika

Operator pembagian ("/") mengembalikan suatu nilai bulat (hasil dari suatu pembagian bulat) Jika kedua operan adalah integer (atau string yang dikonversi ke integer). Jika salah satu operan adalah nilai floating-point value, pembagian floating-point dilakukan.Operator seperti penjumlahan, pengurangan, perkalian dan pembagian merupakan hal yang umum. Adapun operator sisa pembagian (modulus) berupa % adalah sesuatu yang berbeda dengan operator sebelumnya.

Lihat contoh.

3.3. Operator pemberi nilai atau penugasan

Operator pemberian nilai (penugasan) yang disimbolkan dengan tanda (=) sama dengan, berguna untuk memberikan suatu nilai kesuatu variable. Operator ini dapat digunakan sebagai ungkapan ataupun berdiri sendiri sebagai pernyataan.

$a = 3; memberikan nilai 3 ke $a

$a = ($b = 4) + 5; // $a is equal to 9 now, and $b has been set to 4. $a = 2 + 3;


(25)

3.4. Operator Bitwise

Operator Bitwise memungkinkan anda untuk memanipulasi data dalam bentuk bit tertentu dalam suatu integer on atau off.

Table 2. Operator Bitwise

3.5. Operator Perbandingan

Operator perbandingan, sesuai dengan namanya, memperbolehkan anda untuk membandingkan dua nilai.

Table 3. Operator Perbandingan

3.6. Operator Eksekusi

PHP mendukung sebuah operator eksekusi yang disimpan dalam tanda backticks (``). Dalam tanda backticks tersebut dapat dimasukan perintah yang dilakukan dalam shell, kemudian putputnya akan dikeluar di jendela browser.

Contoh:

$output = `ls -al`;

echo "<pre>$output</pre>";

3.7. Operator Penaikan dan Penurunan

PHP mendukung perintah C-style yang berhubungan dengan penaikan (increment) dan penurunan (decrement). Kedua operator ini digunakan pada operand bertipe bilangan bulat (integer).


(26)

Table 4. Increment/decrement Operators

Contoh 1: $a = 10;

$b = 10 + ++$a; // $a akan bernilai 11 dan $b akan bernilai 21 Perintah diatas akan sama dengan perintah berikut:

$a = 10 + 1; $b = 10 + 11

Contoh 2: $a = 10;

$b = 10 + $a++; // $a akan bernilai 11 dan $b akan bernilai 20 Perintah diatas akan sama dengan perintah berikut:

$b = 10 + $a $a = 10 + 1;

3.8. Operator Logical

Operator logika biasa digunakan untuk menghubungkan dua buah ungkapan kondisi menjadi sebuah ungkapan kondisi

Table 5. Operator Logical

3.9. Operator Prioritas

Operator prioritas menentukan bagaimana suatu ekpresi dikerjakan oleh PHP. Operator yang mempunyai prioritas tinggi akan didahulukan dalam hal pengerjaannya dibandingkan dengan operator uang memiliki prioritas lebih rendah.

Contoh:

1 + 5 * 3, jawabanya adalah 16 dan bukan 18, sebab tanda operator kali (*) lebih tinggi derajatnya dibandingkan dengan operator penjulamhan (+).

Dibawah ini adalah table operator prioritas dimana operator yang mempunyai derajat lebih rendah akan disimpan diawal.


(27)

Table 6. Operator Prioritas

3.10. Operator String

Operator string adalah operator yang digunakan untuk menggabungkan dua atau beberapa string. Hanya ada satu operator string dalam PHP yaitu operator pengabungan string (".") titik.

Contoh: $a = "Hello ";


(28)

4.1. Pernyataan Kondisi dan Perulangan

Pernyataan kondisi digunakan apabila kita ingin membandingkan atau mengetahui nilai suatu objek.

4.2. Perintah If

Perintah If adalah sesuatu yang paling penting pada bahasa pemrograman umumnya. Perintah If PHP menyerupai bentuk If pada bahasa C:

if (ekspresi) Perintah

ekspresi adalah sesuatu yang dapat dievaluasi menjadi nilai TRUE atau FALSE.

Berikut ini adalah contoh yang akan mencetak 'a lebih besar dari b' jika nilai $a lebih besar dari $b.

if ($a > $b)

print "a is bigger than b";

Jika perintah yang akan dijalankan ketika ekspresi true lebih dari satu, maka perintah-perintah tersebut perlu dikelompokan dengan kurung kurawal { dan }.

if ($a > $b) {

print "a is bigger than b"; $b = $a;

}

Anda juga dapat membentuk if yang bersangkar. (if didalam if)

4.3. If Else

Sering kita perlu menjalankan perintah lain kalau nilai ekspresi adalah FALSE. Untuk keperluan tersebut kita dapat menggunakan perintah Else.

if ($a > $b) {

print "a is bigger than b"; } else {

print "a is NOT bigger than b"; }

4.4. Elseif

ELSEIF adalah kombinasi dari suatu if dan else, anda dapat menggunakannya pada suatu pilihan multi kondisi:

if ($a > $b) {

print "a is bigger than b"; } elseif ($a == $b) { print "a is equal to b"; } else {

print "a is smaller than b"; }


(29)

PHP mendukung penulisan struktur kontrol yang lainnya. Dan ini merupakan alternatif bagaimana menuliskan pernyataan kondisi.

Contoh:

<?php if ($a==5): ?> A is equal to 5 <?php endif; ?>

Program diatas ini akan tampil jika nilai $a == 5, dan di browser akan keluar teks A is equal to 5

Berikut adalah contoh penggabungan fungsi if, else dan elseif if ($a == 5):

print "a equals 5"; print "...";

elseif ($a == 6): print "a equals 6"; print "!!!"; else:

print "a is neither 5 nor 6"; endif;

4.6. While

WHILE adalah perulangan yang paling sederhana pada PHP. Bentuk dasar dari perintah WHILE adalah:

WHILE(ekspresi) statement

Statement akan diulang selama ekspresi memiliki nilai TRUE. Jika pada perulangan ternyata ekspresi bernilai FALSE, maka perulangan tidak pernah dilakukan.

Jika perintah yang akan diulang lebih dari satu, maka perintah-perintah tersebut dapat dikelompokan dengan mengetiknya diantara kurung kurawal { dan }, atau mengunakan tata cara penulisan alternatif:

WHILE(expr): statement ... ENDWHILE;

Berikut ini adalah dua contoh yang identik, yaitu akan mencetak nilai 1 s/d 10: /* contoh 1 */

$i = 1;

while ($i <= 10) {

print $i++; /* the printed value would be $i before the increment

(post-increment) */ }

/* example 2 */ $i = 1;

while ($i <= 10): print $i; $i++; endwhile;


(30)

4.7. Do .. While

Perulangan DO..WHILE adalah sama saja dengan perulangan While, cuma ekspresi diperiksa pada akhir dari perulangan. Jadi perulangan jenis ini minimal terjadi satu kali.

Tata cara penulisan untuk perulangan DO..WHILE : $i = 0;

do { print $i; } while ($i>0);

Dalam C lanjutan, anda mungkin sering menggunakan do..while loop, untuk menghentikan proses ditengah jalan dan biasanya digunakan perintah break.

Lihat contoh berikut: do {

if ($i < 5) {

print "i is not big enough"; break;

}

$i *= $factor;

if ($i < $minimum_limit) { break;

}

print "i is ok"; ...process i... } while(0);

4.8. FOR

Perulangan FOR adalah perulangan yang paling kompleks dalam PHP, dan menyerupai perulangan FOR pada bahasa C. Tata cara penulisan untuk perulangan FOR

FOR (ekspresi1; ekspresi2; ekspresi3) statement

Ekspresi pertama (ekspresi1) di evaluasi (dieksekusi) secara un-kondisional pada awal perulangan.

Pada awal dari tiap iterasi, ekspresi2 akan di evaluasi. Jika hasil evaluasi adalah TRUE, maka perulangan akan diteruskan dan statement akan dieksekusi. Jika hasil evaluasi FALSE, maka perulangan diakhiri.

Pada akhir dari tiap iterasi, ekspresi3 akan dievaluasi (dieksekusi). Contoh berikut akan mencetak angka 1 s/d 10:

/* example 1 */

for ($i = 1; $i <= 10; $i++) { print $i;

}

/* example 2 */

for ($i = 1;;$i++) { if ($i > 10) { break; } print $i; }


(31)

$i = 1; for (;;) { if ($i > 10) { break; } print $i; $i++; }

/* example 4 */

for ($i = 1; $i <= 10; print $i, $i++)

4.9. BREAK

BREAK berguna untuk keluar dari perulangan yang sekarang. $i = 0;

$i = 0;

while ($i < 10) {

if ($arr[$i] == "stop") { break; } $i++; }

4.10. CONTINUE

CONTINUE digunakan didalam looping untuk keluar dari perulangan dan kemudian melanjutkan eksekusi ke perintah berikutnya.

while (list($key,$value) = each($arr)) {

if ($key % 2)

{ // loncati anggota genap continue; } KerjakanYangGanjil ($value); }

4.11. SWITCH

Perintah SWITCH menyerupai sejumlah perintah IF dengan ekspresi yang sama. Sering kali anda ingin membandingkan sejumlah variabel (atau ekspresi) dengan sejumlah nilai dan menjalankan perintah tertentu untuk masing-masing nilai.

/* contoh 1 */ if ($i == 0) {

print "i sama dengan 0"; }

if ($i == 1) {

print "i sama dengan 1"; }


(32)

/* contoh 2 */ switch ($i) { case 0:

print "i sama dengan 0"; break;

case 1:

print "i sama dengan 1"; break;

case 2:

print "i sama dengan 2"; break;

}

Perintah SWITCH dieksekusi secara baris per-baris (aktualnya, perintah per-perintah). Pada awalnya tidak ada kode yang dijalankan. Hanya sesaat ketika suatu perintah CASE ditemukan dengan nilai yang sesuai dengan nilai ekspresi pada SWITCH, PHP menjalankan perintah. PHP melanjutkan eksekusi sampai akhir dari blok SWITCH, atau pertama kali menemukan suatu perintah BREAK. Jika anda tidak menulis suatu perintah BREAK pada akhir dari daftar perintah pada suatu case, PHP akan melanjutkan eksekusi untuk case selanjutnya. Sebagai contoh:

/* contoh 3 */ switch ($i) { case 0:

print "i sama dengan 0"; case 1:

print "i sama dengan 1"; case 2:

print "i sama dengan 2"; }

Disini, jika $i sama dengan 0, PHP akan mengeksekusikan seluruh perintah print ! Jika $i sama dengan 1, PHP akan mengeksekusikan dua perintah print terakhir, jika dan hanya jika $i sama dengan 2, tercetak 'i equals 2'. Jadi, adalah sangat penting untuk tidak melupakan perintah BREAK.

Suatu case yang khusus adalah case default. Case ini akan sama dengan segala sesuatu yang tidak dapat disamakan dengan case-case sebelumnya. Sebagai contoh:

/* contoh 4 */ switch ($i) { case 0:

print "i sama dengan 0"; break;

case 1:

print "i sama dengan 1"; break;


(33)

break; default:

print "i tidak sama dengan 0, 1 atau 2"; }

Kenyataaan lain yang perlu diperhatikan adalah ekspresi pada CASE dapat mengevaluasikan segala nilai tipe skalar, yang mana berupa integer, atau real dan string. Array atau objek tidak akan mengakibatkan crash pada PHP, tetapi tidak memiliki arti dalam hal ini.

4.12. REQUIRE

Perintah REQUIRE menganti akan perintah tersebut dengan file tertentu, dan hampir menyerupai prerocessor #include pada bahasa C.

Hal ini berarti anda tidak dapat meletakkan perintah required() dalam suatu struktur perulangan dan mengharapkannya untuk mengikutsertakan file yang berbeda pada tiap iterasi. Untuk melakukan hal tersebut anda harus menggunakan perintah INCLUDE.

require ('header.inc');

4.13. INCLUDE

Perintah INCLUDE akan mengikutsertakan dan mengevaluasi file tertentu.

Hal ini terjadi setiap kali perintah INCLUDE ditemukan, jadi anda dapat menggunakan perintah INCLUDE diantara suatu struktur perulangan untuk mengikutsertakan sejumlah file yang berbeda.

$files = array ('first.inc', 'second.inc', 'third.inc'); for ($i = 0; $i < count($files); $i++) {

include($files[$i]); }

include() berbeda dengan require() pada perintah include evaluasi dilakukan kembali setiap kali perintah tersebut ditemukan (dan hanya ketika hal tersebut dijalankan), sedangkan perintah require() akan diganti dengan file yang diperlukan ketika pertama kali ditemukan, terserah apakah file tersebut akan dievaluasi atau tidak (sebagai contoh, jika berada dalam suatu perintah if yang memiliki hasil evaluasi false)

Karena include() adalah suatu kontruksi bahasa khusus, anda harus mengapitnya diantara blok, jika perintah tersebut dalam suatu blok kondisi.

/* This is WRONG and will not work as desired. */ if ($condition)

include($file); else

include($other);

/* This is CORRECT. */ if ($condition) {

include($file); } else {

include($other); }


(34)

5.1. Fungsi

Sebuah fungsi adalah sejumlah pernyataan yang dikemas dalam sebuah nama. Nama ini selanjutnya dipanggil beberapa kali dibeberapa tempat dalam program.

Tujuan membuat fungsi:

Memudahkan dalam mengembangkan program

Menghemat ukuran program. Bermanfaat dan terasa jika ada beberapa deretan instruksi yang sama dan digunakan dalam bagian di dalam program.

5.2. Fungsi Buatan

Suatu fungsi dapat didefinisikan dengan tata cara penulisan berikut: function kosong ($arg_1, $arg_2, ..., $arg_n)

{

echo "contoh fungsi.\n"; return $retval;

}

Semua kode PHP yang sah dapat berada didalam suatu fungsi, bahkan fungsi dan definisi class lainnya.

5.3. Nilai Balik Fungsi.

Semua Fungsi harus didefinisikan dahulu sebelum digunakan. Umumnya fungsi menerima masukan (argumen atau parameter). Masukan ini selanjutnya diproses oleh fungsi. Hasil akhir dari fungsi berupa sebuah nilai yang disebut nilai balik (return value).

Nilai dikembalikan dengan mengunakan perintah optional return. Sembarang tipe dapat dikembalikan, termasuk tipe list dan objek

function pangkat($num) {

return $num * $num; }

echo pangkat(5); // menghasilkan '25'.

Fungsi hanya mengembalikan satu nilai, jika nilai yang akan dikembalikan banyak, anda dapat menggunakan suatu list:

function kosong() { return array (0, 1, 2); }

list ($zero, $one, $two) = kosong();

5.4. Argumen Fungsi

Informasi dapat ditukarkan ke dan dari fungsi dengan argumen, dimana urutan variable atau konstanta dipisahkan dengan tanda koma yang terletak di antara tanda kurung buka dan kurung tutup pada deklarasi dan pemanggilan fungsi.

PHP mendukung argumen yang lewatkan dengan nilai (by value) secara defaultnya, dilewatkan secara acuan (by refrence) , dan argumen bernilai default. Argumen dengan jumlah yang tak tentu tidak didukung, tetapi efek yang sama dapat dicapai dengan menggunakan array.

function takes_array($input) {

echo "$input[0] + $input[1] = ", $input[0]+$input[1]; }


(35)

Pada defaultnya, argumen fungsi dilewatkan dengan nilai. Tetapi jika anda ingin suatu fungsi dapat melakukan modifikasi terhadap argumennya, anda harus melewatkan mereka dengan acuan

5.5. Class dan Object

Suatu class adalah koleksi dari variabel dan fungsi yang bekerja dengan variabel-variabel tersebut

<?php class Cart {

var $items; // Items in our shopping cart

// Add $num articles of $artnr to the cart function add_item ($artnr, $num) { $this->items[$artnr] += $num; }

// Take $num articles of $artnr out of the cart function remove_item ($artnr, $num) { if ($this->items[$artnr] > $num) { $this->items[$artnr] -= $num; return true;

} else { return false; }

} } ?>

Class adalah tipe, yang mana merupakan cetak biru dari variabel yang sebenarnya. Anda dapat membuat suatu variabel yang diinginkan dengan operator new.

$cart = new Cart;

$cart->add_item("10", 1);

Hal ini membuat suatu objek $cart dari class Cart. Fungsi add_item() dari objek tersebut dipanggil untuk menambah 1 item ke nomor artikel 10 ke cart.

Class dapat merupakan perluasan dari class lain. Class perluasan atau turunan memiliki semua variabel dan fungsi dari kelas dasarnya dam apa yang anda tambahkan pada definisi perluasan tersebut. Hal ini dilakukan dengan menggunakan kata kunci extend berikut.

class Named_Cart extends Cart { var $owner;

function set_owner ($name) { $this->owner = $name; }


(36)

Hal ini mendefinisikan suatu class bernama Cart yang memiliki semua variabel dan fungsi dari Cart ditambah suatu variabel tambahan $owner dan suatu fungsi tambahan set_woner(). Anda membuat suatu nama cart dengan cara biasnya dan sekarang anda dapat menentukan dan mengambil owner dari cart. Anda tetap dapat menggunakan fungsi cart normalnya pada nama cart :

$ncart = new Named_Cart; // Create a named cart $ncart->set_owner ("kris"); // Name that cart

print $ncart->owner; // print the cart owners name

$ncart->add_item ("10", 1); // (inherited functionality from cart)

Diantara fungsi atau suatu class variabel $this berarti objek ini. Anda dapat menggunakan $this->sesuatu untuk mengakses variabel tertentu atau nama fungsi dalam objek anda.

Konstruktor adalah fungsi dalam suatu class yang mana secara otomatis dipanggil ketika suatu instance baru dari class dibuat. Suatu fungsi menjadi suatu konstruktor ketika memiliki nama yang sama dengan class.

class Auto_Cart extends Cart { function Auto_Cart () { $this->add_item ("10", 1); }

}

Hal ini mendefinsikan suatu Auto_Cart yang mana adalah suatu Cart ditambah dengan suatu konstruktor yang mana menginisialisasi chart dengan suatu item dari artikel nomor "10" setiap suatu Auto_Cart baru dibuat dengan "new". Konstruktor juga dapat memiliki argumen dan argumen ini dapat berupa optional, yang mana membuat mereka lebih berguna.

class Constructor_Cart {

function Constructor_Cart ($item = "10", $num = 1) { $this->add_item ($item, $num);

} }

// Shop the same old boring stuff. $default_cart = new Constructor_Cart; // Shop for real...


(37)

Ada empat jenis kesalahan dan warning pada PHP. Yaitu : 1 - Normal Function Errors

2 - Normal Warnings 4 - Parser Errors

8 - Notices (peringatan yang dapat anda abaikan, tetapi dapat meninggalkan bug pada kode anda)

Keempat error diatas dijumlahkan membentuk suatu error reporting level. Secara defaultnya adalah 7 dimana 1 + 2 + 4, atau semuanya kecuali notice. Level ini dapat diganti pada file php.ini dengan suatu error reporting directive. Dapat juga ditentukan pada Apache di file httpd.conf dengan php_error_reporting directive atau ditentukan pada runtime dengan suatu script menggunakan fungsi error_reporting() .

Semua Ekspresi PHP dapat juga dipanggil dengan awalan "@", yang mana akan mematikan reporting error untuk ekspresi tertentu. Jika suatu error terjadi dan fasilitas track_errors diaktifkan, anda dapat menemukan pesan kesalahan pada global variabel $php_errormsg.

6.2. Membuat Gambar GIF

PHP tidak hanya dapat menghasilkan output HTML, tetapi juga dapat digunakan untuk membuat file gambar GIF. Untuk melakukan hal ini, PHP harus dikompilasi dengan GD Library agar dapat berjalan dengan baik..

<?php

Header("Content-type: image/gif"); $string=implode($argv," ");

$im = imagecreatefromgif("images/button1.gif"); $orange = ImageColorAllocate($im, 220, 210, 60); $px = (imagesx($im)-7.5*strlen($string))/2; ImageString($im,3,$px,9,$string,$orange); ImageGif($im);

ImageDestroy($im); ?>

Contoh diatas harus dipanggil dari suatu halaman dengan tag seperti: <img src="button.php?text">. Script button.php diatas akan menerima "text" dan menimpakannya keatas image dasar "images/button1.gif" serta mengirim image hasil tersebut. Hal ini cocok untuk mencegah pembuatan ulang tombol image setiap kali anda perlu menganti tulisan pada tombol. Dengan metode diatas dapat dihasilkan tombol-tombol secara dinamis.

6.3. HTTP authentication dengan PHP

HTTP Authentication pada PHP hanya dapat berfungsi ketika dijalankan sebagai module pada Apache. Sebagai Apache module, PHP script dapat menggunakan fungsi Header() untuk mengirim pesan "Authentication Required" ke browser klien yang akan memunculkan suatu jendela input untuk Username/Password pada browser klien. Setelah user mengisi username dan password, URL dari PHP script tersebut akan dipanggil kembali disertai dengan variabel, $PHP_AUTH_USER, $PHP_AUTH_PW dan $PHP_AUTH_TYPE yang masing-masing berupa user name, password dan authentikasi yang telah dimasukkan. Dalam hal ini hanya berupa authentikasi dasar.


(38)

<?php

if(!isset($PHP_AUTH_USER)) {

Header("WWW-Authenticate: Basic realm=\"My Realm\""); Header("HTTP/1.0 401 Unauthorized");

echo "Text to send if user hits Cancel button\n"; exit;

} else {

echo "Hello $PHP_AUTH_USER.<P>";

echo "You entered $PHP_AUTH_PW as your password.<P>"; }

?>

Sebagai penganti dari hanya mencetak $PHP_AUTH_USER dan $PHP_AUTH_PW pada kode diatas, anda dapat mengantinya menjadi memeriksa kebenaran username dan password yang dimasukkan dengan mengirimnya ke suatu query terhadap database, atau mencari data user tersebut dalam suatu dbm file.

Untuk mencegah seseorang melakukan tindakan seakan-akan password telah ter-authentikasi dengan suatu mekanisme luar, maka variabel PHP_AUTH tidak akan diset jika suatu autentikasi luar dilakukan terhadap halaman tersebut. Dalam hal ini, variabel $REMOTE_USER dapat digunakan untuk mengindentifikasi apakah authentikasi dilakukan user secara eksternal.

Contoh. HTTP Authentication example forcing a new name/password <?php

function authenticate() {

Header( "WWW-authenticate: basic realm='Test Authentication System'"); Header( "HTTP/1.0 401 Unauthorized");

echo "You must enter a valid login ID and password to access this resource\n"; exit;

}

if(!isset($PHP_AUTH_USER) || ($SeenBefore == 1 && !strcmp($OldAuth, $PHP_AUTH_USER)) )

{

authenticate(); }

else {

echo "Welcome: $PHP_AUTH_USER<BR>"; echo "Old: $OldAuth";

echo "<FORM ACTION=\"$PHP_SELF\" METHOD=POST>\n";

echo "<INPUT TYPE=HIDDEN NAME=\"SeenBefore\" VALUE=\"1\">\n";

echo "<INPUT TYPE=HIDDEN NAME=\"OldAuth\" VALUE=\"$PHP_AUTH_USER\">\n"; echo "<INPUT TYPE=Submit VALUE=\"Re Authenticate\">\n";

echo "</FORM>\n"; }

?>

Catatan, hal tersebut tidak dapat mencegah akses langsung ke halaman yang tidak membutuhkan authentikasi.

Juga perlu dicatat bahwa hal ini tidak akan berfungsi pada Microsoft's IIS server dan CGI versi PHP karena merupakan keterbatasan dari IIS.


(39)

PHP secara transparan mendukung HTTP cookies. Cookies adalah suatu mekanisme untuk menyimpan data pada remote browser dan selanjutnya digunakan untuk mengenali pengunjung. Anda dapat membuat cookies dengan menggunakan fungsi setcookie(). Cookies adalah bagian dari HTTP header, maka fungsi SetCookie() harus dipanggil sebelum output lainnya dikirim ke browser. Hal ini memiliki batasan yang sama seperti fungsi Header(). Setiap cookies yang dikirim kepada anda dari klien secara otomatis diubah ke variabel PHP sama seperti metode GET dan POST. Jika anda ingin memasukkan banyak nilai pada suatu cookie tunggal, tambahkan saja [] pada nama cookie. Untuk jelasnya lihat pada fugnsi setcookie().

6.5. Mendukung upload File

PHP dapat menerima upload file yang dilakukan dari browser yang sesuai dengan RFC-1867 (termasuk Netscape Navigator 3, dan seterusnya keatas , Microsoft Internet Explorer 3 dengan patch dari Microsoft, dan seterusnya). Kemampuan ini memungkinkan anda untuk melakukan upload teks file maupun binari. Dengan melakukan authentikasi dan fungsi-fungsi manipulasi file, anda memiliki kendali penuh untuk mengatur siapa saja yang boleh melakukan upload dan apa yang akan dilakukan setelah file tersebut selesai diupload.

Berikut ini adalah kode HTML untuk membuat suatu form upload file: <FORM ENCTYPE="multipart/form-data" ACTION="_URL_" METHOD=POST> <INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1000">

Send this file: <INPUT NAME="userfile" TYPE="file"> <INPUT TYPE="submit" VALUE="Send File"> </FORM>

_URL_ harus menunjuk ke suatu file php. Field hidden MAX_FILE_SIZE harus mengawali field file input yang merupakan nilai dari ukuran maksimal file yang diperbolehkan. Nilai ini dinyatakan dalam byte. Pada file tujuan ini, variabel berikut akan didefinisikan sesaat setelah upload berhasil dilakukan:

$userfile - nama file sementara dari file yang berhasil diupload dan disimpan pada server. $userfile_name - nama file asli pada sistem pengirim.

$userfile_size - ukuran file upload dalam byte.

$userfile_type - type mime dari file jika browser menyediakan informasi ini. Suatu contoh misalnya "image/gif".

Perlu dicatat bahwa bagian "$userfile" dari variabel diatas adalah nama yang berasal dari INPUT field dari TYPE=file pada upload form. Pada contoh form upload diatas, kita pilih namanya adalah "userfile".

File secara default file upload akan ditempatkan pada suatu temporary directory di server. Hal ini dapat diganti dengan mengubah variabel lingkungan TMPDIR dimana PHP dijalankan dengan fungsi PutEnv().

PHP script harus menentukan apa yang harus dilakukan terhadap hasil upload. Sebagai contoh anda dapat menggunakan variabel $file_size untuk memeriksa ukuran dari file dan menghapusnya jika terlalu besar atau terlalu kecil. Demikian juga $file_type untuk jenis file. Anda harus menghapus file tersebut dari directory temporary atau memindahkannya ke tempat yang sesuai.


(40)

6.6. Mendukung Penggunaan Remote File

PHP dapat digunakan untuk mengelola file yang ada di Web server, dan kemudian menampilkannya di browser.

Berikut adalah contoh bagaimana menampilkan judul dari sebuah halaman web yang ada disuatu Webserver

Contoh. Getting the title of a remote page <?php

$file = fopen("http://www.php.net/", "r"); if (!$file) {

echo "<p>Unable to open remote file.\n"; exit;

}

while (!feof($file)) { $line = fgets($file, 1024);

/* This only works if the title and its tags are on one line. */ if (eregi("<title>(.*)</title>", $line, $out)) {

$title = $out[1]; break;

} }

fclose($file); ?>

Selain dapat menampilkan, anda juga dapat menulis kedalam file dengan menggunakan FTP selama anda terhubung ke jaringan dengan user dan akses yang diperbolehkan dan file yang akan ditulis harus belum ada.

Contoh. Storing data on a remote server <?php

$file = fopen("ftp://ftp.php.net/incoming/outputfile", "w"); if (!$file) {

echo "<p>Unable to open remote file for writing.\n"; exit;

}

/* Write the data here. */

fputs($file, "$HTTP_USER_AGENT\n"); fclose($file);

?>

6.7. Penanganan Koneksi

Berikut ini diaplikasikan pada PHP version 3.0.7 dan seterusnya

Secara internal pada PHP suatu status koneksi dapat diatur. Ada 3 status yang mungkin: 0 - NORMAL

1 - ABORTED 2 - TIMEOUT

Status NORMAL aktif ketika PHP script berjalan dengan normal.

Jika remote klien melakukan pemutusan dengan klik pada tombol stop, maka status flag ABORT di aktifkan


(41)

TIMEOUT diaktifkan.

Anda dapat memutuskan apakah pemutusan diakibatkan oleh pemakai atau karena time out, dan kadang-kadang suatu script harus diselesaikan walaupun pemakai melakukan pemutusan. Secara defaultnya script akan dihentikan kalau pemakai melakukan pemutusan. Perlakukan ini dapat ditentukan dengan direktif ignore_user_abort pada file php.ini atau dapat juga ditentukan pada direktif php_ignore_user_abort di file Apache .conf atau dengan fungsi ignore_user_abort().

Script anda dapat juga dihentikan dengan suatu built-in script timer. Time out default adalah 30 detik, hal ini dapat diganti pada max_execution_time php.ini directive atau the corresponding php_max_execution_time Apache .conf directive atau dengan fungsi set_time_limit(). Ketika waktu tercapai script akan dibatalkan dan klien didisconnect, jika fungsi shutdown ada maka akan diaktifkan. Pada fungsi shutdown anda dapat memeriksa penyebab fungsi tersebut diaktifkan dengan memanggil fungsi connection_timeout(). Kalau dikembalikan true berarti diaktifkan karena timeout.


(42)

7.1. Membuat Database dan Tabel dari Linux

Pada Bab ini kita akan membahas mengenai perintah-perintah SQL yang berhubungan dengan database dan table yang berguna untuk pembuatan aplikasi e-commerce yang akan di bahas pada bab selanjutnya , pada bab ini yang akan dibahas adalah :

• Membuat Data Base • Menghapus Data Base • Melihat Data Base • Mengaktifkan Data Base • Membuat Tabel

• Melihat Tabel • Menghapus Tabel

7.2. Membuat Data Base

Dalam membuat database ini terdapat dua pilihan yang dapat anda lakukan , yaitu cara yang pertama dari shell dan cara yang kedua dapat anda lakukan dari MySQL, mari kita coba masing-masing cara tersebut :

Membuat Database Dari shell

Untuk membuat data base dari shell digunakan perintah mysqladmin CREATE , untuk membuat database ini silahkan anda ikuti langkah-langkah berikut :

Login ke dalam Linux Contoh :

Keterangan :

Rindu adalah nama user

Kemudian anda berikan perintah berikut ini :

Keterangan :

• Students adalah nama server • Rindu adalah nama user • -p untuk password


(43)

Untuk membuat data base dari MySQL digunakan perintah CREATE DATABASE , untuk membuat database ini silahkan anda ikuti langkah-langkah berikut :

1. Anda login ke dalam Linux

2. Kemudian anda masuk ke dalam MySQL dengan perintah berikut ini :

3. Kemudian anda berikan perintah SQL berikut ini :

Keterangan :

Dengan perintah CREATE DATABASE seperti contoh diatas berarti anda telah berhasil untuk membuat sebuah database dengan nama akademik

7.4. Melihat Data Base

Untuk melihat semua database yang berada dalam server anda dapat menggunakan perintah mysqlshow dari shell atau anda dapat menggunakan perintah SHOW DATABASES dari MySQL. Untuk mencobanya silahkan anda ketik perintah di bawah ini :

1. Melihat Database Dari Shell

Untuk melihat data base yang terhubung ke server anda dapat memberikan perintah di bawah ini pada shell.

2. Melihat Database Dari MySQL

Atau Jika anda ingin melihat Data Base tersebut dari dalam MySQL anda dapat memberikan perintah di bawah ini :


(44)

7.5. Menghapus Data Base

Untuk menghapus data base ini dapat di gunakan perintah DROP, untuk menggunakan perintah DROP ini tidak bisa dijalankan dalan shell tetapi anda harus masuk terlebih dahulu kedalam MySQL , untuk selengkapnya siulahkan anda ikuti langkah berikut :

1. Masuk kedalam MySQL

2. Kemudian anda ketikan perintah DROP seperti di bawah ini :

3. Kemudian untuk meyakinkan apakah database yang kita hapus tadi benar-benar hilang berikan perintah di bawah ini :

21 Catatan :

Anda harap berhati-hati menggunakan perintah DROP DATABASE ini karena jika anda tidak menyebutkan spesifikasi database yang akan dihapus, maka semua database yang ada akan dihapus juga.

7.6. Mengaktifkan Data Base

Untuk mengaktifkan database dapat anda berikan perintah USE nama_database Contoh :

use databarang

7.7.Melihat Data Base Aktif

Untuk melihat data base yang aktif dapat digunakan fungsi SELECT DATABASE() Contoh :


(45)

Type data dalam MYSQL terbagi menjadi 3 bagian

7.9. Tipe Data Numerik

Untuk melakukan operasi matematika dalam php dapat dilakukan dengan menggunakan beberapa jenis tipe data numerik.

Table tipe data tersebut.

7.10. Tipe Data Tanggal dan Waktu

Untuk melakukan operasi yang berhubungan dengan tanggal dan waktu, maka dapat

digunakan tipe data berikut:


(46)

7.11. Tipe Data String

Untuk melakukan operasi yang berhubungan dengan string, maka dapat digunakan

tipe data berikut:

Tabel tipe data string

7.12. Membuat Tabel

Untuk membuat table digunakan perintah Create <namatabel> , seperti halnya dalam membuat database untuk membuat table ini juga bisa digunakan dua cara, yaitu dari shell dan dari mysql dibawah ini akan diterangkan mengenai cara-cara membuat table tersebut. Cara 1

1. Jika anda belum masuk kedalam linux, silahkan anda login terlebih dahulu 2. kemudian anda buat sebuah file dengan nama mahasiswa.sql

3. adapun isi dari file mahasiswa.sql tersebut sebagai berikut :

create table mahasiswa(

kode_maha char(5) NOT NULL, nama_maha char(20),

alamat_maha char(30), telp_maha char(15), email_maha char(30),

PRIMARY KEY (kode_maha) );

4. Kemudian anda dapat memberikan perintah seperti di bawah ini :

Cara 2

Untuk membuat database cara yang kedua dapat dilakukan melalui MySQL, untuk itu silahkan anda ikuti langkah berikut :

1. Silahkan anda masuk kedalam MySQL 2. kemudian anda berikan perintah di bawah ini :


(47)

Keterangan :

• Pada Perintah diatas , dibuat sebuah table dengan nama mahasiswa , dengan kode_maha sebagai field kunci.

7.13. Melihat Table

Untuk melihat table yang pernah kita buat tadi silahkan anda berikan perintah berikut ini :

Keterangan :

• Perintah SHOW TABLES berguna untuk menampilkan table yang terdapat dalam database aktif.


(48)

8.1. Perintah Dasar SQL

Pada Bab ini yang akan dibahas mengenai perintah-perintah dasar dalam MySQL yang berhubungan dengan manipulasi data. Antara Lain :

• INSERT

• SELECT

• UPDATE

• DELETE

• WHERE

• GROUP BY

• ORDER BY

Catatan : Perintah-perintah SQL tidak case sensitive jadi anda bisa menuliskannya dengan huruf besar atau huruf kecil. Contoh : SELECT, select atau Select hasilnya sama saja .

8.2. INSERT…

Perintah INSERT digunakan untuk menyisipkan data atau untuk menambah data, Perintah ini mempunyai bentuk penulisan sebagai berikut :

INSERT INTO nama_table VALUES (data_yang_akan_dimasukan)

8.3 SELECT…

Perintah SELECT berfungsi untuk menampilkan data . Bentuk perintah nya adalah sebagai berikut :

SELECT nama_field FROM nama_tabel

Kemudian anda masukan data yang lainnya seperti dalam tabel di bawah ini :

Kode Nama Alamat Telepon Email

TI002 Delphiana Jl. Merak 98 (022)-200-0002 delphiana@oke.com TI003 Linuxiawati Jl. Pingguin 57 (022)-200-0003 lin-lin@oke.com TI004 Novellia Jl. Gajah 109 (022)-200-0004 novia@oke.com Setelah anda memasukan semua data yang ada di Tabel , kemudian anda berikan kembali perintah SELECT.


(49)

Perintah SELECT sebenarnya tidak terbatas hanya dalam menampilkan isi dari tabel saja tetapi dapat juga digunakan untuk melakukan hal-hal seperti dibawah ini:

Contoh :

8.4. UPDATE…

Perintah UPDATE berguna untuk merubah data. Bentuk perintah umumnya adalah sebagai berikut : UPDATE


(50)

Kemudian anda lihat hasilnya dengan menggunakan perintah SELECT

Keterangan :

• Perintah diatas akan mengupdate data mahasiswa dengan kriteria bahwa data mahasiswa yang akan di update adalah yang mempunyai kode_maha=”TI004”

8.5. DELETE…

Perintah ini digunakan untuk menghapus data dari table yang sedang aktif saat ini.

Lakukan perintah berikut, untuk melihat hasilnya. Kemudian lihat data yang anda hapus tadi, ternyata sudah hilang.


(51)

Untuk menampilkan data dengan kriteria tertentu dalam suatu table, dapat dilakukan dengan menggunakan perintah where, lihat contoh berikut:

8.7. GROUP BY

Digunakan untuk menampilkan data dengan urutan tertentu seperti yang tercantum dalam group by.


(52)

9.1. Operator

Operator yaitu Element yang digunakan untuk mengekpresikan suatu kondisi dalam pencarian data. Operator tersebut dapat anda gunakan untuk memanipulasi data. Dalam MySQL operator tersebut dibagi menjadi beberapa macam operator yang akan dibahas disini antara lain :

• Operator Aritmetika • Operator Logikal • Operator Perbandingan • Operator Himpunan

Untuk mencoba semua operator yang akan dibahas disini, sebelumnya silahkan anda buat sebuah Tabel dengan nama “barang”. Dengan struktur file sebagai berikut :

Kemudian anda masukan data-data berikut ini .

Untuk membuat tabel serta pengisian data sudah dibahas pada bab sebelumnya, silahkan anda buka kembali jika anda lupa. Sebagai catatan , Operator – Operator dibawah ini sebenarnya bisa berjalan tanpa harus menggunakan tabel, tetapi dalam buku ini sengaja semua contoh dikaitkan dengan tabel.

9.2. Operator Aritmatika

Operator ini dapat anda gunakan untuk opearasi perhitungan. Di bawah ini tabel Operator Aritmatika :


(53)

Operator ini berguna untuk operasi penambahan, dibawah ini contoh

Keterangan :

Dengan perintah SQL seperti diatas maka harga barang akan bertambah sesuai dengan nilai yang diberikan. Dalam contoh ini nilai yang ditambahkan adalah 500.

Operator Pengurangan -

Operator ini berguna untuk melakukan operasi pengurangan:

Contoh : Dibawah ini jika dilakukan sebuah penjualan maka stok akan berkurang sesuai dengan jumlah yang di jual.

Keterangan :

Dengan perintah diatas jumlah stok akan berkurang jika terjadi penjualan, dalam contoh stok akan berkurang 1 jika jumlah penjualan hanya 1 buah.

9.4. Operator Pembagian /

Operator ini berguna untuk operasi pembagian:


(54)

Keterangan :

Dengan perintah diatas , pembayaran yang harus dilakukan pembeli seharusnya adalah 10000 tetapi karena jika dilakukan transaksi 10000 maka diberikan diskon 10 %. Perhitungan diskon dilakukan dengan cara ((harga*10)*10/100) maksudnya yaitu pertama harga * 10 yaitu harga barang dikali dengan jumlah pembelian kemudian dikali dengan 10 /100 (10 disini

maksudnya diskon yang diberikan 10%).

9.5. Operator Perkalian *

Operator ini berguna untuk operasi Perkalian: Contoh :

Dibawah ini contoh bagaimana jika anda ingin mengetahui Total harga dari sebuah produk.

Keterangan :

Dengan perintah diatas Total Harga dari suatu barang dapat diketahui, dalam contoh dihitung Total Harga dari produk buku tulis.

9.6. Operator Sisa Pembagian (modulus) %

Operator ini akan menghasilkan sisa pembagian , dibawah ini contoh

Keterangan :


(55)

Operator Perbandingan adalah operator yang digunakan untuk membandingkan antara satu operan dengan operan lainnya.

9.8. Operator sama dengan =

Operator sama dengan digunakan untuk membandingkan apakah operan di sebelah kiri sama dengan operang di sebelah kanan.

Contoh:

Keterangan :

Perintah diatas akan menghasilkan data barang dengan ketentuan nama barang harus sama dengan “Buku Tulis”

9.9. Operator Tidak Sama Dengan <> atau !=

Operator tidak sama dengan digunakan untuk membandingkan apakah operan disebelah kiri tidak sama dengan operan sebelah kanan.

Contoh:

Keterangan :


(56)

9.10. Operator Lebih Kecil Dari <

Operator lebih kecil dari digunakan untuk membandingkan apakah operan disebelah kiri lebih kecil dari operan sebelah kanan.

Keterangan :

Perintah diatas akan menghasilkan data barang dengan ketentuan harga barang lebih kecil dari 500

9.11. Operator Lebih Besar Dari >

Operator lebih Besar dari digunakan untuk membandingkan apakah operan disebelah kiri lebih besar dari operan sebelah kanan.

Keterangan :

Perintah diatas akan menampilkan semua data barang dengan ketentuan harga barang harus lebih besar dari 500

9.12. Operator Lebih Besar Sama Dengan >=

Operator Lebih Besar atau Sama Dengan digunakan untuk membandingkan apakah operan disebelah kiri lebih besar atau sama dengan operan sebelah kanan.

Keterangan :

Perintah diatas akan menampilkan semua data barang dengan ketentuan harga barang lebih besar atau sama dengan 500


(57)

Operator ini digunakan untuk mengecek atau membuktikan bahwa Operan kosong.

Keterangan :

Perintah diatas akan menampilkan semua data dengan kriteria nama barang tidak boleh kosong.

9.14. Operator IS NULL

Operator ini digunakan untuk mengecek atau membuktikan bahwa operan kosong

Keterangan :

Perintah diatas akan menampilkan semua data barang dengan criteria nama barang yang tidak diisi (kosong). Pada contoh diatas tidak ditemukan data dengan krtiteria tersebut sehingga hasil dari perintah tersebut adalah “Empty set”

9.15. OPERATOR BETWEEN min AND max

Operator ini digunakan untuk mengecek jangkauan nilai operan. Dimana disini diketahui berapa nilai minimal dan maksimalya,


(58)

9.16. OPERATOR LIKE

Operator ini digunakan untuk mengecek apakah operan disebelah kiri nilainya ada yang sama dengan operan di sebelah kanan.

Contoh:

Tampilkan semua namabarang yang mempunyai kata Pensi_

Contoh:


(59)

Pengunaan Fungsi Logika IF, digunakan untuk mengecek apakah suatu operasi memenuhi kondisi yang diinginkan atau tidak, jika memenuhi lakukan operasi pertama, jika tidak lakukan operasi kedua dan seterusnya.

Contoh:

Jika harga*7 lebih besar atau sama dengan 10000 maka tampilkan Pesan Discount, tetapi jika tidak tampilkan pesan No Discount untuk kodebarang = “B0001”

10.2. String Function

Fungsi ini digunakan untuk memanipulasi data baik berupa karakter maupun berupa string .

10.3. Fungsi CONCAT

Fungsi ini digunakan untuk menggabungkan 2 buah kata atau lebih dengan tipe karakter

Keterangan :

• Contoh diatas akan menggabungkan Nama barang dengan kata “Cap 2 Gajah” dengan criteria kode barang =”B0001”


(1)

Kata Pengantar

Bahasa Pemograman di Internet saat ini sudah berkembang sangat pesat sekali, dengan kehadiran bahasa pemrograman dalam website akan lebih menambah semarak perkembangan dunia Internet. Sebuah website tanpa database yang dinamis akan dirasakan menjadi suatu database yang monoton. Saat ini sebagian besar website sudah menggunakan aplikasi database didalam menampilkan informasi, hal ini dimungkinkan berkat adanya perkembangan bahasa pendukung yang memungkinkan sebuah halaman web mengakses kedalam suatu database.

Pada kesempatan ini, kita akan mencoba untuk mempelajari salah satu bahasa pemrogram web yang sangat terkenal saat ini yaitu bahasa pemrograman PHP, dan dihubungankan dengan database Mysql, PHP dan MYSQL sudah tidak dapat dipisahkan lagi dalam dunia Web Datanbase programming saat ini.

Sistematika Pembahasan dalam buku ini lebih ditekankan pada segi Praktikum, oleh karena itu, cara terbaik untuk memahami dan menguasai pokok bahasan yang ada dalam buku ini adalah mempraktekannya langsung pada Komputer.

Buku ini merupakan buku pegangan praktikum Mahasiswa UNIKOM yang mengambil matakuliah Pemrograman Online dan Mata Kuliah E-Commerce. Semoga dengan hadirnya buku ini akan lebih menambah semangat belajar mahasiswa/I UNIKOM untuk mendapatkan hasil belajar yang lebih baik.

Bandung Januari 2004


(2)

DAFTAR ISI

Halaman

1.1. Sejarah Singkat PHP 1

1.2. Mengenal Sintak PHP 1

1.3. Pemisahan Intruksi 2

1.4. Komentar 3

1.5. Sekilah HTML 3

1.6. Headline 4

1.7. Format Teks 5

1.8. Blockquote 5

1.9. Font 5

1.10. Image 5

1.11. Hypertext 6

1.12. Form 6

1.13. Merancang Form untuk Dokumen 7

1.14. TextArea 7

1.15. Select 7

1.16. Input 8

1.17. Tabel 9

1.18. Frame 11

1.19. Penanganan Action Dalam PHP 12

2.1. Tipe Data dan Variabel pada PHP 18 2.2. Menginisialisasi Variabel 18

2.3. Menginisialisasi Array 18

2.4. Menginisialisasi Objek 18

2.5. Jangkauan dari Variabel 18

2.6. Variabel-Variabel 20

2.7. Penentuan tipe variable 20

2.8 Mengetahui tipe variable 20

2.9. Tipe Casting 20

2.10. Cast yang diperbolehkan 20

2.11. Konversi String 21

2.12. Menangani variable form, cokies dan encirontment 21 2,13, Variabel pada Image Submit 22

2.14. HTTP Cokies 22

2.15. Variabel Environment 22

2.16. Konstruksi Bahasa PHP 23


(3)

3.1. Operator pada PHP 24

3.2. Operator aritmatika 24

3.3. Opeerator pemberi nilai atau penugasan 24 3.4. Operator Bitwise 25

3.5. Operator Perbandingan 25

3.6. Operator Eksekusi 25

3.7. Operator penaikan dan pnururan 25

3.8. Opera Logika 26

3.9. Operarot Prioritas 26

3.10. Operator String 27

4.1. Pernyataan Kondisi dan Perulangan 28

4.2. Perintah IF 28

4.3. If Else 28

4.4. Else if 28

4.5. Alternatif Penulisan untuk struktur control 29 4.6. While 29

4.7. Do..While 30

4.8. For 30

4.10. Continue 31

4.11. Switch 31

4.12. Require 32

4.13. Include 32

5.1. Fungsi 34

5.2. Fungsi Buatan 34

5.3. Nilai Balik Fungsi 34

5.4. Argumen Fungsi 34

5.5. Class dan Object 35

6.1. Penanganan Kesalahan 37

6.2. Membuat Gambar Gif 37

6.3. HTTP authentication dengan PHP 37

6.4. Mendukung HTTP Cookie 39

6.5. mendukung upload file 39

6.6. Menfukung penggunanan Remote File 40

6.7. Penanganan Koneksi 40

7.1. Membuat Databade dan Tabel dari Linux 42 7.2. membuat Database 41

7.3. Membuat database dari MYSQL 43

7.4. Melihat Database 43

7.5. Menghapus Database 44

7.6. Mengaktifkan Database 44

7.7. Melihat Database Aktif 44


(4)

7.9. Tipa Data Numerik 45

7.10. Tipa Data Tanggal dan Waktu 45

7.11. Tipe Data String 46

7.12. Membuat Tabel 46

7.13. Melihat Tabel 47

8.1. Perintah Dasar SQL 48

8.2. Insert 48

8.3. Select 48

8.4. Update 48

8.5. Delete 50

8.6. Where 51

8.7. Group By 51

9.1. Operator 52

9.2. Operator Aritmatika 52

9.3. Operator Penambahan 53

9.4. Operator pembagian 54

9.5. Operator Perkalian 54

9.6. Operator Sisa Pembagian 54

9.7. Operator Perbandingan 55

9.8. Operator Sama dengan 55

9.9. Operator Tidak Sama dengan 55

9.10. Operator lebih kecil dari 56

9.11. Operator Lebih Besar Dari 56

9.12. Operator Lebih Besar sama dengan 56 9.13. Operator IS NOT NULL 57

9.14. Operator IS NULL 57

9.15. Operator BETWEEN Min and Max 57 9.16. Operator Like 58

10.1. Fungsi Kontrol 59

10.2. Fungsi String 59

10.3. Fungsi Concat 59

10.4. Fungsi Length 60

10.5. Fungsi INSTR 60

10.6. Fungsi LPAD 60

10.7. Fungsi RPAD 61

10.8. Fungsi LEFT 61

10.9. Fungsi RIGHT 61

10.10. Fungsi SUBSTRING 61

10.11. Fungsi SUBSTRING …FROM…. 62

10.12. Fungsi REPLACE 62

10.13. Fungsi REPEAT 63


(5)

10.15. Fungsi INSERT 64

10.16. Fungsi LCASE 64

10.17. Fungsi UCASE 65

10.18. Fungsi DATE 65

10.19. Fungsi TO_DAYS 65

10.20. Fungsi DAYOFWEEK 66

10.21. Fungsi WEEKDAY 66

10.22. Fungsi DAYOFWEEK 66

10.23. Fungsi DAYOFMONTH 67

10.24. Fungsi DAYOFYEAER 67

10.25. Fungsi MONTH 67

10.26. Fungsi DAYNAME 68

10.28. Fungsi QUARTER 68

10.29. Fungsi YEAR 69

10.30. Fungsi COUNT 69

10.31. Fungsi SUM 69

10.32. Fungsi AVG 69

10.33. Fungsi MAX 70

10.34. Fungsi MIN 70

11.1. Berhubungan dengan File Teks 71

11.2. Cara Kerja File 71

11.3. Membuka dna menutup File 71

11.4. Membaca data Dari File 71

11.5. Fread 72

11.6. Fscanf 73

11.7. Feof 74

11.8. Fgetch 74

11.9. readfile 75

11.10. Menulis Data Kedalam File 76

11.11. Fwrite 77

11.12. Memeriksa keberadaan file 77

11.13. Membuat Counter Teks dengan File Teks 78 11.14. Counter berbasis Grafis 78

12.1. Mengola data dari Form 81

12.2. Mengirim data dengan Menggunakan Methode POST 81 12.3. Mengirim data dengan Menggunakan Methode GET 82

12.4. Menghitung Total Belanja dengan Objek Input Text 84

12.5. Menghitung Labar Rugi Suatu Produksi 85

12.6. Pemesanan Tiket dengan menggunakan Objek Select 88

12.7. Membuat Aplikasi Rumah Makan dengan Objek Checkbox 90

12.8. Menghitung Harga dengan menggunakan objek radio 93

13.1. Menjalankan PHPMYADMIN 95


(6)

13.3. Membuat Tabel 97

13.4. Oeprasi PAda Tabel 99

14.1. Membagun Database dengan PHP 101

14.2. Interface untuk Memasukan Data 102

14.3. Menampilkan Data 104

14.4. Pencarian Data 107

14.5. Edit dan Hapus Data 110

15.1. Studi Kasus Toko Komputer Online 114

15.2. Menu Maintenance 117

15.3. Maintenance Kategori 117

15.4. Maintenance Jenis Barang 120

15.5. Daftar Pesanan 122