通过AJAX将JSON传递到PHP文件
我有一些json,我想使用ajax传递给另一个php文件通过AJAX将JSON传递到PHP文件,php,jquery,ajax,json,Php,Jquery,Ajax,Json,我有一些json,我想使用ajax传递给另一个php文件 { "id":"5", "itemName":"Infinity", "itemDesc":"Infinity", "imageURL":"Infinity.jpg", "language":"N\/A", "category":"Logos", "size":"612 KB", "flagDesc":"", "fileType":"jpg" } 这是我的ajax $.ajax({ url:'download.php', dat
{
"id":"5",
"itemName":"Infinity",
"itemDesc":"Infinity",
"imageURL":"Infinity.jpg",
"language":"N\/A",
"category":"Logos",
"size":"612 KB",
"flagDesc":"",
"fileType":"jpg"
}
这是我的ajax
$.ajax({
url:'download.php',
data: {
image: z,
},
success:function(results){
alert(results);
}
});
Z表示上面的json。我不知道传递数据时要放什么。我走来走去,运气不好。方法如下:
$.ajax({
type: 'POST',
url:'download.php',
data: { image: JSON.stringify(z) },
success:function(results){
alert(results);
}
});
在download.php
中,您可以通过以下方式访问此数据:
$data = json_decode($_POST['image']);
方法如下:
$.ajax({
type: 'POST',
url:'download.php',
data: { image: JSON.stringify(z) },
success:function(results){
alert(results);
}
});
在download.php
中,您可以通过以下方式访问此数据:
$data = json_decode($_POST['image']);
如果您只想通过
z
,我会:
$.ajax({
url:'download.php',
data: z,
success:function(results){
alert(results);
}
});
在php中,您可以执行以下操作:
$image=json\u encode($\u GET)
如果您需要将数据转换为json。如果您只想通过z
,我会:
$.ajax({
url:'download.php',
data: z,
success:function(results){
alert(results);
}
});
在php中,您可以执行以下操作:
$image=json\u encode($\u GET)
如果您需要将数据转换为json。但是,他希望使用image
关键字传递数据。@Tolga Akyüz我假设OP可以控制后端,也可以控制同一服务器上的数据。因此名称并不重要。不要对任意长的数据使用GET。它很可能被浏览器和/或服务器切断,并完全破坏数据。@jeroen你是对的,名字并不重要,他只是用那种方式问。他可能需要特别使用image
关键字。@Marc B我知道,但由于OP没有指定类型,它将默认为GET,因此我使用的就是这样……但是,他想用image
关键字传递数据。@Tolga Akyüz我假设OP可以控制后端,也可以控制同一服务器上的数据。因此名称并不重要。不要对任意长的数据使用GET。它很可能被浏览器和/或服务器切断,并完全破坏数据。@jeroen你是对的,名字并不重要,他只是用那种方式问。他可能需要特别使用image
关键字。@Marc B我知道,但由于OP没有指定类型,它将默认为GET,所以这就是我使用的…好的,我看到了警报中的数据,但是stringify做了什么?它只是将其转换为字符串。JSON.stringify(输入)
将输入转换为字符串,以便能够通过网络传递该字符串。当服务器(在您的例子中是php)接收到这个字符串时,只需通过调用json_decode($_POST['image'])将其转换回json(php中的关联数组或stdClass)。json.stringify
将字符串转换为json,这样,如果您已经拥有有效的json,它就不会做太多(什么也不会做)。在对我的download.php文件执行var_转储时,它只给我一个json_解码的数组($_POST['image'],true);我希望两个数组都能通过。好的,我在警报中看到了数据,但是stringify做什么呢?它只是将数据转换成字符串。我明白了。JSON。stringify(输入)
将输入转换成字符串,以便能够通过网络传递该字符串。当服务器(在您的例子中是php)接收到这个字符串时,只需通过调用json_decode($_POST['image'])将其转换回json(php中的关联数组或stdClass)。json.stringify
将字符串转换为json,这样,如果您已经拥有有效的json,它就不会做太多(什么也不会做)。在对我的download.php文件执行var_转储时,它只给我一个json_解码的数组($_POST['image'],true);我希望两个数组都通过。