2012-04-15 14 views
-1

post.js取得POSTデータは、AJAX/jQueryの

$.post(
    "/scripts/update.php", 
    {id: testId, age: testAge}, 
    function(data) { 
    $(".testDiv").html(data.testId); 
    $(".testDiv2").html(data.testAge); 
    }, 
    "json" 
); 

update.php

$userId = $_POST["id"]; 
$userAge = $_POST["age"]; 

// contact database and retrieve user Id and user name... 

echo json_encode(array("testId"=>$userId, "testAge"=>$userAge)); 

私は私がうまくupdate.phpに情報を渡すことができ, "json");コードを取り出すことがあったが、あれば取得できませんバック任意のデータ。 jsonを追加した後、データを取得または送信できません...

私は間違っていますか?

+0

data.testId&data.testAgeがupdate.phpをそこからそれぞれの値を返しません。 –

答えて

0

data.testIdにアクセスしている場合は、jQueryのポストコールの結果として、update.phpから受け取ったレスポンス(あなたの例ではdataという変数に格納されています)にアクセスしていることを意味します。 jSonというデータ型に言及することで、サーバーからの応答がjSon形式に変換されることを確認しています。

あなたのupdate.phpをページはこの

{ "id": "3","age":"53"} 

のようなJSONを返しているなら、あなたはdata.iddata.ageなどのindidual値にアクセスすることができます。

以下のコードは、あなたのような

$.post("/scripts/update.php", { id: testId, age: testAge}, dataType:"json",function(data) { 
    $(.testDiv).html(data.id); 
}); 
3

上のサーバーのページから戻って有効なJSONを持っている場合、私は$アヤックス機能がニーズに適しことだと思う動作するはずです:

$.ajax({ 
    type: "POST", 
    url: "/scripts/update.php", 
    data: {id: testId, age: testAge}, 
    dataType: "json", 
    success: function(data) { 
     $(".testDiv").html(data['testId']); 
     $(".testDiv2").html(data['testAge']); 
    } 
}); 

あなたのPHPスクリプトは同じままです。私は あなたが受け取ったエラーに関する情報をほとんど与えなかったので、コードを提供しています。 camus氏はすでにエラーが何かに関する詳細情報を提供していると述べています。

0

私はgimg1 @言ったが、このように何をするだろう:

var form_data = { 
      testId: $("#testIdForm").val(), 
      testAge: $("#testAgeForm").val() 
     }; 
$.ajax({ 
    type: "POST", 
    url: "/scripts/update.php", 
    data: {id: testId, age: testAge}, 
    dataType: form_data, 
    success: function(response) { 
     if(response == 'success'){ 
      //do success function here 
     } 
    } 
}); 
関連する問題