RISKA HARDIANI
Universitas Islam Negeri Syarif Hidayatullah Jakarta
A. Sejarah PHP
PHP pertama kali
ditemukan pada 1995 oleh seorang Software Developer bernama Rasmus Lerdrof. Ide
awal PHP adalah ketika itu Radmus ingin mengetahui jumlah pengunjung yang
membaca resume onlinenya. script yang dikembangkan baru dapat melakukan dua
pekerjaan, yakni merekam informasi visitor, dan menampilkan jumlah pengunjung
dari suatu website. Dan sampai sekarang kedua tugas tersebut masih tetap
populer digunakan oleh dunia web saat ini. Kemudian, dari situ banyak orang di
milis mendiskusikan script buatan Rasmus Lerdrof, hingga akhirnya rasmus mulai
membuat sebuah tool/script, bernama Personal Home Page (PHP).
Kebutuhan PHP
sebagai tool yang serba guna membuat Lerdorf melanjutkan untuk mengembangkan
PHP hingga menjadi suatu bahasa tersendiri yang mungkin dapat mengkonversikan
data yang di inputkan melalui Form HTML menjadi suatu variable, yang dapat
dimanfaatkan oleh sistem lainnya. Untuk merealisasikannya, akhirnya Lerdrof
mencoba mengembangkan PHP menggunakan bahasa C ketimbang menggunakan Perl.
Tahun 1997, PHP versi 2.0 di rilis, dengan nama Personal Home Page Form
Interpreter (PHP-FI). PHP Semakin popular, dan semakin diminati oleh programmer
web dunia.
Rasmus Lerdrof
benar-benar menjadikan PHP sangat populer, dan banyak sekali Team Developer
yang ikut bergabung dengan Lerdrof untuk mengembangkan PHP hingga menjadi
seperti sekarang, Hingga akhirnya dirilis versi ke 3-nya, pada Juni 1998, dan
tercatat lebih dari 50.000 programmer menggunakan PHP dalam membuat website
dinamis.
Pengembangan demi
pengembangan terus berlanjut, ratusan fungsi ditambahkan sebagai fitur dari
bahasa PHP, dan di awaal tahun 1999, netcraft mencatat, ditemukan 1.000.000
situs di dunia telah menggunakan PHP. Ini membuktikan bahwa PHP merupakan
bahasa yang paling populer digunakan oleh dunia web development. Hal ini
mengagetkan para developernya termasuk Rasmus sendiri, dan tentunya sangat
diluar dugaan sang pembuatnya. Kemudian Zeev Suraski dan Andi Gutsman selaku
core developer (programmer inti) mencoba untuk menulis ulang PHP Parser, dan
diintegrasikan dengan menggunakan Zend scripting engine, dan mengubah jalan
alur operasi PHP. Dan semua fitur baru tersebut di rilis dalam PHP 4.
13 Juli 2004,
evolusi PHP, PHP telah mengalami banyak sekali perbaikan disegala sisi, dan
wajar jika netcraft mengumumkan PHP sebagai bahasa web populer didunia, karena
tercatat 19 juta domain telah menggunakan PHP sebagai server side scriptingnya.[1]
B.
Pengertian dan
Penjelasan PHP
PHP merupakan
kependekan dari kata Hypertext Preprocessor. PHP tergolong sebagai pernagkat
lunak open source yang diatur dalam aturan general purpose licenses (GPL).[2]
PHP merupakan
bahasa pemrograman skrip yang diletakkan dalam server yang biasa digunakan
untuk membuat aplikasi web yang bersifat dinamis. PHP mendukung berbagai
database. Termasuk yang di dukungnya adalah MySQL. PHP bebas didistribusikan
oleh siapa saja dan ke siapa saja. Software ini dapat diunduh pada situs http://www.php.net dan tersedia untuk
berbagai platform (seperti Windows, Linux, dan lain-lain).[3]
PHP pertama kali
diperkenalkan pada mesin Linux dan semakin dikenal dengan adanya kolaborasi
LAMP (Linux Apache MySQL PHP). Kolaborasi ini terkenal tangguh dan sangat
kompatibel. PHP itu sendiri adalah script atau bahasa interpreter yang diolah
oleh server atau dalam istilah kerennya server side programming.
Script merupakan
penyebutan untuk bahasa pemrograman yang berbasis interpreter. Bahasa pemrograman
web merupakan contoh dari pemrograman berbasais interpreter. Pada pemrograman
berbasias web, yang terjadi hanya penerjemahan script (interpreter Language),
baik dilakukan di server (server side scripting) atau pada sisis Klien (Client
Side Scripting).
PHP merupakan bahasa
pemrograman berbasis server side. PHP dapat membuat suatu aplikasi bisa diintegrasikan
kedalam tag-tag HTMl. Dengan demikian, web tidak lagi statis karena pertukaran
data yang terbatas. Web yang dibuat oleh PHP lebih bisa berinteraksi dengan
pengguna (dinamis). PHP juga mampu mendukung berbagai database, di antaranya
Oracle, Sysbase, MySql, IODBC, MSSQL, Solid, General ODBC, Postgres SQL, dan
lain-lain.[4]
C.
Cara Penulisan
Script/Coding PHP
1.
Harus ditulis di antara tag :
·
<? dan ?>
·
<?php dan ?>
·
<script language=”php”> dan
</script>
·
<% dan %>
2.
Setiap satu statement (perintah)
biasanya diakhiri dengan titik-koma (;)
3.
CASE SENSITIVE untuk nama
identifier yang dibuat oleh user (berupa variable, konstanta, fungsi dll),
namun TIDAK CASE SENSITIVE untuk identifier built-in dari PHP. Jadi :
·
$nama ≠ $Nama ≠ $NAMA
·
hitungLuas() ≠ HitungLuas()
·
echo = ECHO
·
while = WHILE[5]
4.
Penamaan File PHP
File PHP anda harus
disimpan dengan ekstensi.php (jika anda menemukan file dengan ekstensi.php3
atau ohtml maka kemungkinan besar file-file tersebut ditulis menggunakan PHP
versi 3 kebawah). File-file tersebut akan disimpan sebagai file teks biasa.[6]
5.
Permulaan Kode PHP
Blok Kode PHP diawali dengan “<?php” (atau cukup
disingkat “<?” saja bila server anda mengijinkan dan biasanya bisa).
6.
Akhir kode PHP
Blok kode PHP ditutup dengan menambahkan “?>” di akhir
blok kodenya.
7.
Akhir baris program PHP
Setiap baris instruksi program diakhiri dengan tanda titik
koma “;” artinya walaupun anda menuliskannya lebih dari satu baris tetap akan
dianggap satu baris instruksi program jika belum ada tanda titik koma.[7]
8.
HTML ESCAPING
Ketika PHP menerima suatu file,
PHP akan mencari tags pembuka (“<?php”) dan tag penutup (“?>”). Hal ini
berarti sebagai pemberitahuan agar PHP mulai menerjemahkan baris-baris kode PHP
tersebut serta mengakhiri penerjemah-nya sampai bertemu dengan tag penutup.
Baris-baris kode yang berada diluar pasangan penanda “<?php ... ?>” akan diabaikan
(tidak diterjemahkan) oleh PHP. Sebagian besar baris-baris perintah PHP
disisipkan dalam tags-tags HTML atau berlaku sebaliknya.
Ada empat jenis pasangan tags
pembuka dan penutup berbeda yang biasa digunakan oleh PHP, antara lain:
·
<?php. . . ?> dan <script language=”php”>. . .</script>. Kedua bentuk tag
tersebut telah tersedia dalam PHP dan bisa langsung digunakan.
·
Short tags (<?. . .?>) dan ASP style
tags. Kedua bentuk tag tersebut dapat diaktifkan atau dimatikan penggunaannya
bergantung pada pengaturan di file php.ini.
·
Dua jenis tag terakhir tidak
disarankan penggunaanya karena beberapa server tidak mengenalinya.
9.
Pemisahan Instruksi
Seperti bahasa C atau Perl. PHP
membutuhkan penghentian baris pernyataan serta memisahkan antara baris satu dan
baris lain dengan cara memberikan tanda titik koma (“;”) di akhir setiap baris
pernyataan.
Kode tag penutup (“?>”) dari
sebuah blok PHP secara otomatis akan berimplikasi sebagai titik koma(;)
sehingga tidak diperlukan lagi adanya titik koma penghenti perintah diakhir
baris suatu blok PHP.
10.
Komentar atau Remarks
PHP mendukung pemberian komentar
seperti yang ada di ‘C’. ‘C++’ dan Unix
shell-style (Perl style). Terkadang dibutuhkan beberapa baris kalimat untuk
memberikan keterangan pada suatu baris program. Hal ini sering disebut Remarks. Remarks tidak akan ikut
dieksekusi oleh server. Jika remarks hanya satu baris, gunakanlah (“//”) atau
(“#”). Jika remarks terdiri atas beberapa baris secara berurutan lebih efektif
jika menggunakan (“/*. . .*/”).[8]
Contoh Pemberian Komentar:
<?php
// Baris ini akan
diabaikan. Catatan untuk kita sendiri:
// Saya membuat
script ini sambil
// Membaca, berenang
dan menyelam,
Print (“Anda berada
di situs Prothelon!”) ;
/*
Tiga baris berikut
ini juga akan diabaikan.
Dan jangan lupa
untuk kembali ke situs ini setiap minggu
Untuk melihat
artikel/tutorial baru!
*/
?>
Selain membantu untuk memahami dan mengingat script yang kita buat,
komentar memiliki manfaat lain.
Prasetio (2011:19) menyebutkan bahwa komentar dapat dimanfaatkam untuk
membantu menelusuri error, dengan mengubah sebagian blok kode menjadi komentar,
kita dapat melakukan proseriterasi untuk melakukan isolasi dan menemukan
masalah pada script PHP yang mengalami error.[9]
·
Penulisan Coding yang buruk
Agar ketika melakukan coding
dengan PHP dapat terbaca dengan mudah, dan algoritmanya terbaca dengan jelas,
maka dalam menyusun coding harus di atur sedemikian rupa. Contoh penulisan
coding yang buruk seperti adalah seperti list code di bawah ini.
<?php
// file latihan_213.php
if ($_POST["nama"] ==
"Anggie")
{
echo "<p>Hei
$_POST['nama']</p>;
}
else
{
echo "<h2>Anda bukan
Anggie!</h2>"
}
// masih dengan contoh yang sama,
// namun dengan cara penulisan yang berbeda
if ($_POST["nama"] ==
"Anggie")
{
echo "<p>";
echo "Hei ";
echo $_POST['nama'];
echo "</p>";
}
else
{
echo "<h2>";
echo "Anda bukan Anggie!";
echo "</h2>";
}
?>
Script ini sulit untuk dibaca,
karena jika ada programmer lain atau mungkin anda yang bertahun-tahun liburan
kemudian ingin membaca kode-kode yang anda buat tersebut tentunya akan
mengalami kesulitan membedakan fungsi-fungsi dari baris kodenya.
·
Penulisan Coding yang baik
<?php
if ($_POST["nama"] ==
"Anggie")
{
echo
"<p>Hei $_POST['nama']</p>;
}
else
{
echo
"<h2>Anda bukan Anggie!</h2>"
}
// masih dengan contoh yang sama,
// namun dengan cara penulisan yang berbeda
if ($_POST["nama"] ==
"Anggie")
{
echo
"<p>";
echo
"Hei ";
echo
$_POST['nama'];
echo
"</p>";
}
else
{
echo
"<h2>";
echo
"Anda bukan Anggie!";
echo
"</h2>";
}
?>
Itu merupakan contoh penulisan
coding yang baik[10]
D.
Contoh Program PHP
1.
Contoh program PHP sederhana
Contoh penulisan script Selamat.php
<HTML>
<HEAD>
<TITLE>Latihan Pertama</TITLE>
</HEAD>
<BODY>
Selamat Belajar PHP. <BR>
<?php
Printf(“Tgl.
Sekarang: %s “, Date(“d F Y”));
?>
</BODY>
</HTML>[11]
2.
Contoh Program PHP Sedang
·
Program Status Online
Misalnya, anda mempunyai website yang benar-benar online dan
anda penasaran ada berapa orang yang sedang aktif membuka website pada saat
itu. Untuk kasus tersebut pada intinya hanya menjumlahkan setiap user yang
masuk, selanjutnya secara berkala haruis dicek kembali apakah ada user baru
yang masuk atau keluar dari website.
Contoh script onlinestat.php:
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01
Transitional//EN”>
<html>
<head>
<title>Status Online</title>
<meta http-equiv=”Content-Type” content=”text/html;
Charset=iso-8859-1”>
</head>
<body>
<?php
$host=”localhost”;
$user=”root”;
$pwd=””;
$db=”book”;
$conn=@mysql_connect($host,$user,$pwd) or die
(“koneksi Gagal!”) ;mysql_select_db($db,$conn);
//Mencatat Waktu
$timestamp = time();
$timeout = $timestamp – 900;
//Insert User
$Insert = mysql_query(“INSERT INTO onlinestat
(timestamp, ip, file)
VALUES(‘$timestamp’, “.$_SERVER[‘REMOTE_ADDR’].”’,’”.
$_SERVER[‘PHP_SELF’].”’)”) or die(“Error in who’s online insert query!”);
//Delete User$delete = mysql_query(“DELETE FROM
onlinestatWHERE timestamp<$timeout”) or die(“Error in who’s online delete
query!”);
//Menghitung User Online$result =
mysql_query(“SELECT DISTINCT ip FROM onlinestat”) or die(“Error in who’s online
result query!”);$users = mysql_num_rows($result);
?>
<table align=”center” width=”618” border=”0”
cellspacing=”1” cellpadding=”1”>
<tr>
<td width=”614” height=”69” bgcolor=”#9BD2A9”>
<div align-“center”><font
size=”7”><strong>SELAMAT
DATANG</strong></font></div></td>
</tr>
<tr>
<td height=”37” bgcolor=”#7CA9BE”>
<div
align=”center”><strong>Pengunjung Yang Online Saat Ini Sebanyak
:</strong></div></td>
</tr>
<tr>
<td bgcolor=”#5F8AC0”> <div
align=”center”><font size=”7”><strong><?php echo $users;
?></strong></font>< /div></td>
</tr>
</table>
</body>
</html>
3.
Contoh Program PHP Rumit
·
FORM E-MAIL
Mengirim email melalui website sangatlah mudah, apalagi dengan dukungan PHP
yang telah menyediakan banyak fungsi email. Hal tersebut membuat pekerjaan
programmer menjadi kian mudah.
Form email mampu mengirimkan pesan email berformat HTML, sehingga semua
atribut HTML, seperti menampilkan gambar,table,huruf miring, dan huruf dengan
berbagai ukuran bisa ditampilkan di email client (penerima./tujuan). Jadi,
tidak sekedar mengirim teks.
Contoh penulisan
script emailform.php:
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01
Transitional//EN”>
<html>
<head><title>Web Email</title>
<meta http-equiv=”Content - Type” content=”text/html;
charset=iso-8859-1”>
</head>
<body>
<table width=”500” border=”0” cellspacing=”1”
cellpadding=”1”>
<form action=”<?php $_SERVER[‘SELF’];?>”method=”post”>
<tr>
<td colspan=”2”><div align=”center”><strong>FORM
EMAIL</strong></div></td>
</tr>
<tr>
<td width=”156”>Nama</td>
<td width=”337”><input type=”text”
name=”nama” size=”48”></td>
</tr>
<tr>
<td>Email Asal</td>
<td><input type=”text”
name=”emailasal” size=”48”></td>
</tr>
<tr>
<td>Email Tujuan</td>
<td><input type=”text”
name=”emailtujuan” size=”48””></td>
</tr>
<tr>
<td>Subyek</td>
<td><input type=”text” name=”subyek”
size=”48”></td>
</tr>
<tr>
<td>Pesan</td>
<td><textarea rows>”6”
name=”pesan” cols=”47”></ textarea></td>
</tr>
<tr>
<td> </td>
<td><input type=”submit”
name=”kirim” value=”Kirim Email”></td>
</tr>
</form> </table></phpif ($_POST[‘kirim’])
{
// Mengecek keaabsahan alamat email dan apakah semua text
box sudah terisi.
If (!eregi(“^([ _a-z0-9-]+[._a=z0-9-]*@(([a-z0- 9 - ] +\.)*([a-z0-9-]+)(\ . [a-z] {2, 3} ) )
$”,
$_POST[‘emailasal’])
||
!eregi(“’)[._a-z0-9-]+[.a-z0-9-]*)@(([a-z0-9-
] + \ .) * ([a – z0 – 9 -] + )(\ . [a-z] {2,3}) ) $ ” ,
$_POST[‘emailtujuan’])
|| empty($_POST[‘nama’]) ||empty($_PORT[‘subyek’])
|| empty($_POST[‘pesan’]))
{
Echo “Alamat email tidak valid<br>”;
echo “atau data tidak lengkap<br>”;
echo “mohon alamat email di cek
ulang!<br>”;
exit;
} else
[
$isipesan=”
<html>
<head>
<title>HTML Email</title>
</head>
<body>
<p><font
Size=6><strong>Selamat</strong></font></p>
<p><font size=5>Anda mendapat email dari
<font
Color=#FF0000><strong>”.$_POST[‘nama’].”</strong></
font>
Dengan alamat email <font
color=#0000FF>”$_POST[‘emailasal’].”</font></font></p>
<p><font size=5>dengan isi
pesan:</font></p>
<p><font size=5 face=Verdana, Arial,
Helvetica, sans-
Serif><em>”.$_POST[‘pesan’].”</em></font></p>
</body>
</html>
“;
// Mengirim dengan format mail HTML maka
Content-type header harus dist
$headers = ‘MIMEVersion: 1.0’ . “\r\n”;
$headers = ‘Content-type: text/html;
Charset=iso-8859-1’ . “\r\n”;
$headers
.= ‘From: $_POST [nama]
<$_POST[emailasal>’ . “\r\n”;
//Jika diperlukan Cc dan Bcc
//$headers
birthdayarchieve@example.com’ . “\r\n\”;
/ /
$terkirim=mail($_POST[‘emailtujuan’],
$_POST[‘subyek’], $isipesan, $headers);
If ($terkirim)
{
Echo
“<b>Email sudah terkirim</b>”;
} else {echo “<b>Email tidak terkirim,
mohon diulang kembali.</b>;}
}
}
?>
</body>
</html>[12]
[2] ) Dodit Supriyanto, Buku
Pintar Pemrograman PHP, (Jakarta: OASE Media, cet. Ke-1, 2008), hlm. 17
[3] ) Abdul Kadir, Tuntutan
Praktis Belajar Database Menggunakan MySQL, (Yogyakarta: Andi, 2008), hlm.
358
[4] ) M. H. Mubarok, Sistem
Kontrol via Web dengan CGI, PHP, dan AJAX, (Jakarta: PT. Elex Media Komputindo,
2011), hlm. 109
[5] ) Achmad Solichin, Pemrograman
Web dengan PHP dan MySQL, (Jakarta: Universitas Budi Luhur), hlm. 15
[6] ) Adhi Prasetio, Buku
Sakti Webmaster (PHP & MySQL, HTML & CSS, HTML5 & CSS3, Javascript),
(Bandung: Media Kita, cet-1, 2014) hlm. 131
[7] ) ibid. hlm. 132
[9] ) Adhi Prasetio, op. cit. hlm. 132
[11] ) Abdul Kadir, Dasar Pemrograman Web Dinamis
menggunakan PHP (edisi Revisi), (Yogyakarta: Andi, 2008)., hlm. 11
[12] ) Dodit Supriyanto, op. cit. hlm. 334
1 komentar:
Nice Information Keep Rocking Ruby on Rails Online Training Hyderabad
Posting Komentar