Form

Data combo box dari database

Untuk contoh ini, kita buat dulu table warna

create table warna(
  KodeWarna varchar(2),
  DescWarna varchar(10)
);

Lalu isi tablenya dengan data sebagai berikut :

INSERT INTO warna VALUES('MR','Merah'),('KN','Kuning'),('HJ','Hijau');

MODEL
Model digunakan untuk mengambil data dari database.
Buatlah sebuah file dengan nama mcombo.php dan simpan di folder
application/models/
Isi dari mcombo.php adalah sebagai berikut :

<?
class Mcombo extends Model {

   function Mcombo(){
    parent::Model();
    }

   function DaftarWarna(){
    $this->load->database();
    $this->db->from('warna');
    $query = $this->db->get();
    foreach ($query->result() as $row){
     $DtWarna[$row->KodeWarna] = $row->DescWarna;
     }
    return $DtWarna;
    }

}
?>

CONTROLLER
Buatlah sebuah file dengan nama combo.php dan simpan di folder
application/controllers/
Isi dari combo.php adalah sebagai berikut :

<?
class Combo extends Controller {

   function index(){
    $this->load->helper('form');
    $this->load->model('Mcombo');
    $data['Warna'] = $this->Mcombo->DaftarWarna();
    $this->load->view('v_combo',$data);
    }

}
?>

VIEW
Buatlah sebuah file dengan nama v_combo.php dan simpan di folder
application/views/
Isi dari v_combo.php adalah sebagai berikut :

<html>
<head>
<title>Combo Box dari database</title>
</head>
<body>
  <?=form_open('');
  echo form_dropdown('cbowarna', $Warna,'MR');
  echo form_close();
  ?>

</body>
</html>

Pada View di atas, untuk form_dropdown mempunyai keterangan sebagai berikut:
Nama : cbowarna
Datanya : berasal dari $Warna
Data yang dipilih : MR (Merah)

Membuat Form dengan Bantuan Form Helper

Berikut ini contoh :

 
Form sederhana tanpa Form Helper

Layout Form yang akan dibuat dapat dilihat di attachment file.
Di bawah ini kode HTML-nya

<html>
<head>
<title>Contoh Form Biasa</title>
</head>
<body>
  Contoh Form Biasa
  <form>
  <table border="0" cellpadding="2" cellspacing="1">
   <tr>
   <td>Nama</td><td>:</td><td><input type="text" name="fNama" size="10"/></td>
   </tr>
   <tr>
   <td>Password</td><td>:</td><td><input type="password" name="fPass" size="10"/></td>
   </tr>
   <tr>
   <td>Komentar</td><td>:</td><td><textarea cols="30" rows="5" name="fKomentar"></textarea></td>
   </tr>
   <tr>
   <td>Pilihan</td><td>:</td>
   <td>
   <select name="fpilihan">
   <option value="1" selected="selected">Januari</option>
   <option value="2">Februari</option>
   <option value="3">Maret</option>
   </select>
   </td>
   </tr>
   <tr><td>Pilihan Check Box</td><td>:</td><td><input type="checkbox" name="fpil1" value="pil1" checked="checked"/>Pilihan Pertama</td></tr>
   <tr><td></td><td></td><td><input type="checkbox" name="fpil2" value="pil2"/>Pilihan Kedua</td></tr>
   <tr><td></td><td></td><td></td></tr>
   <tr><td></td><td></td><td><button type="submit" name="btnOK">OK</button></td></tr>
   </table>
  </form>
</body>
</html>

 
Form sederhana dengan Form Helper

Controller
Buat sebuah file dengan nama form.php dan disimpan di application/controllers/
Isi file form.php adalah sebagai berikut :

<?
class Form extends Controller {
  function index(){
   // Load Form Helper
   $this->load->helper('form');
   // Ini Untuk Judulnya
   $data['title'] = 'Contoh Form menggunakan Form Helper';
   // Ini untuk Teks Box "Nama"
   $data['fNama'] = array('name'=>'fNama','size'=>10);
   // Ini untuk Teks Box "Password"
   $data['fPass'] = array('name'=>'fPass','size'=>10);
   // Ini text area untuk "Komentar"
   $data['fKomentar'] = array('name'=>'fKomentar','rows'=>5,'cols'=>30);
   // Ini untuk Combo Box Pilihan
   $data['fpilihan'] = array('1'=>'Januari','2'=>'Februari','3'=>'Maret');
   // Ini untuk Check Box
   $data['fpil1'] = array('name'=>'fpil1','value'=>'pil1');
   $data['fpil2'] = array('name'=>'fpil2','value'=>'pil2','checked'=>FALSE);    $this->load->view('v_form',$data);
   }
 }
?>

View
Buat sebuah file dengan nama v_form.php dan disimpan di application/views/
Isi file v_form.php adalah sebagai berikut :

<html>
<head>
<title><? echo $title; ?></title>
</head>
<body>
<? echo $title; ?>
<? echo form_open('input'); ?>
  <table border="0" cellpadding="2" cellspacing="1">
  <tr>
  <td>Nama</td><td>:</td><td><? echo form_input($fNama);?></td>
  </tr>
  <tr>
  <td>Password</td><td>:</td><td><? echo form_input($fPass);?></td>
  </tr>
  <tr>
  <td>Komentar</td><td>:</td><td><? echo form_textarea($fKomentar);?></td>
  </tr>
  <tr>
  <td>Pilihan</td><td>:</td>
  <td><? echo form_dropdown('fpilihan',$fpilihan,'1'); ?></td>
  </tr>
  <tr><td>Pilihan Check Box</td><td>:</td><td><? echo form_checkbox($fpil1); ?>Pilihan Pertama</td></tr>
  <tr><td></td><td></td><td><? echo form_checkbox($fpil2); ?>Pilihan Kedua</td></tr>
  <tr><td></td><td></td><td></td></tr>
  <tr><td></td><td></td><td><? echo form_submit('btnOK','OK');?></td></tr>
  </table>
<? echo form_close(); ?>
</body>
</html>

Tampilannya sama dengan tampilan pada saat tidak menggunakan Form Helper.
Untuk lebih lengkapnya dapat lihat CodeIgniter User Guide bagian Form Helper.

AttachmentSize
simpleform1.png11.82 KB