Javascript 无法将json数据从html发送到php
我无法使用jquery将JSON数据从HTML发送到PHP,并且总是在console.log上显示失败状态。请检查我的密码Javascript 无法将json数据从html发送到php,javascript,php,jquery,json,Javascript,Php,Jquery,Json,我无法使用jquery将JSON数据从HTML发送到PHP,并且总是在console.log上显示失败状态。请检查我的密码 jsonObjects.domain = client_domain; jsonObjects.pkg = client_package; jsonObjects.company_name = client_company; jsonObjects.company_email = client_email; jsonObjects.personal_name = psn_n
jsonObjects.domain = client_domain;
jsonObjects.pkg = client_package;
jsonObjects.company_name = client_company;
jsonObjects.company_email = client_email;
jsonObjects.personal_name = psn_name;
jsonObjects.personal_phone = psn_phone;
jsonObjects.personal_email = psn_email;
var JsonPush = new Array();
JsonPush.push(jsonObjects);
var JsonArray = JSON.stringify(JsonPush);
$.ajax({
type: "POST",
url: 'order.php',
data: JsonArray,
dataType: 'json',
})
.done(function (data) {
console.log('done');
console.log(data);
}).
fail(function (data) {
console.log('fail');
console.log(data);
});
Order.php
文件
<?php
$decoded = json_decode($_POST['data']);
var_dump($decoded);
?>
您不需要先进行字符串化,只需将其发布到一个键控对象中,然后通过如下键进行访问
let postData = { object: jsonObjects };
$.ajax({
type: "POST",
url: 'order.php',
data: postData,
dataType: 'json',
})
然后在php中:
$jsonObjects = $_POST['object'];
注意:您不通过对象本身的名称访问posted变量,而是通过posted对象内的键来访问该变量,您在AJAX调用中没有
数据参数。应该是:
data: { data: JsonArray },
但实际上根本不需要使用JSON。您只需将对象指定为数据:
选项,其属性将成为POST
参数
data: jsonObjects,
然后在PHP中,您可以访问$\u POST['domain']
,$\u POST['pkg']
,等等。失败的具体原因是什么?编辑您的帖子以包含错误消息如果失败,那么问题几乎肯定在order.php
中。您需要发布该代码。