Home / CodeIgniter / Cara join table di CodeIgniter

Cara join table di CodeIgniter

Cara join table di CodeIgniterCara join table di CodeIgniter – Susantokun. Pada kesempatan kali ini miminz akan memberikan tutorial bagaimana Cara join table di CodeIgniter baik itu join untuk 1 tabel, join 2 tabel, join 3 tabel sampai dengan join tabel. Sebenarnya ini adalah permintaan dari teman miminz namanya Naufal Firansyah (masih jomblo) yang lagi kesulitan join joinan maka dibuatlah tutorial ini, jadi jika sobat lagi ada kesulitan nih tentang codeigniter bisa langsung request aja di kolom komentar Request di mari. Pada prinsipnya fungsi dari join tabel di codeigniter adalah untuk memanggil data lain yang ada pada sebuah tabel sehingga data dari tabel lain dapat ditampilkan sesuai dengan hubungan antara Pimary Key dengan Foreign Key, namun pada saat membuat tabel sobat hanya perlu mendefinisikan primary key nya saja, sebagai contoh miminz mempunyai 2 tabel dengan isi sebagai berikut :

Tabel 1 (tbl_user) :

  1. id [primary key, int (3), ai]
  2. id_role [int(3)]
  3. username [varchar(30)]
  4. password [varchar(30)]
  5. email [varchar(30)]

Tabel 2 (tbl_role) :

  1. id [primary key, int(11), ai]
  2. name [varchar(30)]
  3. description [varchar(50)]

Kemudian miminz ingin menampilkan data dengan daftar username (tbl_user), email (tbl_user) dan name (tbl_role). Bagaimana caranya? Agar name yang ada di tbl_role ditampilkan sesuai dengan id role yang ada di tbl_user? Hmmmm gimana ya? Aku siapa? Aku dimana? Yaaaa … solusinya bisa menggunakan Cara join table di CodeIgniter. Yuk cap cus cyn kita mulah ngoding.

Cara join table di CodeIgniter

Pertama sobat siapkan alat tempurnya terlebih dahulu :

  1. CodeIgniter
  2. Text Editor

Kedua buka Text Editor paling bagus kesayangan sobat dan masukkan kepunyaan sobat ke lubang yang mantap projek yang akan sobat gunakan sebagai latihan Cara join table di CodeIgniter

Ketiga ubah semua konfigurasi sehingga hasil akhirnya sobat sudah siap mulai ngoding untuk menyelesaikan Cara join table di CodeIgniter, ya sudah kalau masih belum paham miminz jelasin aja deh. Buat yang sudah siap alias hanya membutuhkan inti dari joinnya silakan lewat saja tahap ketiga ini. Jadi pertama sobat buka application\config\autoload.php dan tambahkan library database ($autoload[‘libraries’] = array(‘database’);) kemudian masuk ke application\config\database.php dan tambahkan database yang akan dibuat, disini kita akan menggunakan nama database db_susantokun seperti pada code dibawah ini :

Untuk database nya bisa sobat buat sendiri dengan nama db_susantokun kemudian masukkan code dibawah pada SQL database yang telah dibuat :

Mulai Ngoding Cara join table di CodeIgniter

Ingat lebih baik sobat ngetik sendiri ya jangan langsung copas gitu aja, supay

Keempat sobat buka application\controllers\Welcome.php dan ubah code nya menjadi seperti dibawah ini :

Penjelasan :

  • Pada function_index() kita membuat dataUser sebagai tempat penyimpanan data dari function get_by_role pada User_model
  • Kemudian di load dataUser tersebut dengan menambahkan $data pada $this->load->view(‘welcome_message’, $data); sehingga dataUser hanya dapat tampil pada view welcome_message

Kelima sobat buat User_model dan masukkan code berikut :

Penjelasan :

  • Pada function get_by_role() terdapat sql untuk menampilkan data dari tbl_user dengan kondisi select data dari tbl_role dan menampilkan field tbl_role.name sehingga nanti name yang terdapat pada tbl_role bisa dipanggil
  • Pada $this->db->join(‘tbl_role’, ‘tbl_user.id_role = tbl_role.id’); adalah proses join antar table sehingga tbl_role name dapat dipanggil sesuai dengan id_role yang ada di tbl_user sama dengan id yang ada di tbl_role

Keenam buka application\views\welcome_message.php

Penjelasan :

  • Kode di atas adalah untuk menampilkan sebuah tabel dimana isi nya terdiri dari No, Username, Email dan Role Name dengan isi yang diambil dari 2 tabel, disitu pun sudah saya buatkan cara membuat nomor urut otomatis sehingga nomor urut akan tampil sesuai dengan jumlah row nya.
  • Perhatikan bagian $dataUser as $row, itu adalah proses pengambilan data berdasarkan variabel $dataUser yang berdada di application\controllers\Welcome.php dimana $dataUser adalah data yang diambil dari application\models\User_model.php function get_by_role() yang disana ada join joinan.

Silakan sobat buka localhost/namaproject apakah hasilnya sama dengan gambar dibawah

Cara join table di CodeIgniter

Jika sama maka sobat telah berhasil join table di codeigniter dan jika tidak coba sobat cek lagi tutorial nya apakah sudah benar atau belum.

Bagaimana jika kita ingin menambahkan row description dari tabel role? Caranya cukup tambahkan <th>Description</th> pada <thead> dan <td><?=$row->description?> pada <tdbody> silakan sobat coba hal tersebut. Maka hasil nya akan bertuliskan seperti berikut :

Kenapa demikian? Karena kita belum mendefinisikan field description pada tabel role untuk ditampilkan, solusinya sobat masuk ke application\models\User_model.php function get_by_role() dan tambahkan “, tbl_role.description” sehingga coding nya seperti berikut :

Silakan coba lagi muat localhost/namaproject maka hasilnya akan seperti gambar berikut :

Cara join table di CodeIgniter

Bagaimana jika ingin join 3 table? Sobat cukup tambahkan tbl_user.*, tbl_role.id AS id_role, tbl_role.name dan $this->db->join(‘tbl_role’, ‘tbl_user.id_role = tbl_role.id’); seperti pada coding berikut :

Bagaimana jika ingin join 4 tabel? Ya sobat tinggal tambahkan lagi saja baris baru untuk join seperti pada coding diatas yang diberikan bold. Cukup mudah kan? Yaaaa semoga tutorial Cara join table di CodeIgniter ini dapat bermanfaat bagi sobat dan jangan lupa untuk memberikan komentar biar makin rame gitu dan miminz tambah semangat.

Unduh dan Berikan Penilaian :

Mudah - 95%
Penting - 97%

96%

Rating

User Rating: 5 ( 2 votes)

About Susantokun

Seorang pemuda tampan yang sedang berjuang untuk mencari modal nikah. Lahir di Bumi ini atas perjuangan Ayah dan Ibu yang senantiasa membuat dan mengeluarkan sehingga lahirlah Susanto pada tanggal 27 Maret 1996 di Cianjur - Jawa Barat.

Check Also

Cara Membuat Form Pendaftaran di CodeIgniter

Cara Membuat Form Pendaftaran di CodeIgniter – Susantokun. Halu haluuu kembali lagi bersama susantokun, kali …

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

error: Content is protected !!