10 August 2005

Fungsi-fungsi "CRUSIAL" dalam Script PHP, untuk mengakses MySQL Database

[1]. Fungsi "mysql_connect" dan "mysql_pconnect"
-------------------------------------------

Digunakan untuk membuat hubungan (koneksi) ke Database MySQL yang terdapat pada suatu HOST.
Syntax-nya :
mysql_connect(host, nama_user, password)
Keterangan :
[x] host, menyatakan nama host (komputer) tempat MySQL berada.
[x] pemakai, nama pemakai (user) yang digunakan untuk melakukan
hubungan (koneksi) ke DBMySQL
[x] password, merupakan password milik pemakai (user)

Fungsi ini menghasilkan nilai balik berupa nilai BOOLEAN, yang menyatakan pengenal hubungan (koneksi) dan digunakan sebagai pengenal diberbagai "mysql_".
Jika benar maka nilainya adalah TRUE dan bila terjadi suatu kesalahan maka nilai balik akan berupa FALSE. (e.g) $id_mysql = mysql_connect("localhost", "zj", "badguy");
dimana, $id_mysql --> merupakan variabel yang diciptakan untuk "pengenal_hubungan".
Selain itu PHP juga mempunyai fungsi "mysql_pconnect" yang serupa dengan "mysql_connect". Fungsi ini digunakan untuk membentuk hubungan (koneksi) yang PERSISTEN, artinya "koneksi tidak akan ditutup, walaupun skrip sudah berakhir". Namun hal ini hanya berlaku pada PHP yang bertindak sebagai modul, misalnya pada Web Server Apache.

(e.g) $id_mysql = mysql_pconnect("localhost", "zj", "badguy");

[2]. Fungsi "mysql_close"
--------------------

Fungsi ini berguna untuk menutup hubungan (koneksi) ke database MySQL.
Syntax-nya :
mysql_close(pengenal_hubungan)

Dalam hal ini "pengenal_hubungan" menyatakan pengenal yang diperoleh dari pemanggilan fungsi "mysql_connect" diatas.

(e.g) mysql_close($id_mysql)

Ketika skrip PHP berakhir, koneksi ke Database MySQL yang dibentuk melalui mysql_connect bukan (mysql_pconnect) juga dengan sendirinya akan ditutup dengan fungsi "mysql_close".

[3]. Fungsi "mysql_select_db"
------------------------

Fungsi ini berguna untuk memilih Database, seperti mengunakan perintah USE pada aplikasi MySQL.
Syntax-nya :
mysql_select_db(database, pengenal_hubungan)

Dalam hal ini "pengenal_hubungan" (e.g) $id_mysql) diperoleh juga dari pemanggilan fungsi mysql_connect diatas. Dan argumen/parameter database adalah nama dari database yang dipilih atau yang akan digunakan pada skrip PHP.

(e.g) mysql_select_db("mydatabase", $id_mysql)

[4]. Fungsi "mysql_query"
--------------------

Fungsi ini digunakan untuk mengeksekusi permintaan record pada sebuah tabel atau sejumlah tabel.
Syntax-nya :
mysql_query(permintaan, pengenal_hubungan)

Argumen "permintaan" merupakan penyataan (syntax SQL) untuk mengakses tabel, dimana tabel-tabel dimaksud dan bisa diakses adalah tabel milik database yang disebutkan/dipanggil melalui fungsi "mysql_select_db" diatas.

[5]. Fungsi "mysql_db_query"
-----------------------

Fungsi ini berguna untuk menjalankan suatu permintaan terhadap suatu Database.
Syntax-nya :
mysql_db_query(database, permintaan, pengenal_hubungan)

Dalam hal ini pengenal hubungan adalah menyatakan pengenal hubungan yang diperoleh dari pemanggilan fungsi mysql_connect dan argumen database adalah nama database yang dipilih. Dan argumen permintaan adalah pernyataan (syntax SQL). Khusus untuk argumen ketiga adalah optional bisa ditulis bisa tidak, karena fungsi mysql_db_query selalu sesudah fungsi mysql_connect, argumen ketiga sudah diwakili didalam fungsi mysql_connect.

Fungsi ini memberikan nilai balik berupa suatu angka bulat yang menyatakan pengenal hasil, yang diperlukan pada pada berbagai fungsi berawalan "mysql_" lainnya. Hasilnya FALSE menyatakan bahwa terdapat sesuatu kesalahan.

(e.g) mysql_query_db("mydatabase", "SELECT * FROM mytabel", $id_mysql)

[6]. Fungsi "mysql_num_rows"
-----------------------

Fungsi ini berguna untuk memperoleh jumlah baris dari suatu hasil permintaan (query) yang menggunakan SELECT.
Syntax-nya :
mysql_num_rows(pengenal_hasil)

Dalam hal ini pengenal hasil menyatakan nilai yang diperoleh dari pemanggilan fungsi seperti "mysql_db_query" atau "mysql_query". Sebagai catatan, untuk permintaan yang menggunakan UPDATE, INSERT, atau DELETE menggunakan fungsi "mysql_affected_rows" untuk memperoleh jumlah baris yang terkena operasi-operasi tersebut.

[7]. Fungsi "mysql_affected_rows"
----------------------------

Fungsi ini berguna untuk memperoleh jumlah baris yang dikenai operasi INSERT, UPDATE, dan DELETE.
Syntax-nya :
mysql_affected_rows(pengenal_hubungan)

Dalam hal ini pengenal hubungan menyatakan nilai yang diperoleh dari pemanggilan fungsi "mysql_connect". Dimana argumen ini bersifat opsional. Pada permintaan yang mengandung DELETE tetapi tanpa klausa "WHERE", penghapusan akan dilakukan pada semua baris; namun fungsi "mysql_affected_rows" hanya akan memberikan nilai balik berupa nol 0.

[8]. Fungsi mysql_num_fiedls
-----------------------

Fungsi ini berguna untuk memperoleh jumlah kolom pada suatu hasil permintaan.
Syntax-nya :
mysql_num_fields(pengenal_hasil)

Dalam hal ini pengenal hasil menyatakan nilai yang diperoleh dari pemanggilan fungsi seperti "mysql_db_query" atau "mysql_query".
Skrip dibawah ini akan memberikan gambaran sedikit tentang penggunaan fungsi "mysql_select_db", "mysql_query", "mysql_num_fields", dan "mysql_num_rows".
<html>
<head><title></title></head>
<body>

<?php
/* inisialisasi koneksi */
$pemakai = "zj";
$password = "badguy";

/* membuka koneksi ke Database MySQL */
$id_mysql = mysql_connect("localhost", $pemakai, $password)
OR die("Can NOT Connect to MySQL");
/* Database dan Tabel yang dituju */
mysql_select_db("mydatabase, $id_mysql) OR die("Database NOT FOUND!");
$hasil = mysql_query("SELECT * FROM mytable", $id_mysql);

/* jika tabel tidak ditemukan*/
if (! $hasil)
die("Query Aborted");

/* mengambil jumlah kolom */
$jum_kolom = mysql_num_fields($hasil);
echo "Jumlah kolom : $jum_kolom
\n";
/* mengambil jumlah baris */
$jum_baris = mysql_num_rows($hasil);
echo "Jumlah baris : $jum_baris
\n";

/* menutup koneksi ke Database MySQL */
mysql_close($id_mysql);
>?

</body>
</html>

--
Last saved by Zj,
On 09 Agustus 2005 at 12:22:36


Referensi :
[x]. MySQL-Tutorial in My Slackie Linux Box /usr/share/doc
[x]. PHP and MySQL Web Development by Luke Welling & Laura Thompson

2 comments:

normadevi said...

thanks buat postingny ini,,bermanfaat sekali

Zainal Abidin said...

to normadevi : alhamdulillah bermanfaat juga, you very welcome

Mari Perbanyak Bersyukur

Damn! setelah sekian lama gak ketemu dan share dgn Paman di Jojoran semalem akhir-nya bisa terlaksana, masih dalam kehangatan lebaran. Dari ...