Tampil data memakai Codeigniter versi 2.0.2

Codeigniter 2.0

Dalam artikel terdauhulu :

Codeigniter dasar – Membuat insert data

Codeigniter dasar – Menampilkan dan menghapus

Codeigniter dasar – Membuat Edit data

Codeigniter dasar – Belajar Ajax dengan Jquery

Menghapus data dengan JQuery

CRUD sederhana dengan JQuery, JQueryUI dan Codeigniter

Menggunakan Codeigniter dan JQGrid

Kesemuanya menggunakan Codeigniter versi 1.7.3 (kalo saya tidak salah ingat..) Nah berhubung sekarang sudah ada yang versi terbaru, berikut ini CRUD sederhana dengan Codeigniter verse 2.0.2 silahkan cari perbedaannya dengan yang versi terdahulu.

Misalnya, kita akan membuat aplikasi pendaftaran user.. Untuk databasenya adalah sebagai berikut :

CREATE TABLE IF NOT EXISTS `user` (
  `id` int(3) NOT NULL AUTO_INCREMENT,
  `username` varchar(15) NOT NULL,
  `password` text NOT NULL,
  `fullname` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
)

Sebelum membuat controller dan sebagainya, silahkan sesuaikan pada application/config/config.php

$config['base_url']= 'http://localhost/nama_folder_ci/';

application/config/autoload.php

$autoload['libraries'] = array('database','form_validation');
$autoload['helper'] = array('url','form');

application/config/database.php

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root'; //user mysql kalian
$db['default']['password'] = ''; //password mysql kalian
$db['default']['database'] = 'codeigniter'; //nama database kalian
$db['default']['dbdriver'] = 'mysql';
...dst

Nah untuk cotroller, saya buat dalam fungsi index yang nantinya terdapat form input dan tabel data yang di inputkan.. controllernya dan fungsi indexnya

<?php
class User extends CI_Controller{

	function __construct(){
		parent::__construct();
		$this->load->model('Model_user');
	}

	function index(){
		$data['query'] = $this->Model_user->getAll();
		$this->load->view('view_user/input',$data);
	}
}

Jangan lupa membuat model_user, dengan fungsi untuk menampilkan data scriptnya :

<?php
class Model_user extends CI_Model{
        function __construct(){
		parent::__construct();
	}

	function getAll(){
		$this->db->select('id,username,fullname');
                $this->db->from('user');
                $this->db->limit(10);
                $this->db->order_by('id','ASC');
                $query = $this->db->get();

                return $query->result();
	}
}

Untuk tampilannya, saya lebih menyenangi membuat sebuah folder untuk setiap crud 😀 jadi dalam folder views saya membuat folder dengan nama user_views, dan di dalamnya saya membuat view input.php dan show.php.
input.php digunakan untuk inputan form, scriptnya sebagai berikut :

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Data User</title>
  </head>
  <body>
    <div id="form_input" title="Input / Edit Data">
      <table>
        <?php echo validation_errors(); ?>
        <?php echo form_open('user/submit'); ?>
        <tr >
            <td> <?php echo form_label('User Name : '); ?></td>
            <td> <?php echo form_input('username',set_value('username'),'id="username"'); ?></td>
        </tr>
        <tr>
            <td> <?php echo form_label('Password : ');?> </td>
            <td> <?php echo form_password('password','','id="password"'); ?></td>
        </tr>
         <tr>
            <td> <?php echo form_label('Repeat Password : ');?> </td>
            <td> <?php echo form_password('passconf','','id="passconf"'); ?></td>
        </tr>
        <tr>
            <td> <?php echo form_label('Full Name : ');?> </td>
            <td> <?php echo form_input('fullname', set_value('fullname'),'id="fullname"'); ?></td>
        </tr>
        <tr>
        		<td><?php echo form_submit('submit','Save')?>
        </tr>
      </table>
      </div>
      <div id="show">
        <?php $this->load->view('view_user/show'); ?>
    </div>
    </div>
  </body>
</html>

sedangkan show.php scriptnya adalah sebagai berikut :

<?php
	if (isset($query) && count($query) > 0){
	?>
	<h1>Data User</h1>
	<table width="400" border="1">
 	<tr >
	 <th>No</th>
	 <th>Username</th>
	 <th>Fullname</th>
	 <th>Edit</th>
	 <th>Delete</th>
 </tr>
 <?php
 $i=0;
 foreach ($query as $row){
 $i++;
 echo "<tr class=\"record\">";
 echo    "<td>$i</td>";
 echo    "<td>$row->username</td>";
 echo    "<td>$row->fullname</td>";
 echo    "<td><a href=".base_url()."index.php/user/edit/$row->id>Edit</a></td>";
 echo    "<td><a href=".base_url()."index.php/user/delete/$row->id>Delete</a></td>";
 echo  "</tr>";
 }
 ?>
</table>
<?php
	}
?>

sampai sini, kita sebenarnya sudah selesai untuk membuat fungsi menampilkan data dari database, coba masukkan data lewat phpmyadmin, insyaalloh udah bisa tampil… Untuk simpan dan edit serta delete, lanjut di post berikutnya ya 😀