Kursus Web Programming Depok

Tutorial Code Igniter Part 8: CRUD Modul Berita (Bagian 1)

Kursus Web Programming Depok
Kursus Web Programming Depok

Alhamdulillah, Tutorial Code Igniter Part 8: CRUD Modul Berita akhirnya release juga. Pada Tutorial Part 8 ini Anda akan belajar untuk menggunakan fasilitas CRUD (Create, Read, Update & Delete) yang ada dalam Code Igniter. Setelah mengikuti tutorial ini diharapkan Anda dapat menambah, mengubah dan menghapus konten berita yang ada di database.

Sebelum mengikuti tutorial ini, pastikan Anda telah mengikuti:

  1. Mengikuti Tutorial Code Igniter Part 1: Installasi Code Igniter
  2. Mengikuti Tutorial Code Igniter Part 2: Membuat halaman home
  3. Mengikuti Tutorial Code Igniter Part 3: Membuat halaman kontak
  4. Mengikuti Tutorial Code Igniter Part 4: Membuat halaman login administrator
  5. Mengikuti Tutorial Code Igniter Part 5: Membuat halaman dasbor administrator
  6. Mengikuti Tutorial Code Igniter Part 6: Mempersiapkan database dan konfigurasinya di Code Igniter
  7. Mengikuti Tutorial Code Igniter Part 7: Menampilkan daftar berita dan detailnya
  8. Mengunduh hasil akhir tutorial Part  7  di sini: https://drive.google.com/file/d/0B5BhV6c89_2YbkxUTkxtVTJwS1k/view?usp=sharing
  9. Hasil akhir Tutorial Part 8 ini bisa diunduh di: https://drive.google.com/file/d/0B5BhV6c89_2YNzJRS3k2ZFhLOGM/view?usp=sharing

Mengkatifkan library dan helper form

Untuk bekerja dengan form, Anda harus mengaktifkan library dan helper form yang ada di Code Igniter.

Tutorial Code Igniter Java Web Media
Tutorial Code Igniter Java Web Media

Berikut langkah-langkahnya:

  1. Buka file autotoload.php yang ada dalam folder tutorial_ci/application/config/
  2. Pada baris ke-55, aktifkan library untuk vaslidasi form sehingga kode menjadi:

    $autoload[‘libraries’] = array(‘database’,’form_validation’);

  3. Pada baris ke-67, aktifkan helper form untuk fungsi form CI sehingga menjadi:

    $autoload[‘helper’] = array(‘url’,’form’);

  4. Simpan file autoload.php

Membuat berita_model.php di folder tutorial_ci/application/models/admin

Class dengan nama berita_model ini nanti kita simpan di dalam folder tutorial_ci/application/model/admin berfungsi untuk menampilkan, menambah, mengubah dan menghapus data berita.

Membuat folder admin

Folder admin digunakan untuk menyimpan seluruh model yang akan digunakan di halaman administrator.

  1. Buka folder tutorial_ci/application/models
  2. Buat folder baru dalam folder models tersebut dengan nama admin
Kursus Web Design Depok
Kursus Web Design Depok

Membuat berita_model di folder tutorial_ci/application/models/admin

Selanjutnya adalah membuat file model yang nantinya akan meng-handle seluruh aktivitas data modul berita.

Kursus Web Programming Java Web Media
Kursus Web Programming Java Web Media

Berikut langkah-langkahnya:

  1. Buat file PHP baru dengan nama berita_model dalam folder tutorial_ci/application/models/admin
  2. Ketik kode di bawah ini:

    <?php
    class Berita_model extends CI_Model {
    public function __construct() {
    $this->load->database();
    }

    // Menampilkand data berita
    public function daftar_berita() {
    $query = $this->db->query(‘SELECT berita.judul, berita.status_berita, berita.slug, berita.id_berita, berita.tanggal, users.nama FROM berita, users WHERE berita.id_user = users.id_user ORDER BY id_berita DESC’);
    return $query->result_array();
    }
    }

  3. Simpan file berita_model.php tersebut

Membuat controller berita.php dalam folder tutorial_ci/application/controllers/admin

Controller berita ini nantinya akan dipakai untuk mengontrol model dan view mana yang harus tampil untuk menampilkan data berita yang ada.

Kursus Web Development Java Web Media
Kursus Web Development Java Web Media

Berikut langkah-langkahnya:

  1. Buat file PHP baru dengan nama berita.php dalam folder tutorial_ci/application/controllers/admin
  2. Ketik kode di bawah ini:

    <?php if ( ! defined(‘BASEPATH’)) exit(‘No direct script access allowed’);
    class Berita extends CI_Controller {

    public function __construct() {
    parent::__construct();
    $this->load->model(‘admin/berita_model’);
    }

    public function index() {
    $query = $this->berita_model->daftar_berita();
    $data=array(‘title’=>’Manajemen Berita – Java Web Media’,
    ‘berita’ => $query,
    ‘isi’ =>’admin/berita/berita_view’
    );
    $this->load->view(‘admin/layout/wrapper’,$data);
    }
    }

  3. Simpan file berita.php

Membuat view untuk modul berita di administrator

Modul berita yang di administrator nantinya dapat diakses melalui alamat http://localhost/tutorial_ci/admin/berita atau bisa Anda akses dengan mengklik link navigasi berita yang ada di halaman http://localhost/tutorial_ci/admin/dasbor/.

Membuat folder berita dalam folder tutorial_ci/application/views/admin

Folder berita ini nanti akan digunakan sebagai tempat penyimpanan seluruh view untuk modul berita.

Kursus Code Igniter Depok
Kursus Code Igniter Depok

Berikut langkah-langkahnya:

  1. Buka folder tutorial_ci/application/views/admin 
  2. Buat folder baru dengan nama berita

Membuat view berita dalam folder tutorial_ci/application/views/admin/berita

View berita untuk menampilkan daftar berita yang telah ada, menampilkan link untuk mengedit dan menghapus berita.

Kursus Web Development Depok
Kursus Web Development Depok

Berikut langkah-langkahnya:

  1. Buat file PHP baru dengan nama berita_view.php dalam folder tutorial_ci/application/views/admin/berita
  2. Ketik kode di bawah ini:

    <div class=”konten”>
    <h1>Manajemen berita</h1>
    <div align=”right”>
    <a href=”<?php echo base_url() ?>admin/berita/tambah” class=”tambah”>Tambah berita</a>
    </div>
    <p>Daftar berita</p>
    <table width=”100%” border=”0″ cellspacing=”0″ cellpadding=”0″ class=”myform”>
    <tr>
    <th scope=”col”>Judul</th>
    <th scope=”col”>Status</th>
    <th scope=”col”>Penulis</th>
    <th scope=”col”>Tanggal</th>
    <th scope=”col”>&nbsp;</th>
    </tr>
    <?php foreach($berita as $list) { ?>
    <tr>
    <td>
    <a href=”<?php echo base_url() ?>home/read/<?php echo $list[‘slug’] ?>” target=”_blank”>
    <?php echo $list[‘judul’]; ?></a></td>
    <td><?php echo $list[‘status_berita’]; ?></td>
    <td><?php echo $list[‘nama’]; ?></td>
    <td><?php echo $list[‘tanggal’]; ?></td>
    <td>
    <a href=”<?php echo base_url() ?>admin/berita/edit/<?php echo $list[‘id_berita’] ?>”>EDIT</a> | <a href=”<?php echo base_url() ?>admin/berita/delete/<?php echo $list[‘id_berita’] ?>”>DELETE</a></td>
    </tr>
    <?php } ?>
    </table>

    </div>
  3. Simpan file berita_view.php

Menguji hasil pembuatan

Untuk mengetesnya, Anda bisa mengaksesnya secara langsung di http://localhost/tutorial_ci/admin/berita.

Anda bisa mendownload hasil tutorial ini di link ini: https://drive.google.com/file/d/0B5BhV6c89_2YNzJRS3k2ZFhLOGM/view?usp=sharing

Berikut hasil akhirnya:

Kursus Web Programming Depok
Kursus Web Programming Depok

Java Web Media: Web Design di Kota Depok

Java Web Media adalah perusahaan yang bergerak di bidang web design, web programming, web application, web education, graphic design dan graphic education yang berbasis di kota depok.

33 thoughts to “Tutorial Code Igniter Part 8: CRUD Modul Berita (Bagian 1)”

  1. maaf pak, ini sdh sampe sesion 8, cuma daftar beritanya ga mau tampil di list webnya,

    SELECT berita.judul, berita.status_berita, berita.slug, berita.id_berita, berita.tanggal, users.nama FROM berita, users WHERE berita.id_user = users.id_user ORDER BY id_berita DESC—-> diquery di lgsung di database kosong pak, mhon sarannya pak
    trimakasih

      1. sy download yg dilink dari bpk, lalu sy drop tabel user n berita, kmdian sy impor tabel lagi yg difolder tutorial_ci 8, hsilnya jg sama pak… list beritanya msh blm tampil

    1. saya juga begitu brow, saya sudah coba dengan cara join seperti ini di Berita_model:

      $this->db->select('*');
      $this->db->from('berita');
      $this->db->join('users', 'berita.id_user = users.id_user ORDER BY id_berita DESC' );
      $query = $this->db->get();
      return $query->result_array();

      Tetep ga bisa muncul, tapi aneh nya ga ada error, saya penasaran jadi saya buka tabel users di mysql, ternyata tabel usernya memang kosong ga ada isinya.
      setelah saya isi 1 user, baru deh di halaman admin muncul semua list beritanya.he..

      jadi yang dari file download tersebut untuk table user memang kosong belum diisi, silahkan diisi dulu nanti kan muncul.he..

      semoga membantu.

      Buat penulis, terimakasih anda sangat membantu newbie seperti saya 🙂

  2. sekedar saran ni … emang kalo penulis/atau user nggak di isi ya ngak bisa keluar.. di kode scriptnya kan uda di masukkan nama usernya coba di isi usernya insyallah bisa…
    coba lihat ini :
    / Menampilkand data berita
    public function daftar_berita() {
    $query = $this->db->query(‘SELECT berita.judul, berita.status_berita, berita.slug, berita.id_berita, berita.tanggal, users.nama FROM berita, users WHERE berita.id_user = users.id_user ORDER BY id_berita DESC’);
    return $query->result_array();
    }
    }
    saya uda coba dan berhasil.. terima kasih.. admin java webmedia… anda memang sempurna….hehehehe

  3. terimakasih sekali min atas tutorialnya…luar biasa 😀 salut…bisa membantu sekali

    saya sudah mengikuti dari part 1 sampai 7 min,semua lancar,aman dan sesuai screenshot anda…

    tapi di part 8, saya juga memiliki kendala seperti user yg lain, yakni data berita tidak dapat tampil di list…saya juga sudah mencoba querinya langsung di phpmyadmin…hasilnya sama “empty result”

    ada solusi min?

  4. ==SOLUSI sementara==

    tambahkan 1 user di tabel ‘users’ 😀 ==>> karena tabel ‘users’ belum ada isinya

    mungkin mimin punya jawaban yg lebih tepat…

  5. terimakasih kepada javawebmedia,, tutorialnya sangat bagus,, sederhana dan mudah di pahami
    selama ini saya menggunakan php nativ,, tp setelah sy belajar framework ci melalui javawebmedia, ada pencerahan,, tentang framework ci

    terimakasih admin javawebmedia 🙂

  6. kak, mau nanya dong kalo digunakan untuk coding yang sejenis seperti ini

    load->database();
    }

    // Menampilkand data berita
    public function daftar_berita() {
    $query = $this->db->query(‘SELECT * FROM daftar_mobil ORDER BY id_mobil DESC’);
    return $query->result_array();
    }
    }

    kok error nya gini ya ? Call to a member function database() on a non-object in C:\xampp\htdocs\dimasrent\application\models\admin\daftarmobil_model.php on line 4
    itu solusinya gimana kak? Terimakasih

  7. tks java web media atas tutorialnya, memang benar daftar tidak muncul, karena di statemennya SQLnya saya lihat memang yang dimunculkan adalah daftar berita yang di tulis oleh user tersebut, jadi pertama harus ada minimal 1 user yang menulis 1 berita. baru muncul daftar tersebut, persis statemen querynya berikut. karena berita akan di cocokkan dengan user penulisnya baru ditampilkan. kalau tidak ada yang cocok ya tidak ada yang ditampilkan. seperti potongan statement berikut:
    WHERE berita.id_user = users.id_user ORDER BY id_berita DESC’);

    java media sip banget deh. lanjutkannn …. : )!!!

  8. A PHP Error was encountered

    Severity: Notice

    Message: Only variable references should be returned by reference

    Filename: core/Common.php

    Line Number: 257

    tuh kenapa ya broo ? help

Leave a Reply to humam Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.