Tôi có một biểu mẫu với thẻ ng-submit="login()
Hàm được gọi là tốt trong javascript.
function LoginForm($scope, $http)
{
$http.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8';
$scope.email = "fsdg@sdf.com";
$scope.password = "1234";
$scope.login = function()
{
data = {
'email' : $scope.email,
'password' : $scope.password
};
$http.post('resources/curl.php', data)
.success(function(data, status, headers, config)
{
console.log(status + ' - ' + data);
})
.error(function(data, status, headers, config)
{
console.log('error');
});
}
}
Tôi nhận được phản hồi 200 OK từ tệp PHP, tuy nhiên, dữ liệu trả về cho biết điều đó email
và password
không được xác định. Đây là tất cả php tôi có
<?php
$email = $_POST['email'];
$pass = $_POST['password'];
echo $email;
?>
Bất kỳ ý tưởng tại sao tôi nhận được POST
các giá trị không xác định ?
BIÊN TẬP
Tôi muốn chỉ ra vì đây có vẻ là một câu hỏi phổ biến (nhưng nó đã cũ) .success
và .error
đã không còn được dùng nữa và bạn nên sử dụng .then
như @James Gentes đã chỉ ra trong phần kết luận
Form-Data
nó cho biết{"email":"fsdg@sdf.com","password":"1234"}
print_r($_POST);
và sau đó thử json_decode()
đúng chỉ số
echo 'test';
hoạt động tốt. Tôi chắc chắn đang trỏ đến đúng tệp
$http
?