对php的Angular post请求失败

Angular post request to php failed

本文关键字:请求 失败 post Angular php      更新时间:2023-09-26

我有一个包含两个字段的简单表单。

<form name="save" ng-submit="sap.saved(save.$valid)" novalidate>
        <div class="form-group" >
            <input type="text" name="name" id="name" ng-model="sap.name" />
        </div>
        <div class="form-group" >
            <input type="email" name="email" id="email" ng-model="sap.email" />
        </div>
        <div class="form-actions">
            <button type="submit" ng-disabled="save.$invalid || sap.dataLoading">Save</button>
        </div>
</form>

我正在尝试使用post请求将这些值发布到php页面。

                $http({
                  method: 'post',
                  url: 'save.php',
                  data: $scope.vm,
                  headers: {'Content-Type': 'application/x-www-form-urlencoded'}
                })
                .success(function(data, status, headers, config) 
                {
                    if(data.success)
                    {
                        alert('valid');
                    }
                    else
                    {
                        alert('invalid 1');
                    }
                }).
                error(function(data, status, headers, config) 
                {
                    alert('invalid 2');
                });

在save.php文件中,我获取的值如下:

$name=$_POST['name'];
$email=$_POST['email'];

但我得到的回应是未定义的变量名。这是PHP通知。但当我尝试从POSTman客户端发布这些值时,它是有效的。我选择的POST数据的方法有什么问题吗?

p.S:我没有发布整个控制器。这里只包含http请求部分。

我遇到了同样的情况,$_POST()并没有成功!

尝试使用获取原始数据

json_decode(file_get_contents('php://input'))

可能会有所帮助。

更新:

这个答案解释了为什么php中没有填充$_POST变量当数据以角度发布时!