Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法从PHP获取到$.ajax的JSON回显_Javascript_Php_Jquery_Json_Ajax - Fatal编程技术网

Javascript 无法从PHP获取到$.ajax的JSON回显

Javascript 无法从PHP获取到$.ajax的JSON回显,javascript,php,jquery,json,ajax,Javascript,Php,Jquery,Json,Ajax,这是我的jQuery代码: 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'=>$

这是我的jQuery代码:

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);
现在我的问题是,当我警告任何JSON数据(如
FName
)时,我得到了一个未定义的错误。有什么问题吗?我是jQuery中JSON的新手。我的PHP中甚至有以下代码:

function displayGuestData(guestID) {
  $.ajax({
    url:"functions/f_get_guests_json.php",
    method:"POST",
    data:{guestID:guestID},
    dataType: "json",
    success:function(response) {
      alert(response.FName);
    }
  });
}
编辑:

这是JSON:

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

我认为问题就在这里

[
  {
    "crewID": "4",
    "FName": "Abc Abc",
    "LName": "Abc",
    "smBook": "ABC123",
    "contactNo": "12312312",
    "email": "asdasd@yahoo.com",
    "address": "56 Sasdasd Asds",
    "birthday": "1995-06-11",
    "emergencyCN": "12312312",
    "emergencyPerson": "asdasdasd",
    "loyaltyCN": "ABC123"
  }
]
据我所知,您正在返回一个包含结果的数组。 因此,也许你应该尝试将上述内容改为以下内容:

success: function(response){
    alert(response.FName);
}
这将访问数组中的第一个结果,并继续访问,然后警告它的
FName
属性的内容

使用
console.log(response)
可以很好地查看您处理的整个对象,从而了解如何使用它


更新 由于您已经提供了输出json,因此您似乎有一个包含结果数组的数组


如果您使用
console.log,您将能够清楚地看到这一点,但您需要
响应[0][0]。FName
来刺穿您的两个数组。

我认为问题就在这里

[
  {
    "crewID": "4",
    "FName": "Abc Abc",
    "LName": "Abc",
    "smBook": "ABC123",
    "contactNo": "12312312",
    "email": "asdasd@yahoo.com",
    "address": "56 Sasdasd Asds",
    "birthday": "1995-06-11",
    "emergencyCN": "12312312",
    "emergencyPerson": "asdasdasd",
    "loyaltyCN": "ABC123"
  }
]
据我所知,您正在返回一个包含结果的数组。 因此,也许你应该尝试将上述内容改为以下内容:

success: function(response){
    alert(response.FName);
}
这将访问数组中的第一个结果,并继续访问,然后警告它的
FName
属性的内容

使用
console.log(response)
可以很好地查看您处理的整个对象,从而了解如何使用它


更新 由于您已经提供了输出json,因此您似乎有一个包含结果数组的数组


如果您使用
console.log,您将能够清楚地看到这一点,但您需要
response[0][0]。FName
来穿透您的两个数组。

您是否可以至少添加一段php脚本输出?这是您的数组结构:
array([0]=>array([0]=>array)([crewID]=>[FName]=>[LName]=>[smBook]=>[contactNo]=>[email]=>[address]=>[Birth]=>[emergencyCN]=>[emergencyPerson]=>[loyaltyCN]=>)
使用
响应[0][0].FName
获取数组项添加控制台.log(响应);在成功中,ajax的函数将帮助您了解从服务器端返回的值。您还可以添加至少一段php脚本输出吗?这是您的数组结构:
array([0]=>array([0]=>array([crewID]=>FName]=>[LName]=>[smBook]=>[contactNo]=>[email]=>[address]=>[Birth]=>[emergencyCN]=>[emergencyPerson]=>[loyaltyCN]=>))
使用
response[0][0].FName
获取数组项add console.log(response);在成功中,ajax的函数将帮助您了解从服务器端返回的值。当我使用alert(response[0].FName)时,响应是“未定义”的,您是否尝试过
console.log(response)
?我认为花时间了解
console.log
。这样的问题很容易调试。当我使用alert(response[0].FName)时,响应是“未定义”的,您是否尝试过
console.log(response)
?我认为花时间学习
console.log将是非常值得的。它使这样的问题很容易调试。