2017-09-10 10 views
0

私のコードは常にajaxからcodeigniterにデータを送信できません。そして私は、これらのプロセスを警告していないが起こる...ajaxからcodeigniterへのデータ送信は常に失敗します

function saveToDatabase(val) { 

var datas = 321; 

$.ajax({ 
    url : base_url()+"/Update", 
    type : "POST", 
    dataType : "json", 
    data : {datas:data}, 
    success : function(data) { 
     // do something 
     alert("pass"); 
    }, 
    error : function(data) { 
     // do something 
     alert("fail"); 
    } 

}); 

と私は成功またはエラーの何にも来ない... plsはアヤックスからイム初心者を助けます。おかげでたくさんのstackoverflow

私のコントローラ:

public function update() 
{ 
    $account = $this->input->post('account'); 
    $passwd = $this->input->post('passwd'); 

    $this->model_site->UpdateTable('1', $account, $passwd); 

} 

私のモデル:

function UpdateTable($id, $compname, $industry) 
{ 
    $query = 'Update tb_company set company_name = $compname,  industry_type = $industry where id = $id'; 
    return $this->db->query($query); 
} 

私のルート:

$route['my-account/new-account/update'] = 'controller_welcome/update'; 

私のURL機能:

function base_url() { 
var pathparts = location.pathname.split('/'); 
if (location.host == 'localhost') { 
    var url = window.location; 

}else{ 
    var url = location.origin; // http://stackoverflow.com 

} 
return url; 

}

+0

コード内のいくつかのエラーがあります。あなたのAJAX URLは、私が見るように 'base_url( 'my-account/new-account/update')でなければなりません。第2に、あなたのコントローラは '$ _POST ['account']'と '$ _POST ['password']'というPOST変数を期待していますが、 '$ _POST ['datas']'を送信しています。第三に、あなたのコントローラは何かをAJAXに返すべきです。 – Tpojka

+0

申し訳ありません私はbase_url関数コードを表示することを忘れていました.. 私はすでにそれを表示する。 –

答えて

0
function saveToDatabase(val) { 
var account = "john"; 
var passwd = "123"; 
var datas = { 
       account: account, 
       passwd:passwd 
      } 

$.ajax({ 
    url : <?php echo base_url("controller_name/update"); ?>, 
    type : "POST", 
    dataType : "json", 
    data :datas, 
    success : function(data) { 
     // do something 
     alert("pass"); 
    }, 
    error : function(data) { 
     // do something 
     alert("fail"); 
    } 

}); 

お使いのコントローラ機能

public function update() 
{ 
    $account = $this->input->post('account'); 
    $passwd = $this->input->post('passwd'); 

    // Print Your Post Data At least when sending to update model function. 
    $this->model_site->UpdateTable('1', $account, $passwd); 

} 
+0

私はURコードを試していますが、私のコードは常に失敗して実行しています。 –

+0

あなたのコードをトレースまたはデバッグするだけです。それ以外の場合は結果が得られないことを確認してください –

関連する問題