Tutorial CRUD CodeIgniter Dengan Bootstrap 4 : Input Data ke Database - Halo teman-teman, pada artikel kali ini kita akan melanjutkan dari sesi sebelumnya yaitu menampilkan data dari Database. Pada artikel kali ini kita semua akan belajar bersama-sama tentang bagaimana cara memasukkan data ke Database.
Oke langsung saja kita buat 2 function baru didalam file Siswa.php
di folder application/controllers, silahkan tambahkan function dibawah ini didalam Class Siswa
:
public function tambah()
{
//load view
$this->load->view('tambah_siswa');
}
public function simpan()
{
//load model
$this->load->model('m_siswa');
//get data dari form
$nisn = $this->input->post('nisn');
$nama_lengkap = $this->input->post('nama_lengkap');
$alamat = $this->input->post('alamat');
$data = array(
'nisn' => $nisn,
'nama_lengkap' => $nama_lengkap,
'alamat' => $alamat
);
//insert data via model
$this->m_siswa->simpan_siswa($data);
//redirect ke controller siswa
redirect('siswa');
}
Jadi jika ditulis secara lengkap file controller Siswa.php
seperti berikut ini :
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Siswa extends CI_Controller {
public function index()
{
//load model
$this->load->model('m_siswa');
$data = array(
'data_siswa' => $this->m_siswa->get_siswa()->result()
);
//load view
$this->load->view('data_siswa', $data);
}
public function tambah()
{
//load view
$this->load->view('tambah_siswa');
}
public function simpan()
{
//load model
$this->load->model('m_siswa');
//get data dari form
$nisn = $this->input->post('nisn');
$nama_lengkap = $this->input->post('nama_lengkap');
$alamat = $this->input->post('alamat');
$data = array(
'nisn' => $nisn,
'nama_lengkap' => $nama_lengkap,
'alamat' => $alamat
);
//insert data via model
$this->m_siswa->simpan_siswa($data);
//redirect ke controller siswa
redirect('siswa');
}
}
Jadi pada kode diatas kita menambahkan 2 function baru didalam Class Siswa
yaitu function tambah
dan function simpan
.
Sekarang kita juga akan menambahkan sebuah function baru di file M_siswa.php
didalam folder application/models, berikut function tambahannya:
public function simpan_siswa($data)
{
//insert data
return $this->db->insert("tbl_siswa", $data);
}
Jadi jika ditulisakan secara lengkap kurang lebih seperti berikut ini :
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class M_siswa extends CI_Model {
public function get_siswa()
{
//select semua data siswa
$this->db->select('*');
$this->db->from('tbl_siswa');
$this->db->order_by('id_siswa', 'DESC');
return $this->db->get();
}
public function simpan_siswa($data)
{
//insert data
return $this->db->insert("tbl_siswa", $data);
}
}
Dan yang terakhir adalah membuat sebuah view baru dengan nama tambah_siswa.php
didalam folder application/views dan silahkan masukkan kode berikut ini :
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
<title>Tambah Siswa</title>
</head>
<body>
<div class="container" style="margin-top: 80px">
<div class="row">
<div class="col-md-8 offset-md-2">
<div class="card">
<div class="card-header">
TAMBAH SISWA
</div>
<div class="card-body">
<form action="<?php echo base_url() ?>index.php/siswa/simpan" method="POST">
<div class="form-group">
<label>NISN</label>
<input type="text" name="nisn" placeholder="Masukkan NISN Siswa" class="form-control">
</div>
<div class="form-group">
<label>Nama Lengkap</label>
<input type="text" name="nama_lengkap" placeholder="Masukkan Nama Siswa" class="form-control">
</div>
<div class="form-group">
<label>Alamat</label>
<textarea class="form-control" name="alamat" placeholder="Masukkan Alamat Siswa" rows="4"></textarea>
</div>
<button type="submit" class="btn btn-success">SIMPAN</button>
<button type="reset" class="btn btn-warning">RESET</button>
</form>
</div>
</div>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.4.1.slim.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>
</body>
</html>
Sekarang coba kalian jalankan dengan mengetikkan http://localhost/ci-sekolah/index.php/siswa/tambah, maka kurang lebih tampilannya seperti berikut ini :
Dan sekarang kalian coba menginput data dan jika berhasil maka kurang lebih tampilannya seperti gambar dibawah ini :
Sampai disini, untuk artikel tentang edit dan update ke database kita akan belajar bersama-sama di artikel selanjutnya. Terimas Kasih