Ngoding ga pake guru!!! Bisa, otodidak juga bisa, asal ga males.

Cara Menghubungkan CodeIgniter dan MySql Dengan Mudah

Cara Menghubungkan CodeIgniter dan MySql Dengan Mudah tanpa ribet hanya dengan melakukan configurasi beberapa file yang ada di codeigniter yaitu di folder application/config/database. Untuk memastikan database mysql dan codeigniter sudah terhubung dengan benar, maka langkah selanjutnya kita perlu melakukan uji coba pemanggilan/menampilkan data dari database mysql.

Pada pengaturan setting config/database jangan lupa untuk memasukkan username dan password database mysql nya. Jika sudah, lanjut ke cara menghubungkan codeigniter dan mysql dengan langkah-langkah sebagai berikut :

Baca juga : Pengertian Codeigniter dan cara menggunakan Codeigniter.


Langkah-Langkah Cara Menghubungkan Codeigniter dan Mysql dengan Mudah


Persiapkan terlebih dahulu waktu dan penunjangnya agar tutorial ini bisa anda mengerti dengan mudah. Persiapannya adalah sebagai berikut :
  • Pastikan Xampp sudah terinstal dikomputer/laptop anda
  • Gunakan editor teks seperti sublime / notepad++
  • Optional (Koneksi internet)
Itu saja persiapannya, lanjut ke tutorialnya dibawah ini.

1. Buat Baru Database nya.

Buatlah database nya terlebih dahulu dan beri nama 'sebaitcode' atau terserah anda, saya menganggap anda sudah bisa buat database sendiri atau saya sertakan saja coding create database dibawah ini :


-- phpMyAdmin SQL Dump
-- version 4.3.11
-- http://www.phpmyadmin.net
--
-- Host: 127.0.0.1
-- Generation Time: 25 Agu 2018 pada 06.50
-- Versi Server: 5.6.24
-- PHP Version: 5.6.8

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Database: `sebaitcode`
--

-- --------------------------------------------------------

--
-- Struktur dari tabel `user`
--

CREATE TABLE IF NOT EXISTS `user` (
  `id` int(11) NOT NULL,
  `nama` varchar(60) NOT NULL,
  `level` char(6) NOT NULL,
  `status` varchar(30) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

--
-- Dumping data untuk tabel `user`
--

INSERT INTO `user` (`id`, `nama`, `level`, `status`) VALUES
(1, 'sebaitcode', 'admin', 'Unbanned'),
(2, 'combro', 'user', 'banned');

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;


Database diatas bernama 'sebaitcode' dengan 1 table 'user' terdiri dari 4 kolom dan 2 baris data, untuk isi datanya anda bisa ganti sesuai degan selera anda. Nantinya data table user akan kita coba tampilkan untuk memastikan codeigniter dan mysql telah terhubung.

2. Setting application/config/database.php

Tahap ini penting dan harus untuk memastikan koneksi database benar atau tidak, lalu apa saja yang harus di setting? ini dia.


'hostname' => 'localhost',
'username' => 'root',
'password' => '',
'database' => 'sebaitcode',

Karena menggunakan xampp sebagai server database di komputer sendiri maka letak database ada di localhost sehingga 'hostname' diisi localhost, apabila database ada di server (beneran server) silahkan ganti localhost dengan ip server.

Untuk username dan password saya masih menggunakan default nya yaitu username = root dan password = 'kosong'

Sedangkan databasenya bernama 'sebaitcode'. Untuk lengkapnya sperti dibawah ini :


$db['default'] = array(
 'dsn' => '',
 'hostname' => 'localhost',
 'username' => 'root',
 'password' => '',
 'database' => 'sebaitcode',
 'dbdriver' => 'mysqli',
 'dbprefix' => '',
 'pconnect' => FALSE,
 'db_debug' => (ENVIRONMENT !== 'production'),
 'cache_on' => FALSE,
 'cachedir' => '',
 'char_set' => 'utf8',
 'dbcollat' => 'utf8_general_ci',
 'swap_pre' => '',
 'encrypt' => FALSE,
 'compress' => FALSE,
 'stricton' => FALSE,
 'failover' => array(),
 'save_queries' => TRUE
);

3. Setting application/config/autoload.php

Setelah melakukan pengaturan database di file database.php maka langkah selanjutnya yang tidak kalah penting yaitu mengaktifkan library database yang ada di file codeigniter.

Cari dan temukan code berikut di application/config/autoload.php

$autoload['libraries'] = array();

ganti dengan code dibawah ini :

$autoload['libraries'] = array('database');

wow anda sudah berhasil menghubungkan codeigniter dan mysql, selamat ya... eith dah entar dulu, masih panjang ceritanya.

Untuk memastikan codeigniter terhubung dengan mysql maka selanjutnya kita coba menampilkan data dari database mysql ke aplikasi.

4. Buat Model Pada Codeigniter


Karena kita ingin menampilkan data dari tabel user maka kita perlu membuat koding untuk mengintruksikan pemanggilan data. Ngomong-ngomong Model itu apa sih?

Model adalah kelas yang merepresentasikan atau memodelkan tipe data yang akan digunakan oleh aplikasi. Tipe data yang dimodelkan bisa berupa apa saja; bisa tabel di dalam database, file atau yang lainnya.

Buatlah model dengan nama apa saja terserah, namun disini model yang saya buat saya beri nama m_data.php untuk menghubungkan codeigniter dan mysql dengan mudah

Buat model di application/models/m_data.php dan isi dengan code dibawah ini.


class M_data extends CI_Model{

   function get_data($table){
      return $this->db->get($table);
   }
}

Perhatikan kode diatas :

  • M_data => dianjurkan untuk penulisannya diawali dengan huruf besar
  • extends => meng-extends model m_data yang sudah dibuat di CI_Model
  • get_data => Sebuah function ambil data pada m_data
  • $this->db->get($table) => digunakan untuk mengambil data dari database
  • return => berfungsi untuk mengambil data yang ditangkap pada controller yang memanggil function get_data() ini.

5. Buatlah Function pada Controller


Untuk menggunakan function pada model kita perlu membuat function pada controller, untuk mebuat function terlebih dahulu buat file controller dan beri nama 'tutorial.php' atau terserah anda apa namanya.

Jika sudah dibuat file controllernya lalu masukkan code dibawah ini :


>?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Tutorial extends CI_Controller {
    function __construct(){
        load->model('m_data');
    }

    public function index(){
        $data['user'] = $this->m_data->get_data()->result();
        $this->load->view('v_user', $data);
    }
}

Penjelasan :
  • load->model->('m_data'); => Karena ingin menggunakan model maka kita perlu memanggilnya di controller.
  • $this->m_data->get_data(); =>berfungsi untuk memanggil funtion get_data pada model m_data.
  • result(); => Ini berguna untuk menjadikannya array.
  • $this->load->view('v_user'); => Ini untuk memampilkan data kedalam halaman web dengan nama view file 'v_user'.
Perlu diperhatikan bahwasannya secara default controller codeigniter akan mengarah ke controller welcome, jadi untuk menggantinya dengan controller dengan controller kita sendiri begini caranya :

Buka file application/config/routes.php

Cari kode => $route['default_controller'] = 'Welcome';

Ganti dengan code ini :

$route['default_controller'] = 'Tutorial';

controller sudah selesai dibuat, sekarang lanjut membuat view dibawah ini.

6. Buat View


Pada tahap pembuatan ini (view) biasanya dikerjakan oleh front-end atau web design karena khusus hanya untuk mendesign tampilan halaman web.

Untuk membuat view, buka application/views lalu buat file v_user.php dan masukkan kode dibawah ini :


<!DOCTYPE html>
<html>
<head>
    <title>Menghubungkan codeigniter dengan database mysql</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
</head>
<body>
    <div class="container">
    <center><h1>Mengenal MVC Pada Codeigniter | www.sebaitcode.com</h1></center>
    <br />
    <table class="table table-bordered">
       <tr>
         <th>id</th>
         <th>nama</th>
         <th>level</th>
         <th>status</th>
      </tr>
      <?php foreach($user as $u){ ?>
      <tr>
         <td><?php echo $u->id ?></td>
         <td><?php echo $u->nama ?></td>
         <td><?php echo $u->level ?></td>
         <td><?php echo $u->status ?></td>
      </tr>
      <?php } ?>
     </table>
     </div>
</body>
</html>

Pada contoh view diatas untuk tampilan saya menggunakan css dari bootstrap dan untuk menampilkan datanya menggunakan foreach(). variable $user akan menjadi $u, $user adalah variable yang di parsing dari controller yang berisi data user dalam bentuk array.

Untuk melihat hasilnya silahkan buka browser anda dan masukkan alamat berikut :


http://localhost/sebaitcode/index.php/tutorial

Maka akan tampil seperti gambar dibawah ini :


Jika sudah terlihat seperti gambar diatas itu artinya anda sudah berhasil memghubungkan codeigniter dengan mysql.

Sepertinya sampai disini dulu tutorial cara menghubungkan codeigniter dan mysql dengan mudah, apabila ada yang kurang jelas silahkan isi kolom komentar yang sudah saya sediakan dibawah ini.