Aruto~J@p@nEZz~s9

Just another WordPress.com weblog

« Memilih Apple Macintosh OSX
Kumpulan Software Gratis »

Koneksi PHP 5, Zend Core dan Oracle 10g XE
7 Mei, 2007
ZEND CORE for ORACLE
Komunikasi ke database Oracle dari PHP dapat dilakukan dengan beberapa cara seperti dengan Oracle Install Client
atau dengan Zend Core for Oracle. Saat ini saya hanya akan menjelaskan pengalaman saya mengenai koneksi ke Database Oracle melalui Zend Core yang akan dijelaskan dibawah.
Zend Core for Oracle adalah Engine PHP yang dibuat untuk koneksi antara PHP dan Oracle seperti versi Oracle 8i, 9i dan 10g. Sewaktu tulisan ini dibuat versinya sudah mencapai 1.5. Zend Core for Oracle dibundle dengan Apache 2 dan PHP 5 yang didesain untuk mencapai kinerja yang maksimal, dioptimisasi untuk Oracle 10g XE, aman, cepat, dan berita gembiranya adalah aplikasi ini free / gratis !
Setelah instalasi dilakukan, karena Zend Core sebelumnya telah terpasang ternyata Apache Zend Core 2.01 bentrok dengan Zend Core for Oracle 1.5 sehingga Apache-nya tidak dapat dijalankan ! versi Apachenya pun berbeda, pada Zend Core 2.01 adalah versi 2.2.2 sedangkan Apache di Zend Core for Oracle adalah versi 2.0.59.
Setelah menguninstall Zend Core 2.01 dan menginstall Zend Core for Oracle dari awal, baru Apachenya dapat berjalan dengan normal.
Pada instalasi Zend Core for Oracle, secara standar ekstension koneksi untuk oracle (oci8-Oracle) sudah aktif tetapi ekstension MySQL dan mbstring tidak aktif, jika anda ingin menggunakan koneksi database ke MySQL juga dan biasa menggunakan PhpMyAdmin sebagai aplikasi untuk mengatur database mysql, anda harus mengaktifkannya terlebih dahulu dengan masuk ke Web UI Zend Core dengan alamat http://localhost/ZendCore/ lalu masukkan password yang telah anda masukkan sebelumnya sewaktu instalasi. Lalu masuk ke bagian CONFIGURATION > EXTENSIONS dan click pada tombol switch disebelah icon Lampu mysql – MySQL dan mbstring – Multibyte Character Processing dan simpanlah konfigurasi tersebut. Langkah berikutnya merestart ulang Apache dengan masuk ke Services di CONTROL PANEL > ADMINISTRATIVE TOOLS > SERVICES.
SETTING DI ORACLE 10g XE
Jika anda belum menginstall Oracle 10g XE, anda bisa menginstallnya dengan mengikuti langkah2nya di blog Install Cepat Oracle Database Express 10g pada Linux Fedora Core 5
Sebelum memulai, ada beberapa setting yang harus dipersiapkan didatabase XE agar testing koneksi ke Oracle ini dapat dilakukan. User yang akan digunakan adalah user yang sudah ada pada database XE, kita tinggal mengaktifkannya saja melalui Administrasi Database dengan login ke http://192.168.1.xxx:8080/apex (port dan server disesuaikan dengan setting anda) sebagai DBA lalu masuk ke bagian ADMINISTRATION > DATABASE USERS > MANAGE USERS.
Pilih user HR yang akan membawa anda kedalam mode rubah user. Isi passwordnya sesuai dengan yang anda inginkan, rubah status ACCOUNT STATUS dari Locked menjadi Unlocked dan tekan tombol ALTER USER untuk menyimpan hasil perubahannya. Setelah itu anda tinggal membuat script PHP yang akan berkomunikasi dengan Oracle.

SCRIPT PHP
Koneksi dari php ke Oracle menggunakan fungsi oci_connect dengan format :
oci_connect(”namauser”,”passworduser”, “//ip_database_oracle/XE”);
tulisan XE pada akhir tulisan menunjukan bahwa kita akan menghubungkan php dengan Oracle XE.
Contoh scriptnya dapat dilihat dibawah ini :
<?php
/*************************************/
/* Konek ke oracle dengan setting :
/* username : hr
/* password : hr
/* ip / nama server oracle : 192.168.1.122
/*************************************/
$conn = oci_connect(’hr’, ‘hr’, “//192.168.1.122/XE”);
if (!$conn) {
// menampilkan error ketika koneksi gagal
$e = oci_error();
echo htmlentities($e[’message’]);
die;
}
// query untuk mengambil data employees
//////////////////////////////////////////
$query = ‘SELECT * FROM employees’;
// mempersiapkan query
//////////////////////////////////////////
$sth = oci_parse($conn, $query);
if (!$sth) {
$e = oci_error($conn);
echo htmlentities($e[’message’]);
die;
}
// menjalankan query untuk mengambil data employees
//////////////////////////////////////////
$results = oci_execute($sth, OCI_DEFAULT);
if (!$results) {
$e = oci_error($sth);
echo htmlentities($e[’message’]);
die;
}
// menampilkan hasil query pada browser
//////////////////////////////////////////
echo ‘

’;
while ($row = oci_fetch_array($sth, OCI_RETURN_NULLS)) {
echo ‘

’;
foreach ($row as $item) {
echo ‘

’;
}
echo ‘

’;
}
echo ‘

’.($item?htmlentities($item):’ ‘).’

’;
// menutup koneksi database
//////////////////////////////////////////
oci_close($conn);
?>
Berikut ini tampilan yang merupakan hasil output dari script diatas (datanya sudah ada dalam tabel Oracle 10g XE)

Koneksi antara PHP dan Oracle melalui Zend Core merupakan langkah yang besar bagi komunitas PHP. Apalagi jembatan tersebut didukung penuh oleh Zend Technologies sebagai pengembang bahasa PHP. Tidak dapat disangkal lagi bahwa pada tahun-tahun mendatang, aplikasi enterprise berbasis web terutama pada sisi front-end akan didominasi juga oleh PHP sebagai bahasa pemrograman web yang populer !
Proses instalasi dan cerita diatas menggunakan software – software seperti :
1. Windows XP ServicePack 2
2. PHP Version 5.1.6
3. Oracle 10g XE
4. ZendCoreforOracle-v.1.5-Windows-x86
Referensi mengenai PHP dan Oracle di situs internet:
Oracle PHP Developer Guide
Zend Core for Oracle
DeployPHP Series, Part 5: Zend Core for Oracle Quick Start
ORACLE 10g XE + PHP
Instalasi Oracle Instant Client di Linux

Januari 28, 2008 Posted by | Tak Berkategori | Tinggalkan komentar

Halo dunia!

Welcome to WordPress.com. This is your first post. Edit or delete it and start blogging!

Januari 19, 2008 Posted by | Tak Berkategori | 1 Komentar