Membuat CRUD class dengan Mysqli di PHP Part 2

Pada tulisan sebelumnya saya menulis Membuat CRUD class dengan Mysqli di PHP. Silahkan klik tautan tersebut untuk melihat code class yang akan saya bahas cara penggunaannya di sini.

Pada class CRUD yang telah saya buat memiliki nama class db. Class db merupakan class turunan dari class mysqli yang tersedia pada extensi php. Kenapa diturukan dari class mysqli? karena class db akan menggunakan constructor dan  fungsi-fungsi yang tersedia pada class mysqli. class db diturunkan dengan menggunakan extends. Cara membuat class turunan adalah sebagai berikut.

class db extends mysqli {
}

Tentunya nama class bisa disesuaikan dengan nama yang anda inginkan. Pada class db terdapat beberpa object ataupun variable. Object yang pada class db merupakan object untuk koneksi ke server database. codenya sebagai berikut. Ditulis pada line setelah nama class.

private $host  = HOST;
private $user = DB_USER;
private $pass = DB_PASS;
private $db = DB_NAME;

Konstanta HOST, DB_USER, DB_PASS, dan DB_NAME merupakan konstanta yang saya definisikan sebelumnya pada konfigurasi database, hal ini saya lakukan agar memudahkan jika konfigurasi database berubah, terutama ketika terjadi perpindahan hosting. code untuk memdifinisikan konstanta tersebut adalah sebagai berikut.

define('HOST', 'localhost');
define('DB_NAME','database');
define('DB_USER', 'root');
define('DB_PASS', 'password');

Nilai kontanta bisa dirubah tergantung konfigurasi server data base yang anda gunakan. Code untuk mendefinisikan konstanta diletakan di luar class db bisa satu file atau membuat file khusus untuk konfigurasi seperti config.php. Selain dengan mendifisikan terlebih dahulu konfigurasi server database, anda juga bisa langsung mengisinya pada object di class db seperti berikut.

private $host  = 'localhost';
private $user = 'root';
private $pass = 'password';
private $db = 'database';

Setelah object ada constructor. Constructor adalah fungsi yang dijalankan secara langsung oleh class ketika class dipanggil. Constustor dari class db berisi code untuk koneksi ke data base.

public function __construct() {
        parent::__construct($this->host,  $this->user,  $this->pass,  $this->db);
        if (mysqli_connect_error()) {
            die('Connect Error (' . mysqli_connect_errno() . ') '
                    . mysqli_connect_error());
        }
    }

Selanjutnya adalah fungsi pada class db. Class ini berisi fungsi-fungsi utama untuk eksekusi data base yaitu Insert, Update, Delete, dan Select. Fungsi-fungsi tersebut akan saya bahas pada tulisan berikutnya....

Tidak ada komentar:

Posting Komentar