2016-05-27 9 views
0

ビューファイルのボタンをクリックするとデータベースを更新したいと思います。AJAXを使用してCodeigniterのOnclickデータベースをアップデート

VIEW

<tbody> 
    <?php 
    foreach($leavelist->result() as $key){ 
    echo '<tr> 
    <td>'.$key->emp_id.'</td> 
    <td>'.$key->status.'</td> 
    <td><a id="a'.$key->emp_id.'" onclick="Approved(\''.$key->id.'\')" title="Approve" role="button" class="btn btn-sm btn-success" data-toggle="modal" success><i class="fa fa-check"></i></a></td> 
    </tr>'; 
    } 
?> 
</tbody> 


<script> 
function Approved(id){ 

    butId = $(this).attr('id'); 

    $.ajax({ 
      method: "POST", 
      url: "<?php echo $this->config->item("index_url")."Admin/ApproveLeave";?>", 
      data: { "rowid": butId }, 
      dataType:"text", 
      success:function(data){ 
       alert(data); 
      }, 
      error:function (data){ 
       alert("failed"); 
      } 
     }); 

} 
</script> 

CONTROLLER

public function ApproveLeave(){ 
     $this->load->database(); 
     $this->load->model('general_model','gm'); 
     $inputdata=array('status'=>'Approved'); 
     $params=array('table_name'=>'leave_application','primary_key'=>'id'); 
     $this->gm->initialize($params); 
     $this->gm->updateEntry($_POST['rowid'],$inputdata); 
    } 

以上が私のAJAXとコントローラのコードです。ボタンをクリックすると、未定義インデックスが表示されます。私がここで間違っているところに誰でも助けてくれる?

+0

は、あなたが ''承認() '関数で' butIdなっていますか? – Poonam

+0

いいえ、私はそうではありません。別のものに変更することはできますか? – Kirataka

答えて

0

私の理解によると、あなたはbutIdを正しく取得していないと思います。

はこれを試してみてください:

<tbody> 
    <?php 
    foreach($leavelist->result() as $key){ 
    echo '<tr> 
    <td>'.$key->emp_id.'</td> 
    <td>'.$key->status.'</td> 
    <td><a id="a'.$key->emp_id.'" onclick="Approved(a'.$key->emp_id.')" title="Approve" role="button" class="btn btn-sm btn-success" data-toggle="modal" success><i class="fa fa-check"></i></a></td> 
    </tr>'; 
    } 
?> 
</tbody> 


<script> 
function Approved(butId){ 


    $.ajax({ 
      method: "POST", 
      url: "<?php echo $this->config->item("index_url")."Admin/ApproveLeave";?>", 
      data: { rowid: butId }, 
      dataType:"text", 
      success:function(data){ 
       alert(data); 
      }, 
      error:function (data){ 
       alert("failed"); 
      } 
     }); 

} 
</script> 
+0

いいえ同じエラーが発生しています。コントローラの中に。私のコントローラのPHPファイルで 'Undefined index:rowid'を表示します – Kirataka

+0

' butId'が実際にそこにあることを確認する 'Approved()'関数の 'butId'に対して' alert'を行います。 – Poonam

+0

未定義を示しています。 – Kirataka

関連する問題