javascript - 如何使用 Ajax 将变量从 PHP 发送到 javascript?
问题描述
所以我有一个 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);
解决方案
您可以将这两个文件分开,即获取数据的文件没有echo
:
获取数据.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";
推荐阅读
- flutter - Flutter webview - 阻止特定页面的打开
- angular - Angular 类型 LifecycleStateManager 没有 'ɵmod' 属性
- java - 为什么我想先显示的活动没有显示
- javascript - 复选框 jquery 使用 ajax 发送数据并保存在 php 中不插入
- java - HikariPool-1 - 池初始化期间出现异常,但我的 application.properties 中有正确的信息
- mongodb - MongoDB索引有什么用?
- python - 如何使用 date.range 创建列和绘图?
- r - 我试图比较有关 Soc 媒体的组以进行营销分析评估,但我被卡住了
- angular - 多个组件将节点与标记名按钮匹配
- flutter - Flutter Null 安全迁移说“包不存在”