Beranda Blog & Website Contoh Penulisan Koneksi Database Mysqli dengan PHP Class

Contoh Penulisan Koneksi Database Mysqli dengan PHP Class

161
0
BERBAGI

Selamat malam sobat darsitek, kembali lagi di artikel kali ini yakni kita akan membuat sebuah contoh penulisan koneksi database mysqli dengan php class yang kiranya dapat berguna untuk kamu yang akan membangun website dengan database mysql tentunya.

Apa itu MySql?

Sebelumnya melanjutkan, kita harus tau dulu apa itu mysql. MenurutĀ wikipediaĀ mysql merupakan sebuah perangkat lunak dengan manajemen basis data multi user dan multithreat. Sedangkan mysqli itu merupakan pengembangan dari Mysql, cuma di tambah i akhir kata yang merupakan singkatan dariĀ improvedĀ yang artinya ditingkatkan. Jadi MySqli sebenarnya masih menggunakan bahasa program yang sama dan model yang sama misal sama-sama menggunakan phpmyadmin. Tetapi ada beberapa fungsi bahasanya yang dihilangkan atau diganti dengan bahasa yang baru.

Nah yang akan kita buat kali ini adalah contoh koneksi php mysql menggunakan class di php seperti contoh pada gambar berikut ini.

class database

Pada gambar di atas adalah contoh file class database yang merupakan class php untuk membuat koneksi ke server database mysql kita.

Dalam membuat koneksi Mysqli sebenarnya cukup mudah, jika dalam Mysql Extension kita menghubungkan PHP ke database mysql dengan fungsiĀ mysql_connect(), maka di mysqli kita mengkonekannya dengan lebih baik lagi yaitu dengan menggunakan Class di PHP yaituĀ new mysqli([string host],[srting username],[srting passwd],[string dbname],[int port],[string socket]).

Untuk kode koneksi Mysqli adalah berikut:

function connect()
    {
        $this->db = new mysqli($this->db_host,$this->db_user,$this->db_pass,$this->db_name);  
        if ($this->db->connect_error)
        {
            die('Database Error : <b>'.$this->db->connect_error.'</b>');
        }
        else
        {
            return $this->db; 
        }     
    }

Sekarang simpan file kalian di atas dengan namaĀ database.class.phpĀ atau terserah anda dan simpan pada folderĀ /libĀ di server kalian. Kemudian pada folderĀ /includeĀ kita buat lagi file config untuk menyimpan data server mysql seperti nama server, nama database, dan lainnya. Berikut kode pada file config:

<?php if(!defined('core')){exit('No Dice!');} define('DB_HOST','severdatabase.com'); define('DB_USER','user_databse'); define('DB_PASS','katasandi'); define('DB_NAME','nama_database'); define('DB_PORT','3306'); ?>

Jadi kode ini berguna ketika kita ingin pindah hosting, kita hanya mengganti bagian ini saja untuk settingan server, atau bisa juga mengisi settingan lainnya untuk website pada satu file, seperti attribut web untuk nama domain, judul, slogan, kata kunci, dan lain-lain.

Loading...

Langkah selanjutnya adalah menggunakan atau memanggil file koneksi database tadi pada semua php class di situs kita. Contohnya kita membuat satu file class utama untuk website dengan namaĀ core.class.phpĀ pada folderĀ /libĀ tadi. Berikut contoh kodenya:

<?php if(!defined('core')){exit('No Dice!');} class Core extends Database { protected $link; public $error = ''; public $success = ''; function __construct() { $this->link = parent::connect();
    }
    public function search($key){
        $query = $this->link->query("SELECT*FROM site_posts WHERE title LIKE '%$key%' OR description LIKE '%$key%'");
        return $query;
    }
}
?>

Pada kode di atas, kita menggunakan classĀ DatabaseĀ di classĀ CoreĀ dengan menggunakanĀ extends.Ā Jadi kita bisa menggunakan fungsiĀ parentĀ di setiap fungsi dalam class core untuk memanggil fungsi yang ada di class database seperti contoh pada fungsi _construct yang memanggil fungsi connect denganĀ parent::connect().

Ini baiknya menggunakan class di php, untuk setiap koneksi misalnya kita hanya menggunakan fungsi _construct() saja untuk mengeksekusi koneksi karena fungsi construct akan selalu berjalan ketika classnya di gunakan.

Berikut ini adalah contoh dalam menggunakan class core yang telah kita buat pada file index website kita.

<?php ob_start(); define('core', true); define('DS', DIRECTORY_SEPARATOR); define('DIR', dirname(__FILE__) . DS); include_once DIR.'include'.DS.'config.php'; include_once DIR.'lib'.DS.'database.class.php'; include_once DIR.'lib'.DS.'core.class.php'; $Core = new Core(); // Membuat variabel baru untuk class Core // Memanggil fungsi search dalam class Core if(isset($_GET['key'])) { $search = $Core->search($_GET['key']);
    if($search->num_rows > 0)
    {
        while($result = $search->fetch_array())
        {
            echo $result['title'];
        }
    }
}
?>

Kurang lebih seperti itulah contohnya, kita bisa menggunakan query database mysql dalam Class PHP dan mengeksekusinya dari luar class.

Demikian artikel singkat mengenai sedikit penjelasan contoh penggunaan class untuk koneksi database mysqli, apabila ada kekurangan atau materinya kurang dipahami, silahkan tanyakan melalui kolom komentar di bawah.

Sekian artikel kali ini dan jika dirasa bermanfaat jangan lupa untuk di share ke yang lain demi kemajuan website ini, terimakasih.

LEAVE A REPLY

Please enter your comment!
Please enter your name here