簡體   English   中英

如何將數組的表單數據從 angular 發送到 php 腳本

[英]how to send form data of array from angular to php script

我無法將數組列表發送到 PHP 腳本以獲取數據列表。

下面是我的 angular 服務。

sendFormData(userData) {
console.log('hi');
console.log(userData);
var data = [];
data.push(userData);
console.log(data); 

return this.http.post("http://localhost:8088/post_candidateDetails.php", data);

} 

PHP 腳本

<?php

header("Access-Control-Allow-Origin: http://localhost:4200");
header("Access-Control-Allow-Credentials: true ");
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
header("Access-Control-Allow-Headers: X-Custom-Header, Origin, Content-Type , Authorisation , X-Requested-With");
header("Content-Type: application/json; charset=UTF-8 ");
print_r($_REQUEST);

?>

我在瀏覽器中得到空白 output 數組。

Array
(
)

在 Angular 中發送表單數據的情況下,$http POST 數據信息被序列化為application/json ,這是PHP無法解釋的。

您必須將請求(表單數據對象)轉換為它可以理解的格式。 最簡單的方法是配置 $httpProvider。

myApp.config(['$httpProvider', '$httpParamSerializerProvider', function($http, $httpParamSerializerProvider) {
    var paramSerializer = $httpParamSerializerProvider.$get();
    $http.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8';
    $http.defaults.transformRequest = function(data) {
        return paramSerializer(data);
    };
}]);

取自這里

一個細節例子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM