php - ajax 调用返回 NULL
问题描述
我正在玩 AJAX 调用。我尝试将数据传递给 sql 查询并在我的 JS 文件中接收回数据。不知何故,错误函数总是在 JavaScript 中被调用
而 XHR 标头在预览中返回:Array ( [address] => Street 12 [name] => twelve [id] => 12 [surname] => twelve )
文件 data_3.php
<?php
require 'assets/external/db.php';
$data = file_get_contents('php://input');
$data = json_decode($data, true);
$id = $data['id'];
$queryData = $mysqli->prepare("
SELECT
id
FROM
listing
WHERE id = ?
");
$queryData->bind_param('s', $id);
$queryData->execute();
$data = $queryData->get_result();
$data = mysqli_fetch_all($data, MYSQLI_ASSOC);
mysqli_close($mysqli);
echo json_encode($data);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script type="text/javascript" src="assets/js/json_test.js"></script>
<script>
var ajaxData = {
"address": "Street 12",
"name": "twelve",
"id": 12,
"surname": "twelve"
};
loadData('assets/external/data_3.php', ajaxData);
</script>
文件 json_test.js
function loadData(url, ajaxData) {
console.log('JS loaded');
$.ajax({
url: url,
type: "POST",
data: JSON.stringify(ajaxData),
async: false,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (results) {
console.log(results);
},
error: function (e) {
console.log(e);
}
});
}
如何正确调用 sql 查询,以便填充 $id 并将结果返回到 JS 函数 loadData?
解决方案
通过将 sql 部分拆分为新文件解决的问题
推荐阅读
- c++ - std::less 的严格总顺序
- three.js - 在threejs点云上画上千张小图
- python - 我想选择所有小于 50 的值我该怎么做
- google-workspace - 发送电子邮件的地址列表
- sql - 如何实现同一张表的一对多关系?
- python - python:实例化模块中的所有子类及其函数输出
- javascript - 如何在mongo DB聚合管道中查询数组中元素的出现
- highcharts - 如果我使用“addSeries”将系列放入图表中,highcharts 中的“adaptToUpdatedData: false”将不起作用
- reactjs - 使用 UseState 提交 ReactJS 表单
- javascript - 为什么动态添加的 JS 和 CSS 不起作用?