Rabu, 27 April 2011

Pengenalan PHP

Pengenalan PHP


Pada bab ini Anda akan dikenalkan dengan PHP sebagai salah satu server side programming, pengertian server side programming dan client side programming, serta alasan mengapa memilih PHP. Tak lupa pula akan dijelaskan tool apa saja yang diperlukan untuk belajar PHP.


Tentang Client Side dan Server Side Programming


PHP atau merupakan singkatan rekursif dari PHP : Hypertext Preprocessor adalah suatu bahasa pemrograman yang termasuk kategori server side programming. Wah… apaan tuh maksudnya server side programming? OK… server side programming adalah jenis bahasa pemrograman yang nantinya script/program tersebut akan dijalankan oleh server. Selanjutnya hasil pengolahan script/program tersebut akan dikirim ke client sebagai output.


Sebagai gambaran dari server side programming adalah sebagai berikut ini.
Misalkan Anda ingin membuat script/program untuk menjumlahkan dua buah bilangan dengan menggunakan PHP. Nah… andaikan Anda telah membuat form untuk input kedua bilangan dan membuat script PHP untuk mengolah penjumlahan kedua bilangan. Dalam hal ini, keduanya (form dan script PHP) sama-sama diupload ke server. Selanjutnya misalkan ada seorang user yang ingin menjumlahkan dua bilangan, maka user tadi akan mengakses ke server. Apa yang diakses? Tentunya form input bilangan yang akan dijumlahkan. Dalam hal ini posisi si user adalah sebagai client. Nah… setelah si user mengisi bilangan pada form, selanjutnya dia mensubmitnya. Trus… kemana mensubmitnya? Karena Anda tadi membuat script PHP dan form input telah diarahkan ke script PHP tersebut, maka data input akan disubmit ke server untuk diolah menggunakan script PHP yang telah Anda buat tadi. Setelah input diolah (dijumlahkan), maka hasilnya akan kembali dikirim ke client sebagai output sehingga si user mengetahui hasil penjumlahan dua bilangan yang diinputkan melalui form tadi. Penjelasan detail tentang cara mengkaitkan antara form dan script PHP sebagai pengolahnya akan dijelaskan di bab tentang pemrosesan form. Trus… selain server side programming, apakah ada jenis yang lain? Oh.. Ada donk yaitu client side programming. Jenis programming ini merupakan kebalikan dari server side programming. Untuk client side programming, script/program akan diproses di dalam client sendiri.

Untuk menggambarkan client side programming, kita ambil contoh kasus yang sama dengan sebelumnya yaitu script menjumlahkan dua bilangan. OK… misalkan Andamembuat form input untuk memasukkan dua bilangan, serta script untuk menjumlahkannya. Selanjutnya keduanya ditaruh/diupload ke server. Misalkan ada user yang ingin menjumlahkan dua bilangan, maka dia akan mengakses ke server form input. Karena Anda menggunakan script pengolah berjenis client side programming, maka script tersebut juga akan terakses oleh si user. Biasanya script ini diletakkan dalam satu halaman yang sama dengan form. Oleh karena itu bila si user mengakses form, maka script juga otomatis akan terakses. Setelah si user memasukkan bilangan ke dalam form, lalu dia mensubmitnya. Trus… kemana submitnya? Yap… submit ini tidak ditujukan ke server melainkan ke client itu sendiri dan diolah oleh script yang ikut terakses tadi. Kemudian hasilnya ditampilkan sebagai output. Salah satu contoh bahasa pemrograman web yang berjenis client side programming adalah Javascript.


Untuk melihat perbedaan yang kentara antara bahasa pemrograman web yang berjenis server side programming dan client side programming adalah bisa atau tidaknya script/program itu ditampilkan ke dalam browser ketika mengaksesnya. Apa maksudnya? Cobalah akses suatu halaman situs yang di dalamnya terdapat Javascript, misalnya http://detik.com. Ketika Anda lihat source halaman web tersebut (klik kanan, klik View Page Source pada Firefox atau klik nanan, klik View Source pada IE), maka dapat Anda
lihat isi kode script Javascriptnya, yang biasanya ditandai dengan


<script type="text/javascript" language="javascript">
dan diakhiri dengan tanda
</script>


Mengapa kode Javascript itu bisa terlihat? Ya… karena script itu nantinya akan diproses oleh komputer client, sehingga kode itu ibaratnya harus didownload terlebih dahulu ke dalam client. Selanjutnya bandingkan ‘penampakannya’ ☺ bila Anda mengakses script PHP, misalkan script yang telah saya buat untuk percobaan (http://rosihanari.net/test.php). Ketika Anda lihat dibrowser, maka yang tampil adalah hanyalah berupa teks pesan saja. Dan apabila Anda lihat sourcenya, maka tidak tampak perintah-perintah yang berupa kode PHP.
Padahal isi dari script test.php ini adalah sebagai berikut:


<?php
echo "Hello apa kabar?<br />";
echo "Terimakasih atas kepercayaan Anda pada Rosihan Ari sebagai pembimbing belajar PHP Anda";
?>


Mengapa bisa demikian? Ya… karena script test.php ini telah dijalankan atau diproses di server dan bukan di client. Dalam hal ini client hanya menerima output hasil pengolahan script di server. Mudah-mudahan dari uraian di atas Anda sudah bisa membedakan apa itu server side programming dan client side programming.

Mengapa PHP

Mengapa PHP?

Di samping PHP, sebenarnya ada beberapa jenis pemrograman lain yang termasuk server side programming yaitu JSP (Java Server Pages), ASP (Active Server Pages), Phyton, dan Perl, serta masih ada lagi beberapa yang lain. Namun mengapa saya rekomendasikan PHP untuk Anda pelajari? Ya… karena PHP memiliki beberapa kelebihan antara lain:
  1. Bahasa pemrograman PHP sangat mudah dipelajari karena mirip dengan bahasa C/C++
  2. PHP mudah diimplementasikan karena software PHP servernya 100% Free
  3. Kebanyakan server web hosting mensupport PHP
  4. PHP paling banyak digunakan oleh web programmer di seluruh dunia
  5. Anda bisa melakukan instalasi PHP server sendiri dengan mudah di komputer pribadi Anda untuk belajar.
  6. Integrasi antara PHP dan database mudah untuk diimplementasikan karena PHP mensupport banyak database (DBMS), seperti MySQL, MS. Access, Oracle, DB2, Dbase, Interbase dll.
Tool Apa Saja Yang Diperlukan Untuk Belajar PHP?

Untuk memudahkan Anda belajar PHP, berikut ini beberapa tool yang sebaiknya Anda miliki :
  1. Software web server, bisa dipilih salah satu antara Apache, IIS, PWS (100 % free)
  2. Software PHP server (100% free)
  3. Software database, sebaiknya pilih MySQL karena 100% free. Bila sudah menguasai PHP + MySQL bisa dikembangkan dengan database yang lain.
  4. Text Editor, misalkan Notepad atau Notepad++. Dalam hal ini saya merekomendasikan Notepad++ karena selain software ini 100% free, juga mensupport untuk memudahkan penulisan bahasa program.
  5. Web Editor, misalnya Dreamweaver atau Frontpage (sifatnya optional) sebagai pendukung saja.
Untuk tool no. 1 s/d 3 sebenarnya Anda tidak perlu mencarinya atau menginstalasi secara terpisah, karena ada software paket yang di dalamnya sudah tersedia web server Apache, PHP server dan MySQL. Dalam hal ini saya merekomendasikan AppServ (http://www.appservnetwork.com) sebagai softwarenya. Software ini 100% Free. Untuk AppServ rilis terakhir (2.6.0) Anda akan mendapatkan :

· Apache 2.2.8
· PHP 6.0.0-dev
· MySQL 6.0.4-alpha
· phpMyAdmin-2.10.3

Yudi Rusmawan