Javascript 通过ajax将变量传递到api.php
我试图通过ajax将js变量传递到php端。我的js代码是:Javascript 通过ajax将变量传递到api.php,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我试图通过ajax将js变量传递到php端。我的js代码是: <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script> var sAgentId = 'hi' $.ajax({ url: "api-test.php", method: "POST", data : { id:sAgentId}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script>
var sAgentId = 'hi'
$.ajax({
url: "api-test.php",
method: "POST",
data : { id:sAgentId}
}).done(function(){
console.log('done')
})
但最后在api中,我得到了这样的通知
注意:第2行的C:\xampp\htdocs\webdev php考试准备\exercise\api-test.php中的未定义索引:id
有人能告诉我我做错了什么吗?请尝试按类型替换方法:
type: "POST",
尝试将此添加到AJAX方法中: 数据类型:“json” 还可以尝试将响应记录回控制台,以检查是否设置了$\u POST['id']
.done(function(data) {
console.log("Data: ", data);
});
在PHP中,只需返回$\u POST['id']您是如何得到这个错误的?使用ajax或直接浏览
api test.php
?显示的代码应该可以工作。你试过查看所有发布的数据吗?你可以看到如何做到这一点,我试图看到所有的数据发布。但似乎没有公布数据。我使用了“$postdata=file\u get\u contents(”php://input"); echo$postdata;'我没有任何错误,但是回音是空的。您可以试试$postData=$\u POST;如何调用ajax函数?仅当您使用的是1.9.0之前版本的jQuery。“方法的别名。如果您使用的是1.9.0之前版本的jQuery,则应使用type。”。除非OP卡在石器时代,否则它可能不是。检查问题:
OP使用的是JQuery 3.4.1对不起,如何获得50个声誉?@PhiCuong是如何获得声誉的dataType
用于API响应的数据类型
var sAgentId = 'hi'
$.ajax({
url:'api-test.php',
type: "POST",
data: {id: sAgentId },
cache: !0,
dataType: 'json',
success: function(data) {
console.log(data);
}
});
var sAgentId = 'hi'
$.ajax({
url:'api-test.php',
type: "POST",
data: {id: sAgentId },
cache: !0,
dataType: 'json',
success: function(data) {
console.log(data);
}
});