Menjalankan query di CodeIgniter

Menjalankan query di codeigniter – Tulisan ini akan menjelaskan bagaimana menjalankan query dan menampilkannya di Codeigniter, tulisan yang cukup singkat menurut saya tetapi saya mengharapkan membantu anda menyelesaikan masalah anda.

Baik, selanjutnya kita perlu membuat pengaturan berhubungan dengan database yang kita buat, dalam hal ini saya membuat database dengan nama “tessql” dengan tabelnya sebagai berikut:

Tabel di atas saya ambil dari tulisan Active Record CodeIgniter, selanjutnya anda perlu mengatur koneksi ke database dengan cara mengubah variabel yang ada di file ./application/config/database.php sesuai dengan yang ada pada sistem anda, sebagai contoh berikut pengaturan saya:
Pengaturan Database Codeigniter
Agar tidak membingungkan, saya menggunakan framework CodeIgniter fresh install atau barusan unduh. Oke sekarang kita siap-siap untuk menjalankan query di CodeIgniter, berikut caranya. Buka Controller ./application/controllers/welcome.php dan tuliskan seperti contoh berikut ini dan silahkan coba di browser anda:

Jika kita menjalankan query yang tidak ada hasilnya (num_rows = 0) kemungkinan akan terjadi error oleh karena itu kita harus selalu menggunakan num_rows():

Oke, sekarang bila anda ingin menampilkannya ke view, cukup tulis seperti ini di controller, sebagai contoh menjalankan dua query sekaligus:

Selanjutnya buka view Selanjutnya buka view ./application/views/welcome_message.php tambahkan kode PHP berikut, setelah itu silahkan coba di browser anda:

Saran saya daripada menggunakan Query MySQL, mendingan menggunakan Active Record Class di dalam class model yang sudah saya buat.

Oke sekian dulu tulisan mengenai bagaimana menjalankan query di CodeIgniter, selamat mencoba. Jika kurang jelas silahkan bertanya melalui komentar di bawah. Jika tulisan ini bermanfaat bagi anda silahkan berikan juga +1 Google anda di tulisan ini

Kami (Catatan Belajar) juga hadir di Facebook, like kami ya klik tombol berikut:

 
Signature :

No copy paste content please…. If you want do that, please include the original source. Original Post by catatanbelajar.com, written by , .

15 thoughts on “Menjalankan query di CodeIgniter”

    1. Gunakan Active Record Class aja gan, lebih enak daripada query mySQL.
      Contoh menggunakan Active Record Class:

  1. pak tanya donk , ini model ku sudah benar, tujuan ku adalah pertama select data yang tertinggisetelah dapat ku simpan id nya di variabel $a terus aku select semua data tanpa variabel a, hasil nya benar tapi ketika data kosong error nya seperti ini

    Severity: Notice
    Message: Undefined index: id
    Filename: models/ekonomi_model.php
    Line Number: 15

    ini model ku pak ?

    $query = $this->db->query(“SELECT * FROM tabel_indonesias a, tabel_indonesia b where a.id=b.id and a.kategori=’GEOGRAFI’ and b.lang=’$lang’ order by tgl desc limit 1”)->row_array();

    $a=$query[‘id’];

    return $query = $this->db->query(“SELECT * FROM tabel_indonesias a, tabel_indonesia b where a.id=b.id and a.id !=’$a’ and a.kategori=’GEOGRAFI’ and b.lang=’$lang’ order by tgl desc limit 2”);

    Thanks pak , respon ya pak ? aku selip dimana

  2. mas mau nanya, script di ci gimana ya kalo saya mau 2 tabel.misal tbl_a dan tbl_b. hasil query tbl_a di query lagi di tbl_b.
    output :
    ELECTRONIK
    – tv
    – radio

    ALAT DAPUR
    -blabla
    -blaa bal

    terima kasih.

    1. Mas harus pandai main sintax sql, sebagai gambaran saya gunakan kata kunci in:
      SELECT *
      FROM tbl_b
      WHERE tbl_b.kolom_a IN (SELECT tbl_a.id_kategori where bla..bla...);

  3. mas saya mau tanya dong, kalau saya mau menampilkan data dari 3 tabel : misal tabel karyawan,pendidikan dan jabatan
    di tabel karyawan ada field id_jabatan dan id_pendidikan yang diambil dari tabel pendidikan dan jabatan.

    kalau saya mau menampilkan data-data tersebut sintax di CI bagaimana ya?
    klo di sql biasa seperti ini :
    SELECT nama, alamat,pendidikan_tb.tingkat_pendidikan,jabatan_tb.nama jabatan
    FORM karyawan_tb,pendidikan_tb, jabatan_tb
    where jabatan_tb.id_jabatan=karywan.id_jabatan
    AND pendidikan_tb.id_pendidikan=karyawan.id_pendidikan

    1. Iya sama kok, tinggal masukin aja querynya itu ke CI:

      Lebih baiknya pakai SQL JOIN aja.

      1. kalau data yangdicari berdasarkan no ktp seperti ini bagaimana ya mas?

        SELECT no_ktp,nama_lengkap,alamat,kota,pendidikan_tb.tingkat_pendidikan,jabatan_tb.nama_jabatan
        FROM kandidatkaryawan_tb
        inner join jabatan_tb on kandidatkaryawan_tb.id_jabatan=jabatan_tb.id_jabatan
        inner join pendidikan_tbon kandidatkaryawan_tb.id_pendidikan=pendidikan_tb.id_pendidikan
        where no_ktp=’3516084605910001′

        maklum msh newbie pke CI

        1. Jawaban saya yg sblmnya sudah saya edit ya, lihat perbedaan select fieldnya.

          Sama saja: no_ktp,nama_lengkap,alamat,kota => tambahkan nama tabel menjadi no_ktp.kandidatkaryawan_tb,nama_lengkap.kandidatkaryawan_tb dst…..

          where no_ktp.kandidatkaryawan_tb=’3516084605910001′

          Semuanya ditambahkan nama tabelnya karena lebih dari satu tabel.

          1. saya nyoba sintax ini kok masih error ya??

            function detaildata($id) {
            $this->db->select(‘no_ktp,nama_lengkap,nama_panggilan’);
            $this->db->from(‘kandidatkaryawan_tb’);
            $this->db->join(‘kandidatkaryawan_tb’,’kandidatkaryawan.id_jabatan=jabatan_tb.id_jabatan’);
            $this->db->join(‘kandidatkaryawan_tb’,’kandidatkaryawan.id_pendidikan=pendidikan_tb.id_pendidikan’);
            $this->db->where(‘no_ktp’, $id);
            $query = $this->db->get();
            return $query->result();

            }

            mohon bantuannya
            *kode saya taruh di model

Tinggalkan Balasan