2017-03-27 77 views
1

林修整發送電子郵件,但由於某種原因不能在我的HTTP POST發送數據,在我的PHP的var_dump數據說陣列不要有任何proeprties,我不以我的PHP腳本接收數據。

網絡發送的數據:

enter image description here

我CONTROLER代碼:

$http({ 
      method: 'POST', 
      url: 'php/admin-mail.php', 
      data: claimDataService.get(), 
      headers : {'Content-Type': 'application/x-www-form-urlencoded'} , 
     }).then(function successCallback(response) { 
      // this callback will be called asynchronously 
      // when the response is available 

      console.log("sucess"); 
      console.log(response); 
      }, function errorCallback(response) { 

      console.log("errors"); 
      console.log(response); 
      }); 

我的服務:

var claimDataService = angular.module('claimDataService', []); 

claimDataService.factory('claimDataService', function() { 
var claimData = {} 
function set(data) { 
    claimData = data; 
} 
function get() { 
    return claimData; 
} 

return { 
    set: set, 
    get: get, 
} 

}); 

管理-mail.php:

if ($_SERVER["REQUEST_METHOD"] == "POST") { 

return $_POST['myData']; 


} 
+4

你能舉例說明'claimDataService.get()'返回什麼? –

+2

您是否也可以發佈'claimsDataService.get()'的服務代碼? –

+0

基本上它只返回一個對象示例{「info」:{type ....} .. – Pedro

回答

2

我相信我已經找到了你的問題,如果你想給你的數據,JSON,你必須有

headers : { 'Content-Type': 'application/json' } 

然後讓你的PHP腳本獲得輸入

$data = json_decode(file_get_contents('php://input'), true);