Cara Membuat Koneksi dengan Database MySQL bisa Dua atau Lebih Koneksi database/Multiple Connection dalam Satu Host maupun beda Host Menggunakan PHP – Part 3 – Hai ketemu lagi dengan saya dewan komputer dan pada kali ini saya akan membahas tentang cara membuat multiple koneksi dengan database MySQL pada bahasa pemrograman PHP. Untuk database bisa dua, tiga atau bisa juga lebih dan juga pastinya bisa di host yang sama seperti localhost atau bisa juga beda host seperti localhost dan host/server lain atau cpanel. Pada contoh dibawah ini saya menggunakan metode Object Oriented. Jika sobat belum mengetahui perbedaan Object Oriented dan Procedural maka sobat bisa mengunjungi pada postingan sebelumnya yaitu part 1 dengan klik link dibawah
Baca juga :
Cara Membuat Koneksi dengan Database MySQL menggunakan PHP – Part 1
Cara membuat Multiple Connection PHP
Tentunya jika sobat sudah melihat part 1, saya menggunakan extension mysqli karena mysql sudah deprecated. Berikut saya jelaskan step by step tentang cara membuat multiple koneksi dengan PHP :
1. Pertama yaitu membuat dua database, pada contoh pertama sudah membuat database db_dewankomputer dengan tabel tbl_mahasiswa, kemudian sobat bisa buat database lagi dengan nama yang berbeda dan pada contoh daya beri nama db_dewankampus. Sobat bisa menggunakan tools bantu seperti navicat, heidi SQL atau lainnya atau bisa juga membuatnya dengan mengakses url localhost/phpmyadmin -> klik tab Database dan tuliskan db_dewankampus-> Klik tombol Create/Buat.
2. Buat tabel untuk mengetes nantinya apakah benar-benar terkoneksi atau belum dengan mengetikkan query dibawah ini pada tab SQL lalu klik tombol Kirim/Go
CREATE TABLE `tbl_matkul` ( `id` int(11) NOT NULL, `kode_matkul` varchar(255) NOT NULL, `nama_matkul` text NOT NULL, `sks` int(2) NOT NULL, `semester` int(2) NOT NULL )
3. Isikan data pada tbl_matkul dengan mengetikkan query dibawah ini
INSERT INTO `tbl_matkul` (`id`, `kode_matkul`, `nama_matkul`, `sks`, `semester`) VALUES (1, 'PW', 'Pemrograman Web', 2, 2), (2, 'PTI', 'Pengenalan Teknologi Informasi', 3, 3), (3, 'BING', 'Bahasa Inggris', 2, 2), (4, 'PRD', 'Pengantar Rekayasa & Desain', 1, 4), (5, 'PAR', 'Pengantar Analisis Rangkaian', 3, 3);
4. Kemudian jika sobat sudah membuat tabel dan mengisinya, selanjutnya sobat buat folder di C:/xampp/htdocs/ dan beri nama multiple_koneksi. Kemudian buat file koneksi.php, namun sebelum sobat membuat file koneksi sobat harus mengetahui ada 2 macam cara untuk mengkoneksikan dengan database yaitu dengan cara Object-Oriented dan Procedural. Untuk perbedaannya sobat bisa lihat pada part yang pertama dan keuanya bisa juga digunakan untuk multiple koneksi tinggal nama koneksinya saya yang dibedakan. Namun untuk contoh dibawah ini saya menggunakan Object-Oriented :
<?php error_reporting(0); //DATABASE PERTAMA $db_host1 = 'localhost'; $db_user1 = 'root'; $db_pass1 = ''; $database1 = 'db_dewankomputer'; // Buat Koneksinya $db1 = new mysqli($db_host1, $db_user1, $db_pass1, $database1); // Cek koneksi *BISA SOBAT HAPUS NANTINYA if ($db1->connect_error) { die("<b>Yahh! Koneksi Database pertama 'db_dewankomputer' gagal</b> : " . mysqli_connect_error()); } else { echo "<b>Hore! Koneksi Database pertama 'db_dewankomputer' Berhasil</b>"; } echo "<br><br><br>"; // ------------------------------------------------------------------------------- \\ //DATABASE KEDUA $db_host2 = 'localhost'; $db_user2 = 'root'; $db_pass2 = ''; $database2 = 'db_dewankampus'; // Buat Koneksinya $db2 = new mysqli($db_host2, $db_user2, $db_pass2, $database2); // Cek koneksi *BISA SOBAT HAPUS NANTINYA if ($db2->connect_error) { die("<b>Yahh! Koneksi Database pertama 'db_dewankampus' gagal</b> : " . mysqli_connect_error()); } else { echo "<b>Hore! Koneksi Database pertama 'db_dewankampus' Berhasil</b>"; } ?>
Pada baris $db_host,$db_user,$db_pass,$database bisa sobat beri nama 1-10 terserah jika memang sobat ingin mengkoneksikan database hingga 10 database dalam 1 aplikasi. Untuk pemanggilan query nantinya menggunakan $db1.
5. Jika pesan koneksi sudah berhasil semua, sobat bisa hapus baris cek koneksi dan bisa lanjut untuk digunakan karena jika tidak dihapus maka setiap sobat melakukan koneksi maka akan muncul pemberitahuannya.
// Cek koneksi *BISA SOBAT HAPUS NANTINYA if ($db1->connect_error) { die("<b>Yahh! Koneksi Database pertama 'db_dewankomputer' gagal</b> : " . mysqli_connect_error()); } else { echo "<b>Hore! Koneksi Database pertama 'db_dewankomputer' Berhasil</b>"; }
6.
Cek apakah sudah benar-benar terkoneksi semua dan bisa memanggil data yang sudah dimasukkan sebelumnya. Buat file index.php pada direktori project dan isikan kode berikut :<?php //Menggabungkan dengan file koneksi yang telah kita buat include 'koneksi.php'; ?> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"/> <meta http-equiv="X-UA-Compatible" content="IE=edge"/> <title>Multiple Koneksi - Dewan Komputer</title> <style type="text/css"> table { font-size: 17px; } thead { font-weight: bold; background-color: blue; color: white; } td { padding: 10px; } hr { margin-top: 20px; margin-bottom: 20px; } </style> </head> <body> <div align="center"> <h2>MENAMPILKAN DATA DARI DATABASE YANG PERTAMA</h2> <table border="1"> <thead> <tr> <td>No</td> <td>Nama Mahasiswa</td> <td>Alamat</td> <td>Jenis Kelamin</td> <td>Tanggal Masuk</td> </tr> </thead> <tbody> <?php $no = 1; $query = "SELECT * FROM tbl_mahasiswa ORDER BY nama_mahasiswa ASC"; $dewan1 = $db1->prepare($query); $dewan1->execute(); $res1 = $dewan1->get_result(); if ($res1->num_rows > 0) { while ($row = $res1->fetch_assoc()) { $nama_mahasiswa = $row['nama_mahasiswa']; $alamat = $row['alamat']; $jenis_kelamin = $row['jenis_kelamin']; $tgl_masuk = $row['tgl_masuk']; echo "<tr>"; echo "<td>".$no++."</td>"; echo "<td>".$nama_mahasiswa."</td>"; echo "<td>".$alamat."</td>"; echo "<td>".$jenis_kelamin."</td>"; echo "<td>".$tgl_masuk."</td>"; echo "</tr>"; } } else { echo "<tr>"; echo "<td colspan='5'>Tidak ada data ditemukan</td>"; echo "</tr>"; } ?> </tbody> </table> </div><hr> <div align="center"> <h2>MENAMPILKAN DATA DARI DATABASE KEDUA</h2> <table border="1"> <thead> <tr> <td>No</td> <td>Kode Matkul</td> <td>Nama Matkul</td> <td>SKS</td> <td>Semester</td> </tr> </thead> <tbody> <?php $no = 1; $query2 = "SELECT * FROM tbl_matkul ORDER BY nama_matkul ASC"; $dewan2 = $db2->prepare($query2); $dewan2->execute(); $res2 = $dewan2->get_result(); if ($res2->num_rows > 0) { while ($row = $res2->fetch_assoc()) { $kode_matkul = $row['kode_matkul']; $nama_matkul = $row['nama_matkul']; $sks = $row['sks']; $semester = $row['semester']; echo "<tr>"; echo "<td>".$no++."</td>"; echo "<td>".$kode_matkul."</td>"; echo "<td>".$nama_matkul."</td>"; echo "<td>".$sks."</td>"; echo "<td>".$semester."</td>"; echo "</tr>"; } } else { echo "<tr>"; echo "<td colspan='5'>Tidak ada data ditemukan</td>"; echo "</tr>"; } ?> </tbody> </table> </div> </body> </html>
7. Jalankan program dengan mengakses localhost/multiple_koneksi/ maka akan muncul hasilnya adalah sebagai berikut :
Begitulah cara mengkoneksikan dua atau bahkan bisa lebih database, jika sobat ingin mengkoneksikan beda host maka sobat tinggal ganti $db_host,$db_user,$db_pass,$database seperti pada host sobat yang lain seperti contohnya pada CPanel. Jika sobat belum tahu cara mengkoneksikan dengan host pada CPanel maka sobat bisa mengunjungi part yang kedua. Sebenarnya semua sama saja jika sobat sudah mengetahuinya tantu hal ini sudah sangat mudah.
Sekian postingan saya tentang Cara Mengkoneksikan Multiple Database menggunakan Database MySQL dan PHP. Jika ada salah mohon dimaafkan dan mohon untuk dikoreksi agar menambah ilmu untuk kita semua baik admin maupun pembaca. Jika ada pertanyaan silahkan isikan pada kolom komentar dibawah.
Jika sobat ingin mendownload tutorial diatas maka sobat bisa klik link dibawah ini :
Sampai jumpa pada postingan saya selanjutnya..
makasih kak atas informasinya, izin belajar bareng hehe
bg gimana caranya membuat singkron database offline localhost ke database online di hosting dengan php dan mysql.mohon solsusinya
singkron gimana maksudnya mas?
kalo aplikasinya offline mau 2 database satunya db local dan satunya db online ya tinggal kaya di postingan tapi db2 pake ip hostingnya dan biasanya di hostingnya ada settingnya bisa dilihat di postingan
Cara Membuat Koneksi dengan Database MySQL Berbeda Host (Cpanel) dan berjalan di Localhost pada PHP – Part 2
Misal,
select id_db1_tb1, id_db2_tb2 from db1_tb1 where id_db2_tb2 in (select id_db2_tb2 from db_2_tb2);
gimana gan, bisa gak? :v
kalo dalam 1 host cuma beda database/schema tentu bisa bahkan ngga perlu multiple koneksi, cukup 1 koneksi saja.
tapi kalo beda host 1 local dan 1 cpanel (misalkan) ya ga bisa jadi 1 query, harus paling ngga 2 query