【发布时间】:2014-01-24 12:44:21
【问题描述】:
我在将一些信息从我的 Angularjs 代码传递到我的 PHP 代码进行处理时遇到了很大的麻烦。
JS
控制器
var dataString = '{"round": {"number": 1,"drops": [{"pos": "0","cust": 1025}]}}';
dropService.updateDrops(dataString)
.success(function(data) {
console.log(data);
})
服务
updateDrops : function(drops) {
return $http({
url: "/app/php/update_rounds.php",
method: "POST",
data: drops,
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
});
}
PHP
$dropString = $_POST;
$dropArray = json_decode($_POST);
$a = $dropArray->{"round"}->{"number"};
echo "Round = ".$a;
我希望在控制台上看到的是
圆 = 1
但我得到的是
圆 =
显然有些事情正在搞砸。但是,如果我更换
$dropString = $_POST;
与
$dropString = '{"round": {"number": 1,"drops": [{"pos": "0","cust": 1025}]}}';
一切正常,所以我知道如果我能获得正确的数据,PHP 就会工作。我哪里错了?
【问题讨论】:
-
$_POST是一个包含所有已发布值的 PHP 数组。尝试var_dump($_POST);检查您的数据使用了哪些数据,或在您的 AJAX 请求中提供一个您专门使用的数据
标签: javascript php json angularjs