Anda di halaman 1dari 17

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

BAB 2 : Dasar Pemrograman PHP- Oracle

2.1.Membuat koneksi PHP ke Database Oracle


Syntax penulisan kode PHP untuk melakukan koneksi ke database oracle

ocilogon ( string username, string password [, string db] )

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 :

Bila koneksi berhasil akan muncul sbb :


Koneksi Dengan Database Oracle Sukses
Bila koneksi gagal akan muncul sbb :

Oracle Academic Initiative

Halaman : 2 - 1

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

Gagal Terkoneksi Dengan Database Oracle

2.2.Menutup koneksi PHP ke Database Oracle


Syntax penulisan kode PHP untuk melakukan penutupan koneksi ke database oracle

ocilogoff ( pengenal koneksi )

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);
?>

2.3.Menjalankan perintah SQL (query)


Syntax penulisan kode PHP-nya adalah sebagai berikut :

ociparse ( pengenal koneksi, string query )

Oracle Academic Initiative

Halaman : 2 - 2

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

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);
?>
2.4.Mengeksekusi perintah SQL (query)
Syntax penulisan kode PHP-nya adalah sebagai berikut :

ociexecute ( pengenal perintah [, int mode] )

Keterangan :

Pengenal Perintah : menyatakan pengenal yang diperoleh dari pemanggilan fungsi ociparse,
contoh pengenal perintah $sql=ociparse($con,select * from karyawan) maka pengenal
perintahnya adalah $sql.

Mode : menyatakan perintah, apakah perintah query akan langsung di commit secara otomatis
atau manual. Bila tidak diisi, menyatakan bahwa perintah query yang diberikan akan di commit
secara otomatis. Bila diisi dengan OCI_DEFAULT maka perintah query harus dicommit secara
manual.

Oracle Academic Initiative

Halaman : 2 - 3

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

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);
?>
2.5.Mengambil hasil query (untuk select query) per record
Syntax penulisan kode PHP-nya adalah sebagai berikut :

ocifetch (pengenal perintah)

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);

Oracle Academic Initiative

Halaman : 2 - 4

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

ocifetch($sql);
ocilogoff($con);
?>
2.6.Menampilkan nilai field hasil query (select query)
Syntax penulisan kode PHP-nya adalah sebagai berikut :

ociresult ( pengenal perintah, kolom )

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);
?>

Oracle Academic Initiative

Halaman : 2 - 5

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

Hasil :
Joko Suratman
2.7.Contoh aplikasi sederhana
1. Menampilkan data pada tabel EMP di user scott.
Tabel EMP pada user scott, mempunyai data sebagai berikut :
EMPNO

ENAME

JOB

MGR

HIREDATE

SAL

COMM

DEPTNO

7369 SMITH

CLERK

7902 17-12-1980

800

20

7499 ALLEN

SALESMAN

7698 20-02-1981

1600

300

30

7521 WARD

SALESMAN

7698 22-02-1981

1250

500

30

7566 JONES

MANAGER

7839 02-04-1981

2975

7654 MARTIN

SALESMAN

7698 28-09-1981

1250

7698 BLAKE

MANAGER

7839 01-05-1981

2850

30

7782 CLARK

MANAGER

7839 09-06-1981

2450

10

7788 SCOTT

ANALYST

7566 19-04-1987

3000

20

7839 KING

PRESIDENT

17-11-1981

5000

10

7844 TURNER

SALESMAN

7698 08-09-1981

1500

7876 ADAMS

CLERK

7788 23-05-1987

1100

20

7900 JAMES

CLERK

7698 03-12-1981

950

30

7902 FORD

ANALYST

7566 03-12-1981

3000

20

7934 MILLER

CLERK

7782 23-01-1982

1300

10

20
1400

30

30

Contoh aplikasinya untuk menampilkan data pada PHP seperti pada contoh diatas adalah sebagai
berikut :

<?
$con=ocilogon("scott","tiger");
$sql=ociparse($con,"select * from emp");
Oracle Academic Initiative

Halaman : 2 - 6

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

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 :

Oracle Academic Initiative

Halaman : 2 - 7

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

Gambar 4. Contoh Menampilkan Seluruh Data


2. Menampilkan data dengan klausa where
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>
Oracle Academic Initiative

Halaman : 2 - 8

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

<?
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
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.

Oracle Academic Initiative

Halaman : 2 - 9

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

Untuk kode berikut ini :


$Job=@$HTTP_POST_VARS["Job"];
Merupakan kode penampung dan penangkap variabel HTML ke Variabel PHP.

Hasil :

Gambar 5. Contoh Menampilkan Data dengan klausa where.


3. Memasukkan data pada tabel EMP di user scott.
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
Oracle Academic Initiative

Halaman : 2 - 10

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

<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");
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>

Oracle Academic Initiative

Halaman : 2 - 11

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

Hasil :

Gambar 6. Contoh Memasukkan Data


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 :
$sql=ociparse($con,"insert into emp (EMPNO,JOB,ENAME) values(1000,'$Job','$Ename')");

4. Mengubah data pada tabel EMP di user scott.


Contoh Program :
<html>
<head>

Oracle Academic Initiative

Halaman : 2 - 12

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

<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);}

Oracle Academic Initiative

Halaman : 2 - 13

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

?>
</html>

Hasil :

Gambar 7. Contoh Mengubah Data


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 kode untuk mengubah data adalah sebagai berikut :
$sql=ociparse($con,"update emp set job='$Job' where ename='$Ename'");

5. Menghapus data pada tabel EMP di user scott.


Contoh Program :

Oracle Academic Initiative

Halaman : 2 - 14

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

<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'");
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");

Oracle Academic Initiative

Halaman : 2 - 15

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

print("<br>");
}
ocilogoff($con);}
?>
</html>

Hasil :

Gambar 8. Contoh Menghapus Data


Gambar diatas, adalah hasil kode program menghapus data pada tabel EMP dengan referensi kolom
ENAME.
Program akan menghapus data pada baris dimana ENAME=MOKO
Contoh kode untuk menghapus data adalah sebagai berikut :
$sql=ociparse($con,"delete from emp where ename='$Ename'");

Oracle Academic Initiative

Halaman : 2 - 16

Aplikasi berbasis Web dengan PHP-Oracle

BAB 2 : Dasar Pemrograman PHP-Oracle

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.

Oracle Academic Initiative

Halaman : 2 - 17

Anda mungkin juga menyukai