Minggu, 08 September 2013

Cara Koneksi PHP ke Microsoft (MS) Access

bagaimana cara melakukan koneksi dari PHP ke MS. Access. Wah… ngapain sih kok masih pada pake DBMS berlisensi itu? bukankah mahal tuh… bukannya sudah ada DBMS yang handal namun free, seperti halnya MySQL. Tapi gak papa sih kalo mampu beli he.. 3x :-)
Bagi yang mau tahu cara melakukan koneksi dari PHP ke MS. Access, simak baik-baik artikel ini ya.

Oya.. perlu diketahui bahwa untuk menjembatani koneksi antara PHP dan MS. Access, kita nantinya akan menggunakan ODBC.
Sebagai contohnya, misalkan kita buat database di MS. Access tentang data mahasiswa. Saya disini membuat sebuah tabel yang saya berinama ‘mhs’ dan didalamnya terdapat 2 field saja, misal ‘nim’ dan ‘namamhs’, dengan ‘nim’ sebagai primary key-nya. Selain itu, Anda juga bisa tambahkan beberapa record di dalam tabel tersebut sebagai sampel saja.
Nah.. setelah itu simpan file accessnya, misalkan saya simpan dengan nama ‘mhs.mdb’ atau ‘mhs.accdb’ jika Anda menggunakan MS. Office 2007.
Setelah dibuat file databasenya, selanjutnya kita buat ‘Datasource Name’ di dalam ODBC. Datasource name ini nanti kita arahkan ke file database access yang telah kita buat tadi. Bagaimana cara membuat ‘datasource name’ ini? Ini dia langkah-langkahnya:
  1. Klik START > Control Panel > Administrative Tool > Datasources (ODBC)
  2. Klik tab menu System DSN
  3. Klik ADD
  4. Pilih nama driver yang sesuai, dalam hal ini dipilih Microsoft Access Driver (*.mdb) atau Microsoft Access Driver (*.mdb, *.accdb) bila file MS. Access Anda menggunakan MS Office 2007. Photobucket
  5. Isi Data Source Name dengan sebarang nama, misalkan ‘mahasiswa’. Untuk bagian Description boleh diisi, boleh tidak Photobucket
  6. Selanjutnya pilih file MS. Access yang telah dibuat sebelumnya, dengan mengklik tombol SELECT Photobucket
  7. Klik OK
Nah… Kita baru saja membuat sebuah data source bernama ‘mahasiswa’ dalam ODBC yang diarahkan ke file MS. Access yang telah dibuat.
Berikutnya, kita sudah bisa membuat script PHP untuk koneksi ke data source ‘mahasiswa’ tersebut melalui ODBC.
Perintah PHP untuk melakukan koneksi ke data source tertentu melalui ODBC adalah:

1.odbc_connect("nama data source", "user name", "password");
Parameter ‘username’ dan ‘password’ di atas merupakan username dan password dalam mengakses file MS. Access nya. Seandainya file MS. Access nya tidak dikasih username dan password, maka ditulis string kosong saja. Contoh:

1.odbc_connect("mahasiswa", "", "");
Trus… bagaimana bila Anda ingin memberi password pada file MS. Accessnya? Caranya adalah klik OPEN pada MS. ACCESS, lalu pilih file MS. ACCESS yang ingin Anda beri password, dan bukalah melalui mode ‘OPEN EXCLUSIVE’ (lihat gambar di bawah).
Photobucket
Langkah terakhir pilih menu DATABASE TOOL > SET DATABASE PASSWORD. Nah.. password inilah yang nanti dituliskan dalam parameter odbc_connect() tersebut.
OK… koneksi dah beres, trus… bagaimana cara menjalankan query SQL melalui script PHP? Ini dia perintahnya

1.odbc_exec(koneksiHandler, query sql);
Parameter ‘koneksiHandler’ merupakan handling koneksi yang berasal dari odbc_connect().
Di bawah ini saya berikan contoh script PHP untuk menampilkan semua data yang ada dalam tabel ‘mhs’ yang tersimpan dalam database ‘mhs.mdb’ yang telah dibuat sebelumnya (dengan asumsi saya telah membuat data source bernama ‘mahasiswa’ pada ODBC)

01.<?php
02. 
03.$koneksi = odbc_connect("mahasiswa", "" , "");
04.$hasil = odbc_exec($koneksi, "SELECT * FROM mhs");
05.while ($data = odbc_fetch_array($hasil))
06.{
07.echo $data['nim']." ".$data['namamhs']."<br>";
08.}
09. 
10.?>
Keterangan:
Anda juga bisa menggunakan perintah odbc_fetch_row() dalam membaca record hasil query.
Mudah bukan? Tapi saya sarankan, sebaiknya gunakan MySQL deh… Selamat mencoba..
Oya… di dalam MS. Access, kita bisa membuat Referential Integrity seperti halnya di MySQL. Namun belum dicoba apakah jika kita berlakukan hal ini di MS. Access, maka ada pengaruh ketika menjalankan query updating, inserting dan deleting via script PHP. Tapi mestinya ada pengaruhnya. Silakan dicoba sendiri ya..

Tidak ada komentar :

Posting Komentar