Koneksi PHP ke Oracle 10g XE

18 Dec

Contoh koneksi PHP ke Database Oracle
by: Kautsar <ocal_sophan@yahoo.com>

Pada tulisan ini penulis menyampaikan contoh untuk melakukan koneksi dari PHP ke database oracle. Sebelumnya dilakukan instalasi software untuk keperluan ini, yaitu instalasi database dan web server. Proses instalasi tidak dijelaskan karena sudah cukup banyak referensi di internet untuk melakukan instalasi tersebut. Software database yang digunakan adalah freeware, kecuali untuk tool dreamweaver. Dreamweaver ini tool optional,bisa digunakan ataupun tidak digunakan.

Software / Tool yang diinstall

  1. Database/DBMS Oracle, dalam contoh ini digunakan Oracle 10g Express Edition. Digunakan sebagai media penyimpan data
  2. Wampserver 2.0, digunakan sebagai web server PHP
  3. Dreamweaver 8.0, digunakan untuk melakukan edit file PHP.

Penyiapan sample data di database oracle

Sebagai contoh, di oracle kita membuat tabel mahasiswa dengan kolom nim, nama, alamat, kota. Sebelumnya, kita harus membuat user di database oracle. Langkah

  1. Buka Database Home Page, Login sebagai sistem seperti pada tampilan berikut
  2. Pilih administrator à database Users à create User seperti pada tampilan berikut
  3. Pada tampilan berikutya, isikan nama user yang baru (yg akan digunakan sebagai tempat database yg baru), misalnya diisikan db1 dengan password db1, sesuai dengan tampilan berikut. Jika sudah, klik Create
  4. Jika sudah, lakukan logout, dan coba lakukan Login kembali menggunakan user yang baru (db1)

Pada langkah berikutnya, kita akan membuat tabel mahasiswa. Pada pembuatan tabel mahasiswa ini kita membuat tabel menggunakan script SQL. Script yang digunakan untuk membuat tabel mahasiswa adalah:

CREATE TABLE “MAHASISWA”

(    “NIM” VARCHAR2(20) NOT NULL,

“NAMA” VARCHAR2(30),

“ALAMAT” VARCHAR2(50),

“KOTA” VARCHAR2(50),

CONSTRAINT “MAHASISWA_PK” PRIMARY KEY (“NIM”)

)

/

 

Langkah untuk membuat tabel mahasiswa

  1. Login ke database oracle menggunakan user yang baru dibuat (db1)
  2. Pilih SQL à SQL Commands à Enter Command, sesuai dengan tampilan berikut
  3. Pada window yang ada, Paste kan script SQL diatas sesuai dengan tampilan berikut, Jika sudah, klik RUN

Langkah berikutnya adalah memasukkan data ke tabel mahasiswa, dalam contoh ini penulis menggunakan perintah SQL berikut

 

Insert into mahasiswa (nim, nama, alamat, kota)

values (‘001′,’andi’,’a. Yani’, ‘Bangkalan’)

/


Perintah SQL tersebut dijalankan di jendela SQL Commands.

Setelah dilakukan pengisian data ke tabel mahasiswa, kita bisa melihat isi tabel mahasiswa dengan perintah SQL

Select * from mahasiswa à sesuai dengan tampilan berikut

Koding PHP untuk koneksi ke oracle

Untuk melakukan koneksi ke oracle dari PHP, penulis menggunakan odbc (open database connectivity). Metode ini dipilih karena setelah menggunakan beberapa ujicoba menggunakan driver OCI8, penulis mengalami kesulitan dalam loading library (dll) di php untuk OCI8. Pada kesempatan yang lain akan penulis ulas untuk setting OCI8.

Untuk koneksi menggunakan ODBC, sebelumnya kita harus medefinisikan DSN (data source name) yang akan digunakan. Langkah:

  1. Dari desktop windows, buka menu start à Control Panel à Administrative Tools à Data Source (ODBC), Klik System DSN, Klik ADD sesuai dengan tampilan berikut
  2. Pilih oracle XE, klik Finish
  3. Isikan nama datasource, dalam contoh ini : ora99, pilih TNS Name, isikan User ID. Lakukan Test Connection untuk ujicoba koneksi. Jika sudah, klik OK.

Setelah setting DSN / ODBC, berikut script php untuk melakukan koneksi ke database melalui ODBC yang telah di set:

<?php

$conn = odbc_connect(“ora99″,”db1″,”db1”);

if($conn == 0)

echo(“Koneksi ke database error”);

else

echo(“koneksi sukses <br>”);

//open table

if (!($query = odbc_exec($conn, “SELECT * FROM mahasiswa”)))

die(“SQL Error”);

$t = odbc_num_rows($query);

while(odbc_fetch_into($query,$res))

{

for($i=0;$i<odbc_num_fields($query);$i++)

{

echo $res[$i].” “;

}

echo “<br>”;

}

odbc_close($conn);

?>

Hasil Ujicoba:

20 Responses to “Koneksi PHP ke Oracle 10g XE”

  1. yacob June 1, 2010 at 6:22 pm #

    Makasih infonya pak. Ini sangat berguna sekali.

  2. iping February 23, 2011 at 12:51 am #

    pak d wamp,nya ada settingan lain gak, knp punya saya tetep gak bisa!!!
    wkt ngerun koneksi.phpnya?

    file phpnya disimpan di direktori yg mana?

    mohon ilmunya

    • kautsarsophan March 2, 2011 at 6:38 pm #

      service apache di wamp nya sdh bisa jalan? coba cek dengan buka browser, isikan 127.0.0.1, jk muncul halaman index wamp, berarti apache web server sudah ok.
      pesan errornya apa?
      file php diletakkan di folder root webserver.

  3. ahmad2 March 23, 2011 at 3:30 pm #

    mantaaaaaaaaaaaaaaap gan,,,,,,,
    kalo pake xampp gmn ya?????
    kalo ada tutorialnya kirim lewat email gan
    terimakasih sebelumnya

    • kautsarsophan March 24, 2011 at 8:59 am #

      xampp fungsinya sebagai webserver, sama dengan wamp. jadi tidak ada perubahan. sama saja.

  4. anak setan July 15, 2011 at 2:05 pm #

    mas… tabelnya kok ga muncul… yg keluar cuma pesan koneksi sukses… di mana salahnya mas…??? saya udah ngikutin script mu… aku ora mudeng… :DD
    mohon bantuannya…. :sembah:

    • kautsarsophan October 9, 2011 at 6:37 pm #

      sudah sampai langkah yang mana?

  5. jamaludin October 8, 2011 at 2:42 pm #

    mw tanya pak,oracle 10g ini suport di os windows xp ngk pak…mohon penjelasan nya

    terimah kasih……

    • kautsarsophan October 9, 2011 at 6:35 pm #

      service oracle 10g XE bisa jalan di winXP

  6. Didie November 10, 2011 at 5:14 pm #

    Saya udah coba dan berhasil, saya mw tanya nih pak
    1.kalo pakai php framework kyk code igniter itu apa ada perbedaan settingan gak ?
    2.kalo misalnya sama aja, berarti tinggal coding konfigurasi databasenya aja y di php frameworknya?

    Mohon ilmunya, Terima kasih🙂

    • kautsarsophan November 17, 2011 at 8:31 pm #

      pakai framework CI, bisa, cuman beda di koneksinya. dalam contoh saya, pakai ODBC.

  7. resti November 14, 2011 at 11:01 am #

    mas saya sudah coba tapi muncul eroor ini: mohon bantuannya
    Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified, SQL state IM002 in SQLConnect in C:\wamp\www\ora\conn.php on line 3
    Koneksi ke database error
    Warning: odbc_exec(): supplied argument is not a valid ODBC-Link resource in C:\wamp\www\ora\conn.php on line 15
    SQL Error
    trimakasih

    • kautsarsophan November 17, 2011 at 8:29 pm #

      ok

  8. resti November 14, 2011 at 11:11 am #

    sudah bisa mas, ODBC nya blm saya oke,trimakasih tutorialnya

    • lia May 21, 2012 at 8:55 pm #

      punya proseslogin.php nya gak??

      • kautsarsophan June 24, 2012 at 6:29 pm #

        maksud nya login apa ? login aplikasi ?

  9. egi januar July 29, 2012 at 1:28 pm #

    mas, mau tanya nih, pas mau medefinisikan DSN di list driver yang bisa di tambah kan, oracle xe saya gk muncul, apa harus dowload lagi driver ODBCnya terpisah? trimakasih🙂

    • kautsarsophan August 29, 2012 at 6:40 pm #

      mestinya ketika install oracle XE, maka driver ODBC untuk oracle XE akan otomatis terinstall. Jika belum terinstal, berarti harus install secara terpisah. bisa googling dengan keyword oracle odbc driver

  10. Kusma October 25, 2012 at 10:21 pm #

    saya udah download odbc oraclenya, langkah selanjutnya gimna untuk cara instalnya. terima kasih🙂

    • kautsarsophan January 13, 2013 at 10:08 am #

      bentuk file nya apa ? kalau msi atau exe ya langsung di install saja.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: