Selasa, Juni 29, 2010

Tutorial: PHP dan PostgreSQL

Pada tutorial sebelumnya telah dibuat user dan database 'foo' di PostgreSQL, langkah berikut yaitu membuat tabel 'orang' yang berisi identitas seperti id, nama, tempat lahir dan tanggal lahir.


Login ke database foo:

$ psql foo
Welcome to psql 8.3.10, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit

foo=#


Buat tabel orang:

foo=# create table orang (
foo(# id varchar(10),
foo(# nama varchar(30),
foo(# tplahir varchar(30),
foo(# tglahir date,
foo(# primary key(id));
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "orang_pkey" for table "orang"
CREATE TABLE
foo=#


Cek deskripsi tabel:

foo=# \d orang
Table "public.orang"
Column | Type | Modifiers
---------+-----------------------+-----------
id | character varying(10) | not null
nama | character varying(30) |
tplahir | character varying(30) |
tglahir | date |
Indexes:
"orang_pkey" PRIMARY KEY, btree (id)

foo=#


Isikan tabel orang dengan beberapa data:

foo=# insert into orang values ('1001', 'Sukimo bin Sukijo', 'Bandung', '1990-10-11') , ('1002', 'Budi', 'Lamongan', '1991-02-24'), ('1003', 'Pepi', 'Jakarta', '1992-03-09');
INSERT 0 3


Nah, terlihat 3 record sudah berhasil ditambahkan, coba lihat isi tabelnya:

foo=# select * from orang;
id | nama | tplahir | tglahir
------+-------------------+----------+------------
1001 | Sukimo bin Sukijo | Bandung | 1990-10-11
1002 | Budi | Lamongan | 1991-02-24
1003 | Pepi | Jakarta | 1992-03-09
(3 rows)


Sampai di sini pembuatan database dan satu tabel selesai. Berikutnya adalah membuat kode PHP untuk dihubungkan ke database 'foo' di PostgreSQL dan memanggil tabel 'orang' yang sudah dibuat sebelumnya. Untuk membuat kode PHP biasanya membutuhkan tools atau perangkat lunak yang khusus dibuat untuk menulis kode-kode PHP, biasanya cukup menggunakan teks editor sepeti notepad di Windows, atau cukup menggunakan nano atau vim di Unix/Linux. Akan tetapi, karena banyaknya kode yang hendak ditulis, programmer membutuhkan tools yang tidak hanya sekedar menulis saja, tetapi tools tersebut bisa menyimpan variabel-variabel yang telah ditulis dan memanggilnya kembali secara mudah, mengoreksi kesalahan penulisan kode program (debug), menggunakan library, framework, hingga mengeksekusinya dengan cepat dan bisa ditampilkan di browser. Untuk itu dibutuhkan IDE atau Integrated Development Environment yang khusus untuk PHP, biasa disebut PHP IDE. Nah, salah dua contoh yang termasuk PHP IDE ini adalah Netbeans dan Eclipse, lebih lengkap tentang PHP IDE bisa dilihat di Wikipedia.

Cara penggunaan IDE tidak dibahas di sini, tapi cukup kode PHP dasarnya saja, mari dimulai. Buka editor teks atau PHP IDE, lalu buat kode PHP berikut:


**********************************

>?
// koneksi database;
$foo_host = 'localhost';
$foo_user = 'foo';
$foo_pasword = 'rahasia'; // password sesuaikan
$foo_database = 'foo';

// buat variabel koneksi ;
$konek_foo = pg_connect("host=$foo_host dbname=$foo_database user=$foo_user password=$foo_pasword") or die ('Gagal konek foo : ' .pg_errormessage());

// buat SQL
$sql_db = "SELECT * FROM orang";
// eksekusi SQL dengan query;
$query_db = pg_query($sql_db) or die ('Gagal query : ' .pg_errormessage());
// catat record tabel;
$rows = pg_num_rows($query_db);
// buat list berdasarkan jumlah record;
$no = 1;
for ($i=0; $i<$rows; $i++) { 

$row = pg_fetch_row($query_db, $i); 
echo $no++ . " - "; 
echo $row[0]. " - "; 
echo $row[1]. " - "; 
echo $row[2]. " - "; 
echo $row[3]. ".";

}

// tutup koneksi bila sudah tidak digunakan;
pg_close($konek_foo);

?>

***********************************


Simpan dengan nama tbfoo.php, panggil di browser, setidaknya hasilnya seperti ini:



Sampai di sini dulu.

1 komentar: