2016-06-22 5 views
1

私はPHP Codeigniterを使ってプロジェクトを進めています。 JQueryで変数をコントローラに送信するにはどうすればいいか知りたい。以下は私のコードですJQueryで変数をコントローラに渡す - PHP Codeigniter

<script> 
function Reset_User_Password(id){ 

    $.post("<?=base_url();?>WebAdmin/Reset_User_Password/id", {id: id}, function(page_response) 
    { 
    $(".modal-body").html(page_response); 
    }); 

} 
</script> 

ここでは、まず関数のパラメータから変数 'id'を取得しています。しかし、このコードを実行すると、データベースからの実際のユーザーIDの代わりに文字列 'id'が返されます。私はユーザーIDを表示したい。以下は、コントローラからの私の機能..です

public function Reset_User_Password() 
{ 
$data['admin_id'] = $this->uri->segment(3); 

$this->load->view('admin/user/reset_user_password', $data); 
} 

答えて

2

POST methodでデータを送信GET methodとしてURLに追加されていません。だからあなたは得ることができない$this->uri->segment()を使用しています。

代わり

$data['admin_id']=$this->input->post('id'); 
+1

で完璧作業です。ありがとうございました。 –

+0

あなたは大歓迎です@ AjmalRazeel – Saty

2

使用を使用

$this->input->post('id'); 

あなたが郵便法によりIDを掲示しているので、あなたが、あなたの関数内でminior miodificationを行う$this->uri->segment(3);を使用したい場合は$this->uri->segment(3);を使用しないでください

 $.post("<?=base_url();?>WebAdmin/Reset_User_Password/"+id, function(page_response) 
     { 
     $(".modal-body").html(page_response); 
    }); 
1

このコードを参考にしてください。それはそれは動作します私のエンド

function Reset_User_Password(){ 

    var currentpwd= document.getElementById("currentpwd").value; 

    var newpwd = document.getElementById("newpwd").value; 

    var cnfrmnewpwd = document.getElementById("cnfrmnewpwd").value; 

    var url = "<?php echo base_url('user/changepwd'); ?>" 

    $.ajax({ 

     type:"POST", 

     data:{currentpwd:currentpwd,newpwd:newpwd,cnfrmnewpwd:cnfrmnewpwd}, 

     url:url, 

     success:function(data){ 

      if(data){ 

      $('#newsleter').html(data); 

      } 
     } 

    }); 

} 
関連する問題