Menambahkan atau Insert Data ke Database dengan Code Igniter (CRUD bagian 2)

Pada tutorial kemaren kita udah bisa menampilkan data dari database dengan code igniter. Next step adalah insert data ke database. Untuk mengikuti tutorial ini sebaiknya Anda telah membaca tutorial sebelumnya Menampilkan Data dari Database dengan Code Igniter untuk Pemula

  1. Pertama kita buka file controller yang telah kita buat, con_mahasiswa.php. Kemudian edit menjadi seperti ini.
    <?php
    Class Con_mahasiswa extends Controller {	
        function con_mahasiswa()  
        {  
            parent::Controller();  
    		$this->load->model('mod_mahasiswa');
    		$this->load->helper(array('url','form'));
        }
    	function index() {
    		$data['hasil'] = $this->mod_mahasiswa->getall();
    		$this->load->view('view_mahasiswa', $data);
    	}
    	
    	function tambahdata() {
    		if($this->input->post('submit')){
    			$this->mod_mahasiswa->tambah();
    			redirect('con_mahasiswa');
    		}
    		$this->load->view('tambah_mahasiswa');
    	}
    }
    ?>
    


    Ket : Baris ke 7, load form yang telah disediakan code igniter untuk membuat form inputan. Baris 14-20, fungsi untuk menambah data mahasiswa. Jika di klik tombol submit, maka jalankan fungsi tambah yang ada di model mod_mahasiswa.php.

  2. Kemudian kita ubah model mod_mahasiswa.php untuk membuat fungsi tambah.
    <?php
    class Mod_mahasiswa extends Model {	
    	function getall() {
    		$ambildata = $this->db->get('tb_mahasiswa');
    		//jika data ada (lebih dari 0)
    		if ($ambildata->num_rows() > 0 ) {
    			foreach ($ambildata->result() as $data) {
    				$hasil[] = $data;
    			}
    			return $hasil;
    		}
    	}
    
    	function tambah() {
    		$nim = $this->input->post('nim');
    		$nama  = $this->input->post('nama');
    		$alamat = $this->input->post('alamat');
    		$email = $this->input->post('email');
    		$data = array (
    			'nim' => $nim,
    			'nama'  => $nama,
    			'alamat'=> $alamat,
    			'email' => $email
    		);	
    		$this->db->insert('tb_mahasiswa',$data);
    	}
    }
    ?>
    

    Ket : Baris 15-18, kita buat variabel dari nim, nama, alamat dan email yang didapat dari form inputan. Baris 19-24, variabel tersebut dijadikan array. Baris 25, melakukan insert data ke tabel tb_mahasiswa

  3. Yang terakhir kita tambahkan view dan beri nama tambah_mahasiswa.php. Tuliskan code berikut ini.
    <html>
    <head>
    <title>Form Tambah Data Mahasiswa</title>
    <base href="<?php echo base_url(); ?>" />
    </head>
    <body>
    <h3>Tambah Data Mahasiswa</h3>
    <?php echo form_open('con_mahasiswa/tambahdata'); ?>
    <table>
    <tr>
        <td> NIM </td>
        <td> <?php echo form_input('nim'); ?> </td>
    </tr>
    <tr>
        <td> Nama </td>
        <td> <?php echo form_input('nama'); ?> </td>
    </tr>
    <tr>
        <td> Alamat </td>
        <td> <?php echo form_input('alamat'); ?> </td>
    </tr>
    <tr>
        <td> Email </td>
        <td> <?php echo form_input('email'); ?> </td>
    </tr>
    <tr>
        <td> </td>
        <td> <?php echo form_submit('submit', 'Tambah'); ?> </td>
    </tr>
    </table>
    <?php echo form_close(); ?>
    
    </form>
    </body>
    </html>
    
  4. Coba buka http://localhost/mycodeigniter/con_mahasiswa/tambahdata dan isikan form nya.
  5. Oh iya, kita buat link tambah data di view view_mahasiswa.php yuk. Buka file tersebut dan tambahkan pada baris ke 8 link menuju form inputan.
    <?php
    if (empty($hasil)) {
    	echo "Tidak ada data mahasiswa";
    }
    else {
    ?>
    <h3> Daftar Mahasiswa </h3>
    <?php echo anchor('con_mahasiswa/tambahdata', '+ Tambah Data'); ?>
    <table>
    <tr bgcolor="FF8844">
    	<th> No </th>
    	<th> Nim </th>
    	<th> Nama </th>
    	<th> Alamat </th>
    	<th> Email </th>
    </tr>
    <?php
    $no = 1;
    foreach ($hasil as $data):
    ?>
    <tr>
    	<td> <?php echo $no; ?> </td>
    	<td> <?php echo $data->nim; ?> </td>
    	<td> <?php echo $data->nama; ?> </td>
    	<td> <?php echo $data->alamat; ?> </td>
    	<td> <?php echo $data->email; ?> </td>
    </tr>
    <?php
    $no++;
    endforeach;
    ?>
    </table>
    <?php
    }
    ?>
    

    Coba buka http://localhost/mycodeigniter/con_mahasiswa

    Menambah atau Insert Data ke Database dengan Code Igniter

    Menambah atau Insert Data ke Database dengan Code Igniter

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

%d bloggers like this: