Konfigurasi MySQLi pada Codeigniter

codeigniter_logo transition-mysql-mysqli-300x174

Pada PHP 4.0 telah dikeluarkan ekstensi MySQLi untuk mengakses fungsionalnya. oleh karena itu orang yang berkecimpung di dunia web untuk segera melakukan perubahan dari menggunakan ekstensi MySQL menjadi menggunakan MySQLi atau PDO. Selanjutnya pada rilis PHP 5.5 ekstensi MySQL resmi dibuang atau berstatus deprecated.

Disini akan dijelaskan bagaimana cara migrasi ke ekstensi MySQLi pada framework COdeigniter. Langkah-langkahnya tidak telalu banyak,

  1. Buka “application/config/database.php” kemudian ubah nilai $db[‘default’][‘dbdriver’] dari mysql menjadi mysqli.
    $db['default']['dbdriver'] = 'mysqli';
  2. Buka system/database/drivers/mysqli/mysqli_driver.php, ubah method _execute() menjadi seperti di bawah ini
    function _execute($sql) {
    // Free result from previous query
        @mysqli_free_result($this->result_id);
    
        $sql = $this->_prep_query($sql);
    
    // get a result code of query (), can be used for test is the query ok
        $retval = @mysqli_multi_query($this->conn_id, $sql);
    
    // get a first resultset
        $firstResult = @mysqli_store_result($this->conn_id);
    
    // free other resultsets
        while (@mysqli_next_result($this->conn_id)) {
            $result = @mysqli_store_result($this->conn_id);
            @mysqli_free_result($result);
        }
    
    // test is the error occur or not 
        if (!$firstResult && !@mysqli_errno($this->conn_id)) {
            return true;
        }
        return $firstResult;
    }
  3. Panggil store procedure yang sudah dibuat dengan
    public function model_method($params) {
        $sql = "CALL name_of_sp(?)";
        return $this->db->query($sql, $params);
    }

Sumber: http://babibu.eamca.com/codeigniter-konfigurasi-driver-mysqli/

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s