Fix Error Illegal String Offset 'Server' Postgre_Driver Codeigniter 2
Pembahasan yang sudah berlalu, alasannya yakni pada kenyataannya, mungkin hanya beberapa saja yang masih memakai codeigniter dibawah versi 3. Tapi itu bukan masalah, pada dasarnya disini aku hanya ingin berbagi, problem sudah berlalu atau tidak urusan belakangan.
Kasus yang akan aku bahas kali ini mengenai postgre driver di codeigniter 2, dimana di versi ini terdapat bug kecil ketika kau ingin mengambil last id insert. Jelasnya itu terletak di :
$this->db->insert_id();
Pada dikala error terjadi, aku memakai :
- Codeigniter 2.2
- PHP 5.6
- Postgre 9.4
Tahap awal, buka file postgre_driver.php yang ada di MY_CI/system/database/drivers/postgre.
Jika file sudah dibuka, ada dua cara untuk memperbaiki error ini,
Pertama
Lihat pada baris 331 pada file postgre_driver.php, kemudian komen sintak ini
$v = $this->_version(); $v = $v['server'];
Dan sematkan sintak ini sempurna di bawah sintak yang barusan di komen
$v = pg_version($this->conn_id); $v = isset($v['server']) ? $v['server'] : 0;
Lengkapnya akan tampak ibarat ini
/*$v = $this->_version(); $v = $v['server'];*/ $v = pg_version($this->conn_id); $v = isset($v['server']) ? $v['server'] : 0;
Kedua
Masih di file postgre_driver.php, cari fungsi dengan nama _version(), jikalau kau memakai sublime cukup tekan CTRL+R kemudian ketikan _version.
Selanjutnya, replace fungsi _version() dengan sintak dibawah ini
function _version() { return @pg_version($this->conn_id); // return "SELECT version() AS ver"; }
Sekarang coba jalankan ulang kegiatan codeigniter kamu, dan bye bye error :)
Mungkin cukup hingga disini pembahasan kali ini, agar bermanfaat yah.
Tschuss...!
Sumber http://www.kang-cahya.com
0 Response to "Fix Error Illegal String Offset 'Server' Postgre_Driver Codeigniter 2"
Posting Komentar