Read Detail

DATABASE CLASS

DATABASE CLASS dapat dilihat pada file kick/db/Database.php. Database Class merupakan PARENT CLASS untuk setiap MODEL yang dibuat. Database Class merupakan penjabaran lebih detail dari ADODB CLASS atau OVERRIDE FUNCTIONS dari ADODB FUNCTIONS. Penggunaan Database Class sebagai PARENT CLASS pada MODELS, dapat dilihat menu MODELS. DATABASE CLASS terdiri dari fungsi-fungsi sebagai berikut :

1. fetch

Fungsi untuk mendapatkan data, dengan mengembalikan data berserta nama FIELDS.

public function fetch($where="",$order="",$limit=array()){			
    if($this->table){
        if($where){
            $where = " WHERE " . $where;
        }
        if($order){
            $order = " ORDER BY " . $order;
        }
        if(is_array($limit) && count($limit) && array_key_exists("offset",$limit) && array_key_exists("limit",$limit)){
            $limit = " LIMIT " . $limit['offset'] . "," . $limit['limit'];
        }else{
            $limit = "";
        }
        $query = "SELECT * FROM " . $this->table . $where . $order . $limit;
        $_data = $this->_db->fetch($query);
        return $_data;
    }else{
        die("Table not found");
    }
}

Cara memanggil pada CONTROLLER, dengan MODEL tables.php, untuk lebih jelas tentang penggunaan MODEL, silakan akses menu MODELS.

$this->loadModel("tables");
$this->tables->set('users', 'user_uid');
$where = 'name LIKE "%a%"';
$order = 'chdate DESC';
$limit = array('offset'=>0, 'limit'=>5);
$users = $this->tables->fetch($where, $order, $limit);


2. query

Fungsi untuk mendapatkan data, dengan mengembalikan data berupa objek dari RECORDSET.

public function query($query){
    $_data = $this->_db->fetch($query);
    return $_data;
}

Cara memanggil pada CONTROLLER.

$this->loadModel("tables");
$this->tables->set('users', 'user_uid');

$query = 'SELECT * FROM users';

$recordset = $this->
tables->query($query);


3. insert

Fungsi untuk melakukan INSERT DATA ke dalam tabel di database.

public function insert($data){
    if($this->table){
        $result = $this->_db->insert($this->table,$data);
            return $result;
    }else{
        die("Table not found");
    }
}

Cara memanggil pada CONTROLLER.

$this->loadModel("tables");
$this->tables->set('users', 'user_uid');

$data =
array('name'=>'Ramayana');
$result = $this->
tables->insert($data);

Variable $data merupakan array dengan memuat nama FIELD beserta nilainya (VALUE).

4. update

Fungsi untuk melakukan UPDATE DATA BERDASARKAN PRIMARY KEY ke dalam tabel di database.

public function update($data, $uid){
    if($this->table && $this->primary){
        $result = $this->_db->update($this->table, $data, $this->primary . "=" . $uid);
        return $result;
    }else{
        die("Table & primary field not found");
    }
}

Cara memanggil pada file CONTROLLER.

$this->loadModel("tables");
$this->tables->set('users', 'user_uid');

$data =
array('name'=>'Ramayana');
$uid = 1;
$result = $this->
tables->update($data, $uid);

Variable $data merupakan array dengan memuat nama FIELD beserta nilainya (VALUE) dan UPDATE DATA berdasarkan PRIMARY KEY pada tabel tersebut.


5. delete

Fungsi untuk MENGHAPUS DATA BERDASARKAN PRIMARY KEY dalam tabel di database.

public function delete($uid){
    if($this->table && $this->primary){
        $result = $this->_db->delete($this->table, $this->primary . "=" . $uid);
        return $result;
    }else{
        die("Table & primary field not found");
    }
}

Cara memanggil pada CONTROLLER.

$this->loadModel("tables");
$this->tables->set('users', 'user_uid');

$uid = 1;

$result = $this->
tables->delete($uid);


6. lastInsertID

Fungsi untuk mendapatkan ID TERAKHIR PADA SAAT INSERT DATA dalam tabel di database.

public function lastInsertID(){
    return $this->_db->lastInsertID();
}

Cara memanggil pada CONTROLLER.

$this->loadModel("tables");
$this->tables->set('users', 'user_uid');

$data =
array('name'=>'Ramayana');
$result = $this->
tables->insert($data);

if($result){
    $lastID = $this->tables->lastInsertID();
}


7. updateBy

Fungsi untuk melakukan UPDATE DATA BERDASARKAN KONDISI TERTENTU SEBUAH FIELD ke dalam tabel di database.

public function updateBy($data, $where){			
if($this->table && $this->primary){
    $result = $this->_db->update($this->table, $data, $where);
        return $result;
    }else{
        die("Table & primary field not found");
    }
}

Cara memanggil pada file CONTROLLER.

$this->loadModel("tables");
$this->tables->set('users', 'user_uid');

$data =
array('name'=>'Ramayana');
$where = 'user_uid=1';
$result = $this->
tables->updateBy($data, $where);

Variable $data merupakan array dengan memuat nama FIELD beserta nilainya (VALUE). Variable $where berisi string query, yang menyatakan UPDATE DATA berdasarkan KONDISI tertentu.


8. deleteBy

Fungsi untuk MENGHAPUS DATA BERDASARKAN TERTENTU SEBUAH FIELD dalam tabel di database.

public function deleteBy($where){        	
    if($this->table && $this->primary){
        $result = $this->_db->delete($this->table, $where);
        return $result;
    }else{
        die("Table & primary field not found");
    }
}

Cara memanggil pada CONTROLLER.

$this->loadModel("tables");
$this->tables->set('users', 'user_uid');

$where = 'user_uid = 1';
$result = $this->
tables->delete($where);