2017-08-25 79 views
0

我有问题从getjsonjquery ajax从数据库接收我的数据。该警报显示“数组”,但我希望它显示值$latArray。我究竟做错了什么?返回jquery ajax的两个值

这里是我的PHP:

<?php 

    include 'dbconnect.php'; 

    $query = "SELECT userLat, userLng FROM users"; 
    $result = mysqli_query($conn, $query); 
    while ($row = mysqli_fetch_assoc($result)) { 
      $latArray[] = $row['userLat']; 
      $lngArray[] = $row['userLng']; 
    } 

    echo json_encode(array("lat" => "$latArray", 
     "lng" => "$lngArray")); 

    mysqli_close($conn); 
?> 

,这里是我的javascript:

$.getJSON("homesearchplayers.php", function(data) { 
          alert("Value: " + data.lat); 
     }); 
+0

如果在函数内部放置'console.log(data)',输出是什么? –

+0

尝试'console.log(data.lat)' - 控制台中记录了什么(警报和朋友对调试无用) –

+0

当''''''''''代码中的变量时,您正在使用'$ latArray'作为字符串。将其更改为'array(“lat”=> $ latArray, “lng”=> $ lngArray)' – S4beR

回答

1
echo json_encode(array("lat" => "$latArray", 
    "lng" => "$lngArray")); 

将转变$latArray为字符串第一,和一个数组到字符串转换将导致成字符串"Array"。使用

echo json_encode(array("lat" => $latArray, "lng" => $lngArray)); 

代替。

+0

固定感谢,多爱 – Peslis