2017-01-27 2 views
0

Это моя форма:Мой контроллер делает NULL данных формы с использованием codeigniter3

<form method = "POST" action = "<?php echo base_url('Usercontroller/insert') ?>"> 
 
    <div class="form-group"> 
 
    <label for="exampleInputEmail1">Apartament</label> 
 
    <input type="text" name ="txtApartament" class="form-control" id="txtApartament" placeholder="Apartament"> 
 
    </div> 
 
    <div class="form-group"> 
 
    <label for="exampleInputPassword1">Status</label> 
 
     <select name ="txtStatus" class="form-control"> 
 
     <?php foreach($getStatus as $value) { ?> 
 
     <option value = "<?php echo $value->per_id ?>"><?php echo $value->status_name;?></option> 
 
     <?php }?> 
 
    </select> 
 
    </div> 
 
    <div class="form-group"> 
 
    <label for="exampleInputPassword1">Nume</label> 
 
    <input type="text" name ="txtNume" class="form-control" id="txtNume" placeholder="Nume"> 
 
    </div> 
 
    <div class="form-group"> 
 
    <label for="exampleInputPassword1">Persoane</label> 
 
    <input type="text" name ="txtPersoane" class="form-control" id="txtPersoane" placeholder="Personae"> 
 
    </div> 
 
    <div class="form-group"> 
 
    <label for="exampleInputPassword1">Mp</label> 
 
    <input type="text" name ="txtMp" class="form-control" id="txtMp" placeholder="Mp"> 
 
    </div> 
 
    <div class="form-group"> 
 
    <label for="exampleInputPassword1">Comentariu</label> 
 
    <input type="text" name ="txtComentariu" class="form-control" id="txtComentariu" placeholder="Comentariu"> 
 
    </div> 
 
    <button type="submit" class="btn btn-default">Salveaza</button> 
 
</form>

И это мой контроллер функция вставки сторона:

public function insert() { 
    $datai= $this->input->post(); 

    if(isset($datai)){ 
     $txtApartament = $datai['txtApartament']; 
     $txtStatus = $datai['txtStatus']; 
     $txtNume = $datai['txtNume']; 
     $txtPersoane = $datai['txtPersoane']; 
     $txtMp = $datai['txtMp']; 
     $txtComentariu = $datai['txtComentariu']; 
     $this->Usermodel->insertUser($txtApartament,$txtStatus,$txtNume,$txtPersoane,$txtMp,$txtComentariu); 
     redirect(''); 
    } 
} 

сторона Модель:

public function insertUser($apartament, $status, $nume, $persoane, $mp, $comentariu){ 

    $arrayDates = array(
     'apartament' => $apartament, 
     'per_id' => $status, 
     'nume' => $nume, 
     'persoane' => $persoane, 
     'mp' => $mp, 
     'comentariu' => $comentariu 
    ); 

    $this->db->insert('membri', $arrayDates); 

} 

Когда я представлю на моем форуме я получаю это:

A Database Error Occurred 

Error Number: 1048 

Column 'apartament' cannot be null 

INSERT INTO `membri` (`apartament`, `per_id`, `nume`, `persoane`,  `mp`, `comentariu`) VALUES (NULL, NULL, NULL, NULL, NULL, NULL) 

Filename: models/Usermodel.php 

Line Number: 28 

Кроме этого:

A PHP Error was encountered 

Severity: Notice 

Message: Undefined index: txtApartament 

Filename: controllers/Usercontroller.php 

Line Number: 18 

Backtrace: 

File: /var/www/html/adminigniter1/application/controllers/Usercontroller.php 
Line: 18 
Function: _error_handler 

File: /var/www/html/adminigniter1/index.php 
Line: 315 
Function: require_once 

Когда мой контроллер получает данные, сделает это NULL, моя форма правильно передает данные (проверьте заголовки), что может быть проблемой на стороне контроллера?

И да, я установил помощника с URL-адресом и формой!

+0

Покажите нам свою структуру стола. –

+0

Вы перенаправляетесь в середине запроса? вы можете добавить условие к своему блоку isset(), чтобы узнать, является ли это запросом POST/PUT. –

+0

У меня проблема с табличной структурой. , –

ответ

0

Я нашел решение, не из моего кода, он был apache2 ...

в файле rewrite.load в апача, я добавил строку:

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so 

И это сработало !

+0

Так было перенаправление :) –

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