Tutorial Codeigniter 2 (Menampilkan data dari database)

Alhmdulillah, saya diberikan kesempatan kali ini untuk posting tutorial seputar Codeigniter.Pada seri tutorial kali ini, saya akan membahas bagaimana menampilkan data dari database (retrieve data).Sebelumnya anda harus menginstal codeigniter terlebih dahulu.Kalau belum tahu klik disini

Perlu diingat, karena kita akan berinteraksi dengan database, kita harus menggunakan model. Jadi pada tutorial kali ini full MVC (Model – View – Controller).

Oke langsung saja tutorialnya .🙂

Pertama buat sebuah controller dan simpan di ROOT/system/application/controllers/.Simpan dengan nama home.php

Berikut source kodenya:

<?php
class Home extends Controller{
  function __construct(){
     parent::Controller();
     $this->load->model('buku_tamu');
  }

 function index(){
    $data['title'] = 'Ini adalah aplikasi sederhana menggunakan CodeIgniter';

    //memanggil fungsi selectAll di model buku_tamu kemudian dimasukkan ke $data['buku_tamu']
    $data['buku_tamu'] = $this->buku_tamu->selectAll();

    //meload view bernama home_view.php dengan data variable adalah $data
    $this->load->view('home_view',$data);
   }
 }
?>

Kemudian , buat model-nya simpan di ROOT/system/application/models/.Simpan dengan nama buku_tamu.php

<?php
class Buku_tamu extends Model{
  function selectAll(){
    return $this->db->get('buku_tamu')->result();
   }
 }
?>

Nah, untuk view-nya di bawah ini, simpan di ROOT/system/application/views/.Simpan dengan nama home_view.php

<strong><?php echo $title ?></strong><br /><br />
<style type="text/css">
 body{
 font-family:Arial, Helvetica, sans-serif;
 padding:20px;
 }
 table{
 font-size:12px;
 }
 td{
 padding:3px 5px;
 border-bottom:1px solid #FFFFFF;
 }
 .field{
 background-color:#333333;
 color:#FFFFFF;   
 font-weight:bold;
 }
 .field td{
 border-right:1px solid #CCCCCC;
 }
 .record{
 background:#EEEEEE;
 }
</style>
<table border="0"  cellpadding="0" cellspacing="0"> 
 <tr>
   <td>No</td>
   <td>Nama</td>
   <td>Email</td>
   <td>Situs</td>
   <td>Komentar</td>
 </tr>
 <?php $i = 1 ?>
 <?php foreach ($buku_tamu as $bt): ?>
   <tr>
    <td><?php echo $i++ ?></td>
    <td><?php echo $bt->nama ?></td>
    <td><?php echo $bt->email ?></td>
    <td><?php echo $bt->situs ?></td>
    <td><?php echo $bt->komentar ?></td>
  </tr>
 <?php endforeach ?>
</table>

Kemudian jalankan aplikasi tersebut di http://localhost/codeigniter/index.php/home

34 thoughts on “Tutorial Codeigniter 2 (Menampilkan data dari database)

  1. Fatal error: Class ‘Controller’ not found in C:\wamp\www\CodeIgniter_2.0.0\application\controllers\home.php on line 2

    kalo kayak gini apanya ya? padahal saya copy paste scriptnya
    saya pake codeigniter versi 2.0.0 jd folder application tidak dalam folder systems

    1. ini adalah hari kedua belajar CI, dan langsung donlot yg CI 2.0.0
      dan saya menemukan error yg sama, dan stlh googling sana sini ( tutorial utk versi 2.0 msh sdikit ) akhirnya ketemu, ini solusinya :

      di baris kedua halaman home.php
      “class Home extends Controller ”
      ganti dengan
      “class Home extends CI_Controller”

      silahkan dicoba . . .

  2. klo saya kok muncul erro gini ya? saya pakai CI Versi CodeIgniter_2.0.3
    A PHP Error was encountered

    Severity: Warning

    Message: include(): It is not safe to rely on the system’s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Asia/Krasnoyarsk’ for ‘7.0/no DST’ instead

    Filename: controllers/home.php

    Line Number: 25

    * mohon solusinya

  3. aq pake ci 2.1.0
    gak jalan n’ muncul:

    A PHP Error was encountered

    Severity: Notice

    Message: Undefined property: Home::$buku_tamu

    Filename: controllers/home.php

    Line Number: 13

    Fatal error: Call to a member function selectAll() on a non-object in C:\xampp\htdocs\ci\application\controllers\home.php on line 13

    1. coba agan cek penggunaan Controllernya udah bener kya gini
      class Home extends CI_Controller{
      ....
      }

      Kalau masih error, coba posting codenya disini Gan🙂 semoga bisa membantu.

  4. error saya sama spt herry, berikut tampilan errornya :

    A PHP Error was encountered
    Severity: Notice
    Message: Undefined property: Data_buku_tamu::$buku_tamu_model
    Filename: controllers/Data_buku_tamu.php
    Line Number: 20
    Fatal error: Call to a member function selectAll() on a non-object in C:\xampp\htdocs\ci\application\controllers\Data_buku_tamu.php on line 20

    dan ini controllernya :

    class Data_buku_tamu extends CI_Controller
    {

    function _construct()
    {
    parent::Controller();
    $this->load->model(‘buku_tamu_model’);
    }
    function index()
    {
    $data[‘buku_tamu’]=$this->buku_tamu_model->selectAll();
    $this->load->view(‘buku_tamu_view’,$data);
    }
    }

    mhon dibantu, thx

  5. saya baru belajar PHP nih mas, aku coba buat ini, tp ada error di sini mas

    Fatal error: Call to undefined method CI_Controller::CI_Controller() in C:\xampp\htdocs\ci\system\application\controllers\home.php on line 4

    dimana salahnya tu mas???

  6. Thanks ilmunya. Ini troble saya pas nyobain, setelah line.2 home.php ditambah CI_Controller, muncul pesan.

    Fatal error: Call to undefined method CI_Controller::Controller() in E:\xampp\www\ci213\application\controllers\home.php on line 4

  7. Mas, saya mau tanya saya pake CI 1.7.2. Saya punya masalah error di scaffolding saja. nih sciptnya :

    class Home extends CI_Controller{
    function Home (){
    $this->load->scaffolding(‘berita’);
    }

    Ini adalah pesan error nya :
    Call to a member function scaffolding() on a non-object in C:\wamp\www\blog\application\controllers\home.php on line 15

    bagaimana cara merubah scaffoldingnya agar bisa berfungsi? selain ditaruh dibawah fungsi home seperti diatas. Mohon bantuannya.

  8. gimana nih gan

    A PHP Error was encountered

    Severity: Warning

    Message: Home::index(): It is not safe to rely on the system’s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Asia/Krasnoyarsk’ for ‘7.0/no DST’ instead

    Filename: controllers/home.php

    Line Number: 12

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s