2015-02-06 2 views
0

У меня простая настройка формы. Он отображается хорошо, и когда я нажимаю submit, похоже, что он работает, но когда я иду проверять данные в MSSQL Server, его там нет. Я не уверен, почему он не работает.Данные формы codeignign не вставляются в базу данных MSSQL

Контроллер insert.php

<?php 
class insert extends CI_Controller { 
function __construct() { 
parent::__construct(); 
$this->load->model('insert_model'); 
} 

function index() 
{ 
// Including Validation Library 
$this->load->library('form_validation'); 
$this->form_validation->set_error_delimiters('<div class="error">', '</div>'); 
// Validating Name Field 
$this->form_validation->set_rules('EmpName', 'Employee_Name', 'required|min_length[3]|max_length[15]'); 
// Validating Email Field 
$this->form_validation->set_rules('Department', 'Department', 'required|min_length[3]|max_length[15]'); 
// Validating Email Field 
$this->form_validation->set_rules('LanID', 'LanID', 'required|min_length[3]|max_length[15]'); 
if ($this->form_validation->run() == FALSE) 
{ 
$this->load->view('insert_view'); 
} 
else 
{ 
// Setting Values For Tabel Columns 
$data = array(
'Employee_Name' => $this->input->post('EmpName'), 
'Department' => $this->input->post('Department'), 
'LanID' => $this->input->post('LanID'), 
); 
// Transfering Data To Model 
$this->insert_model->form_insert($data); 
// Loading View 
$this->load->view('insert_view'); 
} 
} 
} 
?> 

Модель insert_model.php

<?php 
class insert_model extends CI_Model{ 
function __construct() { 
parent::__construct(); 
} 
function form_insert($data){ 
// Inserting in Table(requests) of Database(employee) 
$this->db->insert('requests', $data); 
} 
} 
?> 

Смотреть это insert_view.php

<html> 
<head> 
<title>Insert Data Into Database Using CodeIgniter Form</title> 

</head> 
<body> 
<div id="container"> 
<?php echo form_open('insert'); ?> 
<h1>Insert Data Into Database Using CodeIgniter</h1> 
<?php echo form_label('Employee Name :'); ?> <?php echo form_error('EmpName'); ?> 
<?php echo form_input(array('id' => 'EmpName', 'name' => 'EmpName')); ?> 
<?php echo form_label('Department :'); ?> <?php echo form_error('Department'); ?> 
<?php echo form_input(array('id' => 'Department', 'name' => 'Department')); ?> 
<?php echo form_label('LanID :'); ?> <?php echo form_error('LanID'); ?> 
<?php echo form_input(array('id' => 'LanID', 'name' => 'LanID')); ?> 
<?php echo form_submit(array('id' => 'submit', 'value' => 'Submit'));?> 
<?php echo form_close(); ?> 
</div> 
</body> 
</html> 

ответ

0

вы пробовали отладки?

в контроллере:

$data = array(
'Employee_Name' => $this->input->post('EmpName'), 
'Department' => $this->input->post('Department'), 
'LanID' => $this->input->post('LanID'), 
); 

делает все индекс массива совпадает именно с именем столбца таблицы базы данных в?

в модели:

print_r($data); 

перед:

$this->db->insert('requests', $data); 

если $ данных содержит данные, попробуйте установить функцию.

$this->db->set('Employee_Name', $EmpName); 
$this->db->set('Department', $Department); 
$this->db->set('LanID', $LanID); 
$this->db->insert('requests'); 

попытка отладки ...

+0

Вы были правы ти я пытаюсь научиться, и мне нужно, чтобы научиться отлаживать больше. Я не умею отлаживать, мне может понадобиться взять класс при отладке – Donny

+0

не ошибаюсь ... Я отлаживал небольшую проблему почти 30 часов ... наконец нашел маленького ... это худшее в мире.... – Shuhail

Смежные вопросы