2017-09-06 7 views
0
while($row = $result->fetch_array()) { 
    array_push($json_result, 
    array('crewID'=>$row[0], 
    'FName'=>$row[1], 
    'LName'=>$row[2], 
    'smBook'=>$row[3], 
    'contactNo'=>$row[4], 
    'email'=>$row[5], 
    'address'=>$row[6], 
    'birthday'=>$row[7], 
    'emergencyCN'=>$row[8], 
    'emergencyPerson'=>$row[9], 
    'loyaltyCN'=>$row[10])); 
} 

echo json_encode(array($json_result),JSON_PRETTY_PRINT); 

にPHPからJSONエコーを取得できません。何が問題なの? jQueryのJSONの新機能です。私も、私のPHPでこのコードを持っている:

header("Content-Type: application/json", true); 

EDIT:

これはJSONです:

[ 
    { 
    "crewID": "4", 
    "FName": "Abc Abc", 
    "LName": "Abc", 
    "smBook": "ABC123", 
    "contactNo": "12312312", 
    "email": "[email protected]", 
    "address": "56 Sasdasd Asds", 
    "birthday": "1995-06-11", 
    "emergencyCN": "12312312", 
    "emergencyPerson": "asdasdasd", 
    "loyaltyCN": "ABC123" 
    } 
] 
+0

あなたはまた、少なくともあなたのPHPスクリプトの出力のスニペットを追加できますか? 'アレイ ( [0] =>配列 ( [0] =>配列 ( [crewID] => [します。FName] => [LNAME] => [smBook: – Shadow

+1

これはあなたの配列構造であります] => [contactNo] => [メール] => [住所] => [誕生日] => [emergencyCN] => [emergencyPerson] => [loyaltyCN] => ) ) ) ' 応答項目[0] [0] .FName'を使用して配列項目を取得します – diavolic

+0

console.log(応答)を追加します。 Ajaxの成功関数では、サーバー側から返された値を知るのに役立ちます。 – Lalit

答えて

2

私は問題がここにあると思います。

success: function(response){ 
    alert(response.FName); 
} 

結果が含まれている配列を返すことになります。 おそらく、上記を次のように変更してみてください。

success: function(response){ 
    alert(response[0].FName); 
} 

これは、配列の最初の結果にアクセスし、その内容はFName属性のアラート、その後のアクセスに移行します。

console.log(response)を使用すると、扱うオブジェクト全体を表示することができます。したがって、その使用方法を理解することができます。あなたは、出力JSONを提供しておりますので

を更新しました


、あなたがあなたの結果の配列を含む配列を持って表示されます。

console.logを使用している場合は、これをはっきりと確認できますが、2つのアレイをパンクチャするにはresponse[0][0].FNameが必要です。

+0

alert(response [0] .FName)を使用すると、応答は「未定義」でした –

+0

'console.log(response)'を試しましたか? – Shadow

+0

diavolicのコメントが機能します。ありがとうございました! –

関連する問題