Pemrograman WEB PHP-Oracle (I)
Pemrograman WEB PHP-Oracle (I)
Oleh :
Wiratmoko Yuwono, ST
1/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
1. PENDAHULUAN
PHP Bersifat bebas dipakai. Anda tidak perlu membayar apapun untuk mengunakan
perangkat lunak ini. Anda dapat mendownload-nya melalui situs www.php.net. Untuk
versi windows anda dapat memperoleh kode binernya dan untuk versi linux anda bisa
mendapatkan kode sumbernya secara lengkap.
<html>
<head>
<title>Untitled Document</title>
</head>
2/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Sedangkan kode berikut adalah kode PHP dengan menampilkan tampilan seperti pada
gambar 1.
<html>
<head>
<title>Untitled Document</title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font size="6"><b><?echo "Selamat Belajar PHP." ?></b></font>
</body>
</html>
adalah merupakan kode PHP yang diawali dengan tanda <? Dan diakhiri dengan ?>.
Pasangan kedua kode inilah yang berfungsi sebagai tag kode PHP. Berdasarkan tag
inilah, pihak server dapat memahami kode PHP dan kemudian memprosesnya.
Hasilnya dikirim ke browser. Kode PHP menyerupai kode bahasa pemrograman C.
Diawali dengan pemahaman tentang konsep kerja HTML dimana dimulai dengan
permintaan suatu halaman web oleh browser. Berdasarkan URL (Uniform Resource
Locator) atau dikenal dengan sebutan alamat internet, browser mendapatkan alamat
dari web server, mengidentifikasi halaman yang dihendaki, dan menyampaikan segala
informasi yang dibutukan oleh web server.
Selanjutnya, web server akan mencarikan berkas yang diminta dan memberikan isinya
ke browser. Browser yang mendapatkan isinya segera melakukan proses
penerjemahan kode HTML dan menampilkannya kelayar pemakai.
Web Server
3/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Sedangkan pada konsep kerja PHP, prinsipnya serupa dengan konsep kerja HTML.
Hanya saja, ketika berkas PHP yang diminta didapatkan oleh web server, isinya
segera dikirimkan ke mesin PHP dan mesin inilah yang memproses dan memberikan
hasilnya (berupa kode HTML) ke web server. Selanjutnya, web server menyampaikan
ke klien.
Permintaan
HTTP (.HTML)
Mesin PHP
Untuk web server penulis menggunakan apache web server oracle 9i, dimana
saat menginstal database oracle 9i, maka secara default apache web server
telah ikut terinstal juga. Direktori apache terdapat pada dimana direktori oracle
home terinstal, semisal direktori oracle home terdapat pada c:\oracle, maka
direktori oracle terdapat pada c:\oracle\ora90\Apache.
Dan untuk mesin PHP, pastikan anda juga telah menginstalnya. Ikuti petunjuk
cara mengkaitkan web server apache dengan mesin PHP, yang biasanya
disertakan pada file install.txt yang ada pada direktori dimana mesin PHP
diinstal. Mesin PHP yang digunakan penulis adalah PHP-Maguma Version
4.3.10. Tambahkan kode berikut pada bagian kode PHP ditempatkan pada file
httpd.conf :
4/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Keterangan :
String username : menyatakan nama user dalam database oracle (format
string).
String Password : menyatakan password dari nama user database tersebut
(format string).
String db : Menyatakan nama konfigurasi (net service name) untuk koneksi
kedatabase oracle.
Contoh :
<?
$con=ocilogon("scott","tiger","orcl");
if (!$con)
echo "Gagal Terkoneksi Dengan Database Oracle";
else
echo "Koneksi Dengan Database Oracle Sukses";
?>
Hasil :
Syntax penulisan kode PHP untuk melakukan penutupan koneksi ke database oracle
5/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Keterangan :
Pengenal Hubungan : menyatakan pengenal yang diperoleh dari pemanggilan
fungsi ocilogon, contoh pengenal koneksi
$con=ocilogon("scott","tiger","orcl"); maka pengenal koneksinya adalah $con.
Contoh :
<?
$con=ocilogon("scott","tiger","orcl");
if (!$con)
echo "Gagal Terkoneksi Dengan Database Oracle";
else
echo "Koneksi Dengan Database Oracle Sukses";
ocilogoff($con);
?>
Keterangan :
String Query : Menyatakan perintah SQL (format string), yaitu perintah SQL
(query) yang berkaitan dengan DML (data manipulation language) dan DDL
(data definition language).
Contoh :
<?
$con=ocilogon("scott","tiger","orcl");
if (!$con)
echo "Gagal Terkoneksi Dengan Database Oracle";
else
echo "Koneksi Dengan Database Oracle Sukses";
$sql=ociparse($con,select * from karyawan);
ocilogoff($con);
?>
Keterangan :
6/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Contoh :
<?
$con=ocilogon("scott","tiger","orcl");
if (!$con)
echo "Gagal Terkoneksi Dengan Database Oracle";
else
echo "Koneksi Dengan Database Oracle Sukses";
$sql=ociparse($con,select * from karyawan);
ociexecute($sql);
ocilogoff($con);
?>
Fungsi ocifetch merupakan perintah mengambil hasil dari perintah query dalam hal
ini khusus untuk perintah select, metode pengambilannya secara baris per baris, atau
record per record.
Contoh :
<?
$con=ocilogon("scott","tiger","orcl");
if (!$con)
echo "Gagal Terkoneksi Dengan Database Oracle";
else
echo "Koneksi Dengan Database Oracle Sukses";
$sql=ociparse($con,select * from karyawan);
ociexecute($sql);
ocifetch($sql);
ocilogoff($con);
?>
Keterangan :
Kolom : dapat berisi nomor kolom/field dari tabel yang ditunjuk, atau juga
nama kolom/field (ditulis dalam uppercase/huruf besar format string) dari
tabel yang ditunjuk.
Contoh :
<?
$con=ocilogon("scott","tiger","orcl");
if (!$con)
echo "Gagal Terkoneksi Dengan Database Oracle";
else
echo "Koneksi Dengan Database Oracle Sukses";
$sql=ociparse($con,select * from karyawan);
ociexecute($sql);
ocifetch($sql);
// semisal kolom 1 merupakan kolom NAMA yang berisi data nama
echo ociresult($sql,1);
// anda juga dapat menuliskan syntaxnya sebagai berikut
echo ociresult($sql,NAMA);
ocilogoff($con);
?>
Hasil :
Joko Suratman
8/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Contoh aplikasinya untuk menampilkan data pada PHP seperti pada contoh diatas
adalah sebagai berikut :
<?
$con=ocilogon("scott","tiger");
$sql=ociparse($con,"select * from emp");
ociexecute($sql);
print("EMPNO\tENAME\tJOB\tMGR\tHIREDATE\tSAL\tCOMM\tDEPTNO");
print("<br>"); // GANTI BARIS
while (ocifetch($sql)){
echo ociresult($sql,"EMPNO");
print("\t"); // BERIKAN SPASI TAB
echo ociresult($sql,"ENAME");
print("\t");
echo ociresult($sql,"JOB");
print("\t");
echo ociresult($sql,"MGR");
print("\t");
echo ociresult($sql,"HIREDATE");
print("\t");
echo ociresult($sql,"SAL");
print("\t");
echo ociresult($sql,"COMM");
print("\t");
echo ociresult($sql,"DEPTNO");
print("<br>");
}
ocilogoff($con);
?>
Hasil :
9/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Anda dapat menampilkan data dengan klausa where, contoh aplikasi adalah sebagai
berikut :
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<?
$Job=@$HTTP_POST_VARS["Job"];
?>
<form name="kirim" method="post" action="">
Job
<input type="text" name="Job"> <!--input text box mendeteksi nama JOB --!>
<input type="submit" name="Submit" value="Kirim"> <!--tombol kirim --!>
</form>
<?
if ($Job<>""){
$con=ocilogon("scott","tiger");
$sql=ociparse($con,"select * from emp where job='$Job'");
ociexecute($sql);
print("EMPNO\tENAME\tJOB\tMGR\tHIREDATE\tSAL\tCOMM\tDEPTNO");
print("<br>"); // GANTI BARIS
while (ocifetch($sql)){
echo ociresult($sql,"EMPNO");
print("\t"); // BERIKAN SPASI TAB
10/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
echo ociresult($sql,"ENAME");
print("\t");
echo ociresult($sql,"JOB");
print("\t");
echo ociresult($sql,"MGR");
print("\t");
echo ociresult($sql,"HIREDATE");
print("\t");
echo ociresult($sql,"SAL");
print("\t");
echo ociresult($sql,"COMM");
print("\t");
echo ociresult($sql,"DEPTNO");
print("<br>");
}
ocilogoff($con);}
?>
</body>
</html>
Keterangan :
Untuk tulisan yang berwarna merupakan kode khusus script PHP, sedangkan
yang tidak berwarna merupakan kode script HTML.
Untuk kode berikut ini :
$Job=@$HTTP_POST_VARS["Job"];
Hasil :
11/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Contoh Program :
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="kirim" method="post" action="">Job
<input type="text" name="Job"> ENAME
<input type="text" name="Ename">
<input type="submit" name="Submit" value="Insert">
</form>
</body>
<?
$Job=@$HTTP_POST_VARS["Job"];
$Ename=@$HTTP_POST_VARS["Ename"];
if ($Job<>""){
$con=ocilogon("scott","tiger");
$sql=ociparse($con,"insert into emp (EMPNO,JOB,ENAME) values(1000,'$Job','$Ename')");
ociexecute($sql);
$sql=ociparse($con,"select * from emp"); //MENAMPILKAN SEMUA DATA
ociexecute($sql);
print("EMPNO\tENAME\tJOB\tMGR\tHIREDATE\tSAL\tCOMM\tDEPTNO");
print("<br>"); // GANTI BARIS
while (ocifetch($sql)){
echo ociresult($sql,"EMPNO");
print("\t"); // BERIKAN SPASI TAB
echo ociresult($sql,"ENAME");
print("\t");
12/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
echo ociresult($sql,"JOB");
print("\t");
echo ociresult($sql,"MGR");
print("\t");
echo ociresult($sql,"HIREDATE");
print("\t");
echo ociresult($sql,"SAL");
print("\t");
echo ociresult($sql,"COMM");
print("\t");
echo ociresult($sql,"DEPTNO");
print("<br>");
}
ocilogoff($con);}
?>
</html>
Hasil :
Gambar diatas, adalah kode program memasukkan data baru pada tabel EMP dengan
memasukkan kolom JOB dan Kolom ENAME.
JOB= PROGRAMER dan ENAME=MOKO
Sedangkan kolom EMPNO harus diisi, penulis memasukkan angka 1000, lihat kode
berikut :
13/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Contoh Program :
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="kirim" method="post" action="">Job
<input type="text" name="Job"> ENAME
<input type="text" name="Ename">
<input type="submit" name="Submit" value="Update">
</form>
</body>
<?
$Job=@$HTTP_POST_VARS["Job"];
$Ename=@$HTTP_POST_VARS["Ename"];
if ($Job<>""){
$con=ocilogon("scott","tiger");
$sql=ociparse($con,"update emp set job='$Job' where ename='$Ename'");
ociexecute($sql);
$sql=ociparse($con,"select * from emp"); //MENAMPILKAN SEMUA DATA
ociexecute($sql);
print("EMPNO\tENAME\tJOB\tMGR\tHIREDATE\tSAL\tCOMM\tDEPTNO");
print("<br>"); // GANTI BARIS
while (ocifetch($sql)){
echo ociresult($sql,"EMPNO");
print("\t"); // BERIKAN SPASI TAB
echo ociresult($sql,"ENAME");
print("\t");
echo ociresult($sql,"JOB");
print("\t");
echo ociresult($sql,"MGR");
print("\t");
echo ociresult($sql,"HIREDATE");
print("\t");
echo ociresult($sql,"SAL");
print("\t");
echo ociresult($sql,"COMM");
print("\t");
echo ociresult($sql,"DEPTNO");
print("<br>");
}
ocilogoff($con);}
?>
</html>
Hasil :
14/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Gambar diatas, adalah kode program mengubah data pada tabel EMP dengan
mengubah data pada kolom JOB dengan referensi kolom ENAME.
JOB= PROGRAMER diubah menjadi JOB=SALESMAN pada baris dimana
ENAME=MOKO
Contoh Program :
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="kirim" method="post" action="">
ENAME
<input type="text" name="Ename">
<input type="submit" name="Submit" value="Delete">
</form>
</body>
<?
$Job=@$HTTP_POST_VARS["Job"];
$Ename=@$HTTP_POST_VARS["Ename"];
if ($Job<>""){
$con=ocilogon("scott","tiger");
$sql=ociparse($con,"delete from emp where ename='$Ename'");
15/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
ociexecute($sql);
$sql=ociparse($con,"select * from emp"); //MENAMPILKAN SEMUA DATA
ociexecute($sql);
print("EMPNO\tENAME\tJOB\tMGR\tHIREDATE\tSAL\tCOMM\tDEPTNO");
print("<br>"); // GANTI BARIS
while (ocifetch($sql)){
echo ociresult($sql,"EMPNO");
print("\t"); // BERIKAN SPASI TAB
echo ociresult($sql,"ENAME");
print("\t");
echo ociresult($sql,"JOB");
print("\t");
echo ociresult($sql,"MGR");
print("\t");
echo ociresult($sql,"HIREDATE");
print("\t");
echo ociresult($sql,"SAL");
print("\t");
echo ociresult($sql,"COMM");
print("\t");
echo ociresult($sql,"DEPTNO");
print("<br>");
}
ocilogoff($con);}
?>
</html>
Hasil :
Gambar diatas, adalah hasil kode program menghapus data pada tabel EMP dengan
referensi kolom ENAME.
Program akan menghapus data pada baris dimana ENAME=MOKO
16/17
Pemrograman WEB PHP-ORACLE (I) Oleh : Wiratmoko Yuwono, ST
Soal Latihan :
1. Buat Tampilan Sederhana, menampilkan isi dari tabel EMP pada user scott.
Field yang ditampilkan adalah : EMPNO, JOB, ENAME DAN MGR.
Ganti Tampilan Header EMPNO dengan NIP, JOB dengan Pekerjaan,
ENAME dengan Nama Pegawai dan MGR dengan Manager.
2. Buat Program untuk memasukkan semua data/semua field/semua kolom pada
tabel EMP pada user scott
3. Buat program untuk mengganti field MGR, dan SAL. dengan field EMPNO
sebagai referensi untuk mengubah baris yang diinginkan.
4. Buat program untuk menghapus data dengan field JOB dan ENAME sebagai
referensi untuk menghapus baris yang diinginkan.
17/17