Senin, 01 September 2014

Multiple Input [CodeIgniter]


Multiple Input adalah melakukan inputan data sekaligus , beda dengan inputan data satu persatu. Pada kasus ini saya akan memberikan contoh adalah input katalog buku. yang mana pada tabel databasenya mempunyai field penerbit,nama,tahun.
untuk exekusi saya menggunakan Framework CodeIgniter. ada beberapa cara untuk melakukan multiple inputa ini, untuk kasus ini saya menggunakan cara memberikan jumlah masukan input.
Tampilan Masukan Jumlah Inputan
Sebelum melakukan inputan kita harus memasukan jumlah item yang akan di proses. menurut saya ini metode yang simpel untuk melakukan multiple inputan.
tahap-tahap yang dapat di atur adalah :
1. Download FrameWork CodeIgniter terlebih dahulu.
Download Disini
2. Buat Folder tempat pembuatannya.
3. Buat Sebuah database dengan .
script Database :
CREATE TABLE IF NOT EXISTS `buku` (
  `id` int(5) NOT NULL AUTO_INCREMENT,
  `penerbit` varchar(50) NOT NULL,
  `nama` varchar(100) NOT NULL,
  `tahun` year(4) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
4. Atur Konfigurasi pada CodeIgniter dengan Database anda
path : application/config/database.php 
$db['default']['hostname'] = 'localhost'; // Masukan sesuai dengan Host database
$db['default']['username'] = ''; // Masukan sesuai dengan user database
$db['default']['password'] = ''; // Masukan sesuai dengan password database
$db['default']['database'] = ''; // Masukan sesuai dengan Nama database
$db['default']['dbdriver'] = 'mysqli';
5.  Buat Sebuah Controller disini saya beri nama Buku.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Buku extends CI_Controller {

function add_multiple() {
        if($_POST==NULL) {
            $this->load->view('add_multiple');
        }else {
            redirect('Buku/add_multiple_post/'.$_POST['banyak_data']);
        }
    }
    function add_multiple_post($banyak_data=0) {
        if($_POST==NULL) {
            $data['banyak_data'] = $banyak_data;
            $this->load->view('add_multiple_form',$data);
        }else {
            foreach($_POST['data'] as $d){
                $this->db->insert('buku',$d);
            }
            redirect('Buku/lihat_data');
        }
    }
function lihat_data(){
        $data['buku'] = $this->db->get('buku')->result();
        $this->load->view('list_buku',$data);
    }
}
6. Buah File View add_multiple.php

<h2>Multiple Form Input Katalog Buku</h2><form action="" method="post">    Banyak Buku Yang kan dimasukan :    <input name="banyak_data" size="3" /> Buah<br />    <input type="submit" value="Lanjut" /></form>
7. Buat File view add_multiple_form.php

<h2>Multiple Form Input Katalog Buku</h2>
<form action="" method="post">
    <table>
        <tr>  
   <td>No</td>
            <td>Penerbit</td>
            <td>Nama Buku</td>
            <td>Tahun Terbit</td>
        </tr>
        <?php for($i=1;$i<=$banyak_data;$i++): ?>
        <tr>  <td><?= $i ?></td>
            <td><input type="text" name="data[<?= $i ?>][penerbit]" /></td>
            <td><input type="text" name="data[<?= $i ?>][nama]" /></td>
            <td><input type="text" name="data[<?= $i ?>][tahun]" /></td>
        </tr>
        <?php endfor ?>
    </table>
    <input type="submit" value="simpan" />
</form>

8. Buat File View list_buku.php

<h2>Daftar Katalog Buku</h2>
<table>
    <tr>
        <th>No</th>
        <th>Penerbit</th>
        <th>Nama Buku</th>
        <th>Tahun Terbit</th>
    </tr>
    <?php $i = 0 ?>
    <?php foreach($buku as $bk): ?>
    <tr>
        <td><?= $i++ ?></td>
        <td><?= $bk->penerbit ?></td>
        <td><?= $bk->nama ?></td>
        <td><?= $bk->tahun ?></td>
    </tr>
    <?php endforeach ?>
</table>
<?php echo anchor('Buku/add_multiple','Tambah Data') ?>
Download Script

Tidak ada komentar:

Posting Komentar