Archive | December, 2009

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:

Advertisements

kuliah Final Basdat 1 0910

17 Dec

Kuliah akhir Basis Data I 0809

Rabu 23 des’09 Jam 10:00

Materi : Perintah SQL

materi perintah SQL

13 Dec

SQL-1

SQL-2

SQL-3

Jika ada yang ditanyakan, silahkan bertanya via email.

Basis Data1 3/10 des’09

10 Dec

Studi Kasus PDM  1

Sebuah perusahaan kontraktor nasional ingin membuat system database untuk transaksi keuangan mereka. Kontraktor membagi wilayah kerja mereka menjadi 3 divisi, yaitu divisi 1 untuk wilayah Indonesia timur, divisi 2 untuk wilayah Indonesia tengah, dan divisi 3 untuk wilayah Indonesia barat. Setiap divisi terbagi dalam beberapa cabang wilayah kerja, di divisi 1 ada 2 cabang, di divisi 2 ada 2 cabang, dan di divisi 3 ada 3 cabang. Setiap cabang membawahi beberapa proyek pengerjaan. Setiap proyek mencatatkan nilai proyek yang dikerjakan, dan secara periodik mencatatkan progress yang dilakukan, dan mencatatkan nilai pembayaran yang dilakukan oleh pemiliki proyek (pemilik proyek adalah klien). Misalnya proyek RSUD Dr Sutomo, pemilik proyeknya adalah dinas kesehatan, proyek secara rutin melakukan entri data progress kegiatan proyek dan data pembayarannya.  Berdasarkan dana yang masuk, secara rutin cabang memberikan alokasi budget pengeluaran ke proyek-proyek, berdasarkan budget yang diberikan, proyek mengajukan anggaran untuk pengeluaran kegiatan proyek. Pengajuan anggaran ini dibuat berdasarkan kuitansi tagihan, pengajuan anggaran minimal memiliki atribut tgl kuitansi, keterangan, nilai kuitansi, penagih/vendor.

Tugas yang dikumpulkan

  1. Asumsi dari deskripsi diatas
  2. Desain PDM disertai penjelasan
  3. Buat databasenya dalam oracle, isikan data untuk semua table, untuk tabel transaksi minimal ada 100 transaksi
  4. Aplikasi berbasis web minimal untuk 5 transaksi/form yang ada
  5. Desain Perintah SQL untuk
    1. Menampilkan data pengeluaran proyek per bulan
    2. Menampilkan data budget yang diberikan cabang ke proyek per bulan
    3. Menampilkan data hutang per vendor/penagih.

Studi Kasus PDM (physical Design Model)  2

Fakultas Teknik Universitas Trunojoyo akan mengembangkan sistem kuisioner untuk mahasiswa. Kuisioner diberikan pada akhir semester untuk tiap kelas matakuliah. Setiap kuisioner terdiri dari beberapa pertanyaan, dengan pilihan jawaban yang berbeda-beda. Sistem mencatat setiap jawaban kuisioner tiap mahasiswa untuk tiap kelas yang diikuti oleh mahasiswa tersebut pada semester bersangkutan. Setiap kelas matakuliah dicatat nama dosen pengajarnya.

Tugas yang dikumpulkan

  1. Asumsi dari deskripsi diatas
  2. Desain PDM disertai penjelasan
  3. Buat databasenya dalam oracle, isikan data untuk semua table, untuk tabel transaksi minimal ada 100 transaksi
  4. Aplikasi berbasis web minimal untuk 5 transaksi/form yang ada
  5. Desain Perintah SQL untuk
    1. Menampilkan data mahasiswa yang telah mengisi kuisioner untuk semester tertentu, ditampilkan secara keseluruhan dan per kelas
    2. Menampilkan jumlah data jawaban mahasiswa per no pertanyaan kuisioner
    3. Menampilkan data seluruh kelas yang ada.

tugas di kerjakan berkelompok, maksimal 4 orang.

dipresentasikan pada hari kamis, 17 desember 2009