有关此问题的大量话题,我保证我已经尝试了很多(全天)。
这是我的代码:
app.controller('contactsController', function($scope, $rootScope, dataService, $http) {
$rootScope.currentPage = "contact";
$scope.postData = [];
$scope.runScript = function() {
$http({
url: "post.php",
method: "POST",
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
data: $.param({postData:$scope.postData})
}).success(function(data, status, headers, config) {
$scope.data = data;
}).error(function(data, status, headers, config) {
$scope.status = status;
});
};
});

<form name="contactForm" method="post" ng-submit="runScript()">
<div class="col-sm-10">
<div class="input-group">
<span class="input-group-addon" id="basic-addon1">E-mail Address</span>
<input ng-model="{{postData.email}}" name="email" class="form-control" placeholder="johnsmith@example.com" aria-describedby="basic-addon1" required>
</div>
<br>
<div class="input-group">
<span class="input-group-addon" id="basic-addon1">Message</span>
<textarea ng-model="{{postData.message}}" name="inputMessage" class="form-control"></textarea>
</div>
</div>
<div class="col-sm-2">
<button type="submit" class="btn btn-default">Send</button>
</div>
</form>
{{data}} and {{status}}
&#13;
$inputData = file_get_contents("php://input");
$inputData = json_decode($inputData);
$email = $inputData->email;
echo $email;
现在我可能犯了一些错误,同时试图让它开始工作,从我之前的事情开始 - 我没有得到任何错误,但我也没有取得任何成功 - 我和#39;一整天都在这里!!!!谢谢!
答案 0 :(得分:1)
Angular以jSON格式发布数据,而PHP本身并不使用这种格式。你必须阅读和json解码输入,如下所示:
// get the raw POST data
$inputData = file_get_contents("php://input");
// this returns null if not valid json
$inputData = json_decode($inputData);
答案 1 :(得分:0)
我可能错了,但如果你只使用POST,你应该在_POST变量中找到你的数据。只有在提交PUT请求时才需要使用file_get_contents(&#34; php:// input&#34;)。
此外,您正在提交密钥postData,并且您正在尝试阅读 - &gt;电子邮件..