У меня есть веб-приложение, построенное на Codeigniter, но я не знаю, какая версия это. Моя работа просто добавляет простую форму для этого веб-приложения. Форма должна выглядеть следующим образом:Форма Codeigniter не будет вставлять данные в базу данных
И тогда вот мой ВЗГЛЯД:
<div class="box">
<h4 class="white">ADD CIT Details</h4>
<div class="box-container">
<div class="modal-body form">
<form action="#" id="formcit" class="form-horizontal">
<?php echo form_open('insert_cit_ctrl'); ?>
<div class="form-body">
<?php if (isset($message)) { ?>
<CENTER><h3 style="color:green;">Data inserted successfully</h3></CENTER><br>
<?php } ?>
<div class="form-group">
<label class="control-label col-md-3">Terminal ID</label> <?php echo form_error('dterminalid'); ?>
<div class="col-md-9">
<?php echo form_input(array('id' => 'dterminalid', 'name' => 'dterminalid')); ?>
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3">CIT</label>
<div class="col-md-9">
<select class="form-control" id="selectcit" >
<option value="none">-- Select CIT --</option>
<option value="CMS">1. CMS</option>
<option value="ALPHA">2. ALPHA</option>
</select>
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3">Branch</label> <?php echo form_error('dbranch'); ?>
<div class="col-md-9">
<?php echo form_input(array('id' => 'dbranch', 'name' => 'dbranch')); ?>
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3">COMM</label> <?php echo form_error('dcomm'); ?>
<div class="col-md-9">
<?php echo form_input(array('id' => 'dcomm', 'name' => 'dcomm')); ?>
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3">Machine Type</label> <?php echo form_error('dmachinetype'); ?>
<div class="col-md-9">
<?php echo form_input(array('id' => 'dmachinetype', 'name' => 'dmachinetype')); ?>
</div>
</div>
<?php echo form_submit(array('id' => 'submit', 'value' => 'Submit')); ?>
</div>
<?php echo form_close(); ?>
</form>
</div>
</div><!-- end of div.box-container -->
</div> <!-- end of div.box -->
И тогда это мой контроллер:
function insert_cit_ctrl() {
$this->load->library('form_validation');
$this->form_validation->set_error_delimiters('<div class="error">', '</div>');
$this->form_validation->set_rules('dterminalid', 'Terminal ID', 'required');
$this->form_validation->set_rules('dcit', 'CIT', 'required');
$this->form_validation->set_rules('dbranch', 'Branch', 'required');
$this->form_validation->set_rules('dcomm', 'COMM', 'required');
$this->form_validation->set_rules('dmachinetype', 'Machine Type', 'required');
if ($this->form_validation->run() == FALSE) {
echo "<script>alert('Something wrong with your input');</script>";
} else {
//Setting values for tabel columns
$data = array(
'terminal_id' => $this->input->post('dterminalid'),
'cit' => $this->input->post('dcit'),
'branch' => $this->input->post('dbranch'),
'comm' => $this->input->post('dcomm'),
'machine_type' => $this->input->post('dmachinetype')
);
//Transfering data to Model
$this->cit_model->modeladdcit($data);
$data['message'] = 'Data Inserted Successfully';
//Loading View
$this->load->view('template', $data);
}
}
А вот моя модель :
<?php
class Cit_model extends CI_Model{
function __construct() {
parent::__construct();
}
function modeladdcit($data){
$this->load->database('database_office', 'TRUE');
$this->db->insert('tbl_cit', $data);
}
}
?>
И результат? Вот моя база данных:
Там нет ошибки на всех. Просто после того, как я отправлю данные, он не появится в моей базе данных, а не отдельные данные. Значит, эти данные даже не INSERT INTO в базе данных.
Я не понимаю. Что не так с моим кодом?
UPDATE:
Хорошо, так что я следовал ваши советы, ребята, как это:
<form action="<?php echo base_url("evangelion/insert_cit_ctrl"); ?>" id="formcit" method="POST" class="form-horizontal">
Что произошло на самом деле было ... НИЧЕГО. Я имею в виду, что данные все еще не вставлены в базу данных. И хуже того, страница разрушена, она вызвала только функцию, а не всю страницу, как она привыкла.
Здравствуйте, я обновил свой пост, вы можете помочь мне еще раз? –
показать свою ошибку, затем я попытаюсь решить –