I got an error that says:
A Database Error Occurred Error Number: 1048
Column 'namabank' cannot be null INSERT INTO mt_bank
(idbank
, namabank
) VALUES (NULL, NULL)
Filename: C:/xampp5/htdocs/simastupen/system/database/DB_driver.php
Line Number: 691
i filled the form before submitting.
idbank type is int and is primary key and Auto increment, namabank type is varchar
my controller: controller/bankdatel.php
public function tambahbank()
{
$this->load->view('template/header');
$this->load->view('form/form_tambah_bank');
$this->load->view('template/footer');
$this->load->model('model_bankdatel');
$arrdata = array(
'idbank' => $this->input->post(''),
'namabank' => $this->input->post('namabank')
);
$this->load->model('model_bankdatel');
$this->model_bankdatel->insert($arrdata);
$this->session->set_flashdata('info', "<script>alert('Data Bank Berhasil Disimpan');</script>");
redirect('bankdatel');
}
my view: view/form/form_tambah_bank.php
<form action="<?php echo site_url('bankdatel/tambahbank')?>" method="post">
<div class="box-body">
<div class="form-group">
<label>Nama Bank: </label>
<input name="namabank" type="text" class="form-control" placeholder="">
</div>
<div class="box-footer">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</form>
My Model: model/model_bankdatel.php
public function insert($data){
$this->db->insert('mt_bank', $data);
}
You should check whether there is $_POST
data available. If so, do the db insert, otherwise the insert query will work when each time you call the url bankdatel/tambahbank
for load form.
public function tambahbank()
{
if ($this->input->post()) { #Check post data available
$this->load->model('model_bankdatel');
$arrdata = array(
'idbank' => $this->input->post(''),
'namabank' => $this->input->post('namabank')
);
$this->model_bankdatel->insert($arrdata);
$this->session->set_flashdata('info', "<script>alert('Data Bank Berhasil Disimpan');</script>");
redirect('bankdatel');
}
$this->load->view('template/header');
$this->load->view('form/form_tambah_bank');
$this->load->view('template/footer');
}
You should also implement form validation
The error clearly explains the problem, that namabank column cannot have null values. Go to phpmyadmin and uncheck the null column for namabank to allow nulls.