【发布时间】:2013-03-25 11:21:25
【问题描述】:
我对 ajax 很陌生,我无法解决这个问题,也找不到其他讨论它的话题。
我要做的是使用 ajax 将数组发送到 php 脚本。
该数组是一个关联数组[index][value]。问题是,一旦我将数组发送到 php,它看起来就像一个单维数组。
换句话说,一个例子:
如果数组是:["apple", "pear", "orange"]
应该是:array[0] 打印“apple”
但在 php 中,该数组仅包含一个元素,即所有字符串的串联。因此,如果我打印 array[1],我将获得 "p"、array[4] "e" 等。
我该如何解决?
提前感谢您的帮助。
var items = new Array();
代码 AJAX 脚本:
$.ajax({
type: "POST",
url: "calculate.php",
data: "items=" + items,
dataType: "html",
success: function(msg)
{
var response = jQuery.parseJSON(msg);
$('#second_results').html(response.output);
},
error: function()
{
alert("Failed");
}
});
PHP:
$items = $_REQUEST["items"];
【问题讨论】:
-
不知道是不是数据类型,应该是JSON?浏览器实际上向 PHP 发送了什么?例如使用 Chromes DeveloperTools/network 选项卡进行查找。
-
无论您向 PHP 发送什么,PHP 都会将其解释为字符串(
$a = "apple"; echo $a[0];将打印“a”。有关详细信息,请参阅手册的 String access and modification by character 部分) -
$items = $_POST["items"];会帮助你
标签: php javascript ajax arrays