2011-10-25 9 views
0

私は単純なajaxリクエストを持っています。これはphpにデータを送り、phpはいくつかの成功データをいつものようにajaxに返します。たとえば、 var firstvalue = xxx; var secondvalue = xxx2; のAjaxajax関数にデータを返す

$.post("some.php",{value1 : firstvalue, value2 : secondvalue} function(data){ 
if(data) 
{ 
    alert(data); 
} 
else 
{ 
alert('error'); 
} 

}); 

PHPの(some.php)

id = S_GET['someid']; 
    impdata = $_GET['somegettabledata'] 
    value1 = $_POST['value1']; 
    value2 = $_POST['value2']; 

if (value1 === value2) 
    { 
    //this is my problem i want it to echo id and impdata but i don't know how 
    // to pass both of them 
    echo ""; 
    } 
else 
{ 
    echo "error"; 
} 

ので、どのようにして、PHPから返送されるデータのidとimpdataの両方を有することができます。このことがばかげていると申し訳ありません。あなたはJSONレスポンスを返し、JSで戻ってそれを読むことができます

多くのおかげ

答えて

2

echo json_encode(array(
    'id' => $id, 
    'impdata' => $impdata 
)); 
01あなたはJSON文字列を解析する必要がありますJavaScriptで

function(data){ 
    var myData = JSON.parse(data); 
    alert(myData.id); //other notation: myData['id'] 
    alert(myData.impdata); //other notation: myData['impdata'] 
} 

JSONパーサーは、次のページの一番下に見つけることができます:http://www.json.org/js.html

+0

おかげでうまく動作します。 –

+0

JQueryを使用している場合は、JSON.parse(data)の代わりにjQuery.parseJSON(data)関数を使用することもできます。 – lauhub

1

PHP:

echo json_encode(array('id' => $id, 'impdata' => $impdata)); 

JS:PHPで

alert(data['id']); 
alert(data['impdata']); 
関連する問題