如何使用Ajax将变量从PHP发送到javascript?

问题描述 投票:1回答:1

所以我有一个PHP文件,我从数据库中获取数据。我还有一个JavaScript文件,我在其中发出ajax请求。一切都还可以,但是当我回应它时,我想阻止JSON进入我的网页。我只想在Javascript中使用JSON。这是我的代码:

使用Javascript:

$(document).ready(function() {
  var url = "../../DB/get-data.php";
    $.ajax({
      type: "POST",
      url: url,
      success: function(data){
         var mydata = jQuery.parseJSON(data);
         console.log(mydata);
      }
    });
});

PHP:

$sql = "SELECT * FROM animals ORDER BY age DESC";
$result = $conn->query($sql);
$animals = [];
while($row = $result->fetch_assoc()) {
  $animal = new Animals($row['name'], $row['species'], $row['color'], $row['age']);
  array_push($animals, $animal);
}
echo json_encode($animals);
javascript php jquery json ajax
1个回答
1
投票

您可以将两个文件分开,即在没有echo的情况下获取数据的文件:

得到-data.php

$sql = "SELECT * FROM animals ORDER BY age DESC";
$result = $conn->query($sql);
$animals = [];
while($row = $result->fetch_assoc()) {
  $animal = new Animals($row['name'], $row['species'], $row['color'], $row['age']);
  array_push($animals, $animal);
}

另一个JSON结果文件实现了echo语句并包含第一个:

得到数据,json.php

include 'you_path_here/get-data.php';

echo json_encode($animals);

然后JS代码中的URL变量应该调用JSON路由,如:

var url = "../../DB/get-data-json.php";
© www.soinside.com 2019 - 2024. All rights reserved.