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>

そして、これは私のコントローラinsert関数側である:

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

私は、解決策を見つけた私のコードからではなかった、それは... apacheの中rewrite.loadファイル内

apache2のだった、私はラインを追加しました:

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

をそして、それは働きました!

+0

それはリダイレクトだったので:) –

関連する問題