我有这个发送数据的代码
var test={imagename:"apple.jpg",x:"13",y:"33"};
$.ajax({
type: "POST",
url: "some.php",
data: test,
success: function(response){
console.log(response);
}
});
但现在我想将多个数据发送到 php。我的 php 端代码是这样的
print $_POST['imagename'];
我想到了这样的方法
var test={imagename:"apple.jpg|hen.jpg",x:"13|44",y:"33|22"};
在 php 上获取 $_POST['imagename']
然后根据 |
拆分它,但我不喜欢它的语义方法。
1-有人知道更好的解决方案吗?
2-请同时提供 javascript、jquery 和 php 代码以供回答。
3-最后一个问题是这个叫做 json 的符号 var test={imagename:"apple.jpg",x:"13",y:"33"};
谢谢
最佳答案
数组是这里最有意义的解决方案 - 在 JavaScript 中类似于这样:
var data = [
{imagename:"apple1.jpg", x:"13", y:"33"},
{imagename:"apple2.jpg", x:"51", y:"84"},
{imagename:"apple3.jpg", x:"79", y:"57"}
];
发送为:
$.ajax({
type: "POST",
url: "some.php",
data: {data: data},
success: function(response){
console.log(response);
}
});
在 PHP 中,您可以像这样获取它们:
<?
print_r($_POST['data']); // dumps an array
$filename1 = $_POST['data'][0]['filename']; // filename of item #1
?>
最后,var test={imagename:"apple.jpg",x:"13",y:"33"};
只不过是一些 JavaScript 代码。它不是 JSON。尽管 JSON 看起来像 JavaScript(JS 在 JSON 中甚至代表 JavaScript),但它只不过是您发送的字符。 JSON 是一种用于传输数据的格式。一旦您“解压缩”它(使用 JavaScript 或 PHP),它就不再称为 JSON。
关于php - 在jquery中发送多个数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8254249/